<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot;]]></title><description><![CDATA[<p>Hi,</p>
<p>volkard hat ja leider den Thread geschlossen, ich habe ihn passiv die ganze Zeit verfolgt und bin jetzt auch Fan davon weniger Singletons zu verwenden (wobei ich die ja sowieso kaum nutze).</p>
<p>Gibt es solche Diskussionen eigentlich auch von irgendwelchen Informatik-Gurus in Büchern ausgeführt? Ich meine, damit haben sich sicher einige Leute Jahrzehnte beschäftigt, die werden ihr Wissen doch wohl auch weitergegeben haben. Kann man mir dazu Bücher empfehlen?</p>
<p>Also im Detail ginge es mir um die Anwendung von Design Patterns oder auch nicht. Bücher wie Gang of Four stellen ja einfach alle dar und schmeißen damit um sich, richtig? Und das Zweite, was mir an den GoF-Büchern nicht unbedingt liegt, ist, dass die eher auf Java ausgerichtet sind, oder? Das Observer-Pattern wird da ja großzügig mit Klassen implementiert, wohingegen Möglichkeiten wie in C++ über signals vernachlässigt werden, soweit ich weiß.</p>
<p>Oder gibt es gar eine Seite, wo man zu solchen Diskussionen viele interessante Artikel findet? Ich trachte nach Material und Infos. ^^</p>
<p>Vielen Dank auch an dot schon Mal für die vielen hilfreichen Anregungen!</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/289097/weiterführende-frage-zu-quot-datenbank-singleton-blub-quot</link><generator>RSS for Node</generator><lastBuildDate>Wed, 19 Aug 2026 08:53:05 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/289097.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 28 Jun 2011 15:48:59 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Tue, 28 Jun 2011 15:48:59 GMT]]></title><description><![CDATA[<p>Hi,</p>
<p>volkard hat ja leider den Thread geschlossen, ich habe ihn passiv die ganze Zeit verfolgt und bin jetzt auch Fan davon weniger Singletons zu verwenden (wobei ich die ja sowieso kaum nutze).</p>
<p>Gibt es solche Diskussionen eigentlich auch von irgendwelchen Informatik-Gurus in Büchern ausgeführt? Ich meine, damit haben sich sicher einige Leute Jahrzehnte beschäftigt, die werden ihr Wissen doch wohl auch weitergegeben haben. Kann man mir dazu Bücher empfehlen?</p>
<p>Also im Detail ginge es mir um die Anwendung von Design Patterns oder auch nicht. Bücher wie Gang of Four stellen ja einfach alle dar und schmeißen damit um sich, richtig? Und das Zweite, was mir an den GoF-Büchern nicht unbedingt liegt, ist, dass die eher auf Java ausgerichtet sind, oder? Das Observer-Pattern wird da ja großzügig mit Klassen implementiert, wohingegen Möglichkeiten wie in C++ über signals vernachlässigt werden, soweit ich weiß.</p>
<p>Oder gibt es gar eine Seite, wo man zu solchen Diskussionen viele interessante Artikel findet? Ich trachte nach Material und Infos. ^^</p>
<p>Vielen Dank auch an dot schon Mal für die vielen hilfreichen Anregungen!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085520</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085520</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Tue, 28 Jun 2011 15:48:59 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Tue, 28 Jun 2011 15:56:37 GMT]]></title><description><![CDATA[<p><a href="http://www.aristeia.com/Papers/DDJ_Jul_Aug_2004_revised.pdf" rel="nofollow">Klick mich</a>. Eine Diskurs zum Thema von Meyers und Alexandrescu</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085525</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085525</guid><dc:creator><![CDATA[Tobias Gerg]]></dc:creator><pubDate>Tue, 28 Jun 2011 15:56:37 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Tue, 28 Jun 2011 16:14:35 GMT]]></title><description><![CDATA[<p>Ich hab da mal weiter gemacht und es wurde Dependency Injection vorgeschlagen.<br />
<a href="http://www.c-plusplus.net/forum/p2085458#2085458" rel="nofollow">http://www.c-plusplus.net/forum/p2085458#2085458</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085536</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085536</guid><dc:creator><![CDATA[aaaaaaaaaüö]]></dc:creator><pubDate>Tue, 28 Jun 2011 16:14:35 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Tue, 28 Jun 2011 17:40:15 GMT]]></title><description><![CDATA[<p><a href="http://www.youtube.com/watch?v=-FRm3VPhseI" rel="nofollow">The Clean Code Talks - Global State and Singletons</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085578</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085578</guid><dc:creator><![CDATA[lin]]></dc:creator><pubDate>Tue, 28 Jun 2011 17:40:15 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Tue, 28 Jun 2011 19:09:46 GMT]]></title><description><![CDATA[<p>lin schrieb:</p>
<blockquote>
<p><a href="http://www.youtube.com/watch?v=-FRm3VPhseI" rel="nofollow">The Clean Code Talks - Global State and Singletons</a></p>
</blockquote>
<p>Hab mir gerade den Talk angesehen - sehr interessant!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085656</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085656</guid><dc:creator><![CDATA[theta]]></dc:creator><pubDate>Tue, 28 Jun 2011 19:09:46 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Tue, 28 Jun 2011 19:46:26 GMT]]></title><description><![CDATA[<p>Ja, find ich auch prima. Das Hauptproblem nach dem Video ist also das Testen.</p>
<p>Wieso gibt es für DI eigentlich kaum Frameworks für C++? Wird damit nicht so viel große Software geschrieben oder kann man das da einfacher lösen oder...? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> Wozu braucht man überhaupt ein Framework für die Aufgabe?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085697</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085697</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Tue, 28 Jun 2011 19:46:26 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Tue, 28 Jun 2011 20:11:13 GMT]]></title><description><![CDATA[<blockquote>
<p>Wieso gibt es für DI eigentlich kaum Frameworks für C++?</p>
</blockquote>
<p>Weil C++ keinen &quot;object&quot; Typ und keine Reflection hat.<br />
DI ohne Framework kann man ja in C++ ohne weiteres machen.</p>
<p>Mit Framework funktioniert es aber meistens so, dass man in diversen Config-Files definiert welche Typen instanziert und über welche Setter an welche anderen Objekte übergeben werden sollen.</p>
<p>Dafür braucht man die beiden erwähnten Dinge: Reflection um die Klassen/Setter anhand ihres Namens ansprechen zu können. Und den &quot;object&quot; Typen, damit man mit Objekten beliebigen Typs arbeiten kann (=ohne dass diese von einer bestimmten Basisklasse abgeleitet sein müssen).</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085718</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085718</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 28 Jun 2011 20:11:13 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Tue, 28 Jun 2011 21:10:13 GMT]]></title><description><![CDATA[<p>Dann lässt man eben alles von einer Klasse erben. Nur, weil das in Java eingebaut ist, heißt das ja nicht, dass das in C++ schlechterer Stil ist, oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085742</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085742</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Tue, 28 Jun 2011 21:10:13 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Tue, 28 Jun 2011 23:57:28 GMT]]></title><description><![CDATA[<p>Eisflamme schrieb:</p>
<blockquote>
<p>Dann lässt man eben alles von einer Klasse erben. Nur, weil das in Java eingebaut ist, heißt das ja nicht, dass das in C++ schlechterer Stil ist, oder?</p>
</blockquote>
<p>Äh. OK. Damit hast du aber eine äusserst starke Abhängigkeit zum DI-Framework geschaffen. Das versucht man eigentlich zu vermeiden.</p>
<p>Und es löst nur eines der vielen Probleme.</p>
<p>Klar kann man auch für C++ ein DI-Framework basteln. Die Frage war aber warum es für C++ wenige DI-Frameworks gibt, nicht ob es theoretisch möglich ist.</p>
<p>Diese Frage habe ich versucht zu beantworten. Nochmal anders formuliert: Es gibt wenige C++ DI-Frameworks, weil es<br />
* mehr Aufwand ist eines zu entwickeln<br />
und<br />
* mehr Aufwand ist eines zu verwenden</p>
<p>Zum zweiten Punkt: einerseits wird ein C++ DI-Framework vermutlich bestimmte Dinge nicht können (die Frameworks für andere Sprachen durchaus können), weil sich der Entwickler die Arbeit gespart hat, sie zu unterstützen. Alles lässt sich irgendwie machen, aber irgendwo muss man auch einen Schlussstrich ziehen, sonst wird man nie fertig.</p>
<p>Und andrerseits wird man als Anwender eines C++ DI-Frameworks vermutlich viel Glue-Code selbst schreiben müssen, was auch Aufwand ist. Man muss die Applikations-Klassen dem System ja irgendwie bekannt machen, inklusive der ganzen Setter/Getter/Verben die das DI-Framework ansprechen können muss. Und je mächtiger das DI-Framework ist, desto grösser wird der Aufwand vermutlich werden, die Klassen dem Framework bekannt zu machen.</p>
<p>Kurz gesagt: die Kosten-Nutzen-Rechnung sieht bei C++ einfach wesentlich schlechter aus, als bei einigen anderen Sprachen.</p>
<p>----</p>
<p>Noch ein Grund der dagegen spricht: es gibt Alternativen zu reinen C++ DI-Frameworks, die z.T. viel mehr können, und vermutlich auch nicht wesentlich aufwendiger zu verwenden sind.</p>
<p>Beispielsweise kann recht schön man mit Lua + CppLua/Luabind/Luabridge/... bzw. Python + SWIG/Boost.Python/... arbeiten.</p>
<p>Oder man kann die Applikation gleich in Java/C#/... entwickeln, und nur bestimmte Komponenten in C++ entwickeln (und diese dann über C++/CLI, Pinvoke, JNI oder was auch immer einbinden).</p>
<p>----</p>
<p>ps: fehlende Garbage-Collection ist ein Punkt den ich in meinem ersten Beitrag noch vergessen hatte. Das macht es auch nochmal komplizierter.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085802</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085802</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Tue, 28 Jun 2011 23:57:28 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Wed, 29 Jun 2011 08:03:04 GMT]]></title><description><![CDATA[<p>Okay, jetzt hab ich's kapiert, vielen Dank. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<p>Ist es denn ein großer Verlust, dass man solche Frameworks nicht nutzen kann/will? Ich meine, ist das ein Punkt, den man als gutes Argument gegen C++ einsetzen kann? Einige schwören ja auf DI und könnten das maßgeblich finden. Wobei man DI natürlich auch gut ohne Framework umsetzen kann.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085862</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085862</guid><dc:creator><![CDATA[Eisflamme]]></dc:creator><pubDate>Wed, 29 Jun 2011 08:03:04 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Wed, 29 Jun 2011 08:37:12 GMT]]></title><description><![CDATA[<p>Ich verwend ständig DI und hab noch nie mit so einem Framework gearbeitet...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2085876</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2085876</guid><dc:creator><![CDATA[dot]]></dc:creator><pubDate>Wed, 29 Jun 2011 08:37:12 GMT</pubDate></item><item><title><![CDATA[Reply to Weiterführende Frage zu &amp;quot;Datenbank Singleton blub&amp;quot; on Wed, 29 Jun 2011 12:25:37 GMT]]></title><description><![CDATA[<p>Eisflamme schrieb:</p>
<blockquote>
<p>Ist es denn ein großer Verlust, dass man solche Frameworks nicht nutzen kann/will? Ich meine, ist das ein Punkt, den man als gutes Argument gegen C++ einsetzen kann?</p>
</blockquote>
<p>Ich denke das kommt darauf an wen du fragst. Und um was für ein Projekt es sich handelt.<br />
Bei vielen Projekten wird es egal sein.</p>
<p>Bei anderen Projekten würde es einiges an Arbeit sparen, wenn man ein praktikables DI-Framework hätte, mit dem man seine Applikation konfigurieren (&quot;zusammenstecken&quot;) kann.<br />
Hat man es nicht, muss man den Konfigurations-Code selbst schreiben.<br />
Das führt dann manchmal zu seltsamen weil hausgebackenen Konfig-File-Formaten. Oder dazu dass man ein paar Abkürzungen nimmt, was sich negativ auf die Code-Qualität und/oder Flexibilität der Applikation auswirken kann.</p>
<p>Je nach Programm würde ich persönlich es als ein zusätzliches Argument gegen C++ sehen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/2086022</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/2086022</guid><dc:creator><![CDATA[hustbaer]]></dc:creator><pubDate>Wed, 29 Jun 2011 12:25:37 GMT</pubDate></item></channel></rss>