<?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[Klassenfunktionen in mehrere Header unübersichtlich?]]></title><description><![CDATA[<p>Da der Umfang einiger meiner Klassenfunktionsdefinitionen immer umfangreicher wird, habe ich angefangen zusammengehörige Funktionen wie reine Algorithmen in einer 3ten oder 4ten (neben der *.cpp und *.hpp) Datei unterzubringen.<br />
Für mich, da ich das Programm hoffentlich kenne, ist das kein Problem.</p>
<p>Meine Frage: Ist das eine gängige Art und Weise, oder vermeidet man solch eine Strukturierung, weil es evtl. frustrierend für Dritte werden könnte, die dann diese Klassenfunktionen erst mal suchen müssen?<br />
&quot;Sprechende&quot; Dateinamen könnten da ja abhelfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/226101/klassenfunktionen-in-mehrere-header-unübersichtlich</link><generator>RSS for Node</generator><lastBuildDate>Thu, 01 Oct 2026 02:57:26 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/226101.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 29 Oct 2008 14:16:54 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Klassenfunktionen in mehrere Header unübersichtlich? on Wed, 29 Oct 2008 14:16:54 GMT]]></title><description><![CDATA[<p>Da der Umfang einiger meiner Klassenfunktionsdefinitionen immer umfangreicher wird, habe ich angefangen zusammengehörige Funktionen wie reine Algorithmen in einer 3ten oder 4ten (neben der *.cpp und *.hpp) Datei unterzubringen.<br />
Für mich, da ich das Programm hoffentlich kenne, ist das kein Problem.</p>
<p>Meine Frage: Ist das eine gängige Art und Weise, oder vermeidet man solch eine Strukturierung, weil es evtl. frustrierend für Dritte werden könnte, die dann diese Klassenfunktionen erst mal suchen müssen?<br />
&quot;Sprechende&quot; Dateinamen könnten da ja abhelfen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1606649</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1606649</guid><dc:creator><![CDATA[monde]]></dc:creator><pubDate>Wed, 29 Oct 2008 14:16:54 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenfunktionen in mehrere Header unübersichtlich? on Wed, 29 Oct 2008 15:01:24 GMT]]></title><description><![CDATA[<p>sowas kann man machen, muss man aber nicht. .cpp Dateien mit mehreren tausend Zeilen sind keine Seltenheit und durchaus üblich.<br />
In den meisten aktuellen IDEs ists auch ohne weiteres möglich, Funktionsdefinitionen &quot;einzuklappen&quot;, so dass dann das Scrollen nicht ganz so mühselig ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1606695</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1606695</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 29 Oct 2008 15:01:24 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenfunktionen in mehrere Header unübersichtlich? on Wed, 29 Oct 2008 16:18:59 GMT]]></title><description><![CDATA[<p>pumuckl schrieb:</p>
<blockquote>
<p>... .cpp Dateien mit mehreren tausend Zeilen sind keine Seltenheit und durchaus üblich. ...</p>
</blockquote>
<p>Wobei man sich ab einer gewissen Größe dennoch fragen sollte ob eine Klasse nicht einfach zuviel macht (Das heißt jetzt nicht das man sagt: 1000 Zeilen und nicht mehr, sondern einfach das man irgendwann auch über die Größe nachdenken sollte).</p>
<p>@monde: Ich habe dieses Splitting von cpp-Dateien mal ausprobiert, den Vorteil aber nicht festgestellt. In der Regel stelle ich auch fest das die Größe meist mit dem Design einhergeht und man dann wirklich eher logisch die Klasse aufsplitten sollte.</p>
<p>cu André</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1606727</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1606727</guid><dc:creator><![CDATA[asc]]></dc:creator><pubDate>Wed, 29 Oct 2008 16:18:59 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenfunktionen in mehrere Header unübersichtlich? on Wed, 29 Oct 2008 16:33:21 GMT]]></title><description><![CDATA[<p>asc schrieb:</p>
<blockquote>
<p>Wobei man sich ab einer gewissen Größe dennoch fragen sollte ob eine Klasse nicht einfach zuviel macht</p>
</blockquote>
<p>Sicher, eine Klasse sollte eine feste, begrenzte undwohldefinierte Verantwortung haben - und eine Methode sollte auch nur eine Funktion haben und nicht mehrere.</p>
<p>Siehe unter anderem auch<br />
<a href="http://www.gotw.ca/gotw/021.htm" rel="nofollow">GotW: COde complexity Part II</a><br />
<a href="http://www.gotw.ca/gotw/084.htm" rel="nofollow">GotW: Monoliths &quot;unstrung&quot;</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1606730</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1606730</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Wed, 29 Oct 2008 16:33:21 GMT</pubDate></item><item><title><![CDATA[Reply to Klassenfunktionen in mehrere Header unübersichtlich? on Wed, 29 Oct 2008 19:22:15 GMT]]></title><description><![CDATA[<p>monde schrieb:</p>
<blockquote>
<p>Meine Frage: Ist das eine gängige Art und Weise, oder vermeidet man solch eine Strukturierung, weil es evtl. frustrierend für Dritte werden könnte, die dann diese Klassenfunktionen erst mal suchen müssen?<br />
&quot;Sprechende&quot; Dateinamen könnten da ja abhelfen.</p>
</blockquote>
<p>Ich unterstelle mal, dass es sich hier um genau eine Klasse mit vielen Methoden handelt.<br />
Nein - das ist keine gängige Art &amp; Weise. Wie meine Vorposter schon erwähnt haben, deutet das stark auf ein Design-Problem hin. Dein Programm ist zu wenig strukturiert.<br />
Sourcen mit deutlich über 1000 Zeilen sind zwar üblich, aber bei näherem Hinsehen immer zu groß und unübersichtlich und auf Dauer nur aufwendig - das heißt teuer - pflegbar.</p>
<p>Gruß<br />
Werner</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1606801</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1606801</guid><dc:creator><![CDATA[Werner Salomon]]></dc:creator><pubDate>Wed, 29 Oct 2008 19:22:15 GMT</pubDate></item></channel></rss>