<?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[Wie ein groesseres Project angehen?]]></title><description><![CDATA[<p>Da ich mich in &quot;reinem&quot; C++ inzwischen halbwegs gut zurecht finde, habe ich mal ein ein groesseres Project gedacht, also nicht immer nur den &quot;ewigen Taschenrechner&quot; ... <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="🙂"
    /> Wie aber gehe ich so ein Projekt als Anfaenger an?</p>
<p>Also, ich habe mir folgendes ueberlegt:</p>
<p>Die Projektidee steht, mit anderen Worten, das Ziel ist bekannt. Allerdings habe ich bisher von grafischen Oberflaechen keine grosse Ahnung.</p>
<p>Ich koennte doch zunaechst mal alle wesentlichen Funktionen (Module) im 'Textmode' schreiben, denn ich arbeite ohnehin unter - und NUR - unter Linux. Also alles was rechnet, auf Datenbanken zugreift und letztlich auch Daten ausgibt.</p>
<p>Wenn das im Textmode (Console) dann so halbwegs klappt, dann waere der naechste Schritt das dann in einer grafischen Oberflaeche zusammen zu bringen.</p>
<p>Macht das so einen Sinn, oder muss ich dann praktisch alle Module noch mal neu schreiben?</p>
<p>Gruss</p>
<p>Guenther<br />
immer noch in: Davao City, Philippines, Planet Earth</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/195234/wie-ein-groesseres-project-angehen</link><generator>RSS for Node</generator><lastBuildDate>Tue, 29 Sep 2026 23:23:00 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/195234.rss" rel="self" type="application/rss+xml"/><pubDate>Mon, 15 Oct 2007 16:58:10 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 16:58:10 GMT]]></title><description><![CDATA[<p>Da ich mich in &quot;reinem&quot; C++ inzwischen halbwegs gut zurecht finde, habe ich mal ein ein groesseres Project gedacht, also nicht immer nur den &quot;ewigen Taschenrechner&quot; ... <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="🙂"
    /> Wie aber gehe ich so ein Projekt als Anfaenger an?</p>
<p>Also, ich habe mir folgendes ueberlegt:</p>
<p>Die Projektidee steht, mit anderen Worten, das Ziel ist bekannt. Allerdings habe ich bisher von grafischen Oberflaechen keine grosse Ahnung.</p>
<p>Ich koennte doch zunaechst mal alle wesentlichen Funktionen (Module) im 'Textmode' schreiben, denn ich arbeite ohnehin unter - und NUR - unter Linux. Also alles was rechnet, auf Datenbanken zugreift und letztlich auch Daten ausgibt.</p>
<p>Wenn das im Textmode (Console) dann so halbwegs klappt, dann waere der naechste Schritt das dann in einer grafischen Oberflaeche zusammen zu bringen.</p>
<p>Macht das so einen Sinn, oder muss ich dann praktisch alle Module noch mal neu schreiben?</p>
<p>Gruss</p>
<p>Guenther<br />
immer noch in: Davao City, Philippines, Planet Earth</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385818</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385818</guid><dc:creator><![CDATA[gboelter]]></dc:creator><pubDate>Mon, 15 Oct 2007 16:58:10 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 17:04:02 GMT]]></title><description><![CDATA[<p>Das macht durchaus Sinn. Achte nur darauf, dass du eine abstrakte Ausgabe hast, dann kannst du ganz schnell von Konsole auf GUI umsteigen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385823</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385823</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Mon, 15 Oct 2007 17:04:02 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 17:06:16 GMT]]></title><description><![CDATA[<p>Michael E. schrieb:</p>
<blockquote>
<p>Achte nur darauf, dass du eine abstrakte Ausgabe hast, dann kannst du ganz schnell von Konsole auf GUI umsteigen.</p>
</blockquote>
<p>Hmm, was bitte meinst Du mit &quot;abstrakte Ausgabe&quot;?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385828</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385828</guid><dc:creator><![CDATA[gboelter]]></dc:creator><pubDate>Mon, 15 Oct 2007 17:06:16 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 17:09:10 GMT]]></title><description><![CDATA[<p>Ich würde ein Projekt nicht von der Ausgabe abhängig machen.</p>
<p>Viel vernünftiger ist ein sauberes Klassen- und Schnittstellen-Design.</p>
<p>Und diese enthalten eine Benutzer-Schnittstelle, die dann konkret grafisch oder als Konsole ausfallen mag. Sich grundätzlich erst die Buttons zu übelegen und danach funktional die Operationen dahinter setzen bringt nur Mehrarbeit und Frustration mit sich.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385830</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385830</guid><dc:creator><![CDATA[crashterpiece]]></dc:creator><pubDate>Mon, 15 Oct 2007 17:09:10 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 17:21:32 GMT]]></title><description><![CDATA[<p>crashterpiece schrieb:</p>
<blockquote>
<p>Viel vernünftiger ist ein sauberes Klassen- und Schnittstellen-Design.</p>
</blockquote>
<p>Tja, das sagt mir als Anfaenger leider recht wenig ...</p>
<p>crashterpiece schrieb:</p>
<blockquote>
<p>Und diese enthalten eine Benutzer-Schnittstelle, die dann konkret grafisch oder als Konsole ausfallen mag. Sich grundätzlich erst die Buttons zu übelegen und danach funktional die Operationen dahinter setzen bringt nur Mehrarbeit und Frustration mit sich.</p>
</blockquote>
<p>Letzteres wuerde ich natuerlich gern vermeiden.</p>
<p>Ein Beispiel: Bisher kann ich eine Kundennummer eingeben, die sucht mir dann die entsprechenden Daten in einer Datenbank und gibt mir diese - sofern gefunden - auf dem Bildschirm aus, wenn auch bisher in reinem Textmode.</p>
<p>Ist das jetzt ein grosses Problem, das spaeter mal als GUI darszustellen, also mit grafischer Oberflaeche, ohne alles noch mal neu zu schreiben?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385835</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385835</guid><dc:creator><![CDATA[gboelter]]></dc:creator><pubDate>Mon, 15 Oct 2007 17:21:32 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 17:30:29 GMT]]></title><description><![CDATA[<p>Anfänger? Lass das mit der GUI <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="😉"
    /> Kümmer dich lieber um sauberes Design, spiel ein bisschen rum (kommt automatisch, weil du mit deinem Aufbau nicht zufrieden sein wirst) und schau dir ein paar Design Patterns an.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385840</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385840</guid><dc:creator><![CDATA[Michael E.]]></dc:creator><pubDate>Mon, 15 Oct 2007 17:30:29 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 18:33:38 GMT]]></title><description><![CDATA[<p>Versuche, deine Funktionen und Klassen so aufzubauen, daß sie nicht direkt mit Eingabe- oder Ausgabeobjekten (IO) arbeiten.<br />
Diese Klassen sollten z.B. niemals 'cin' und 'cout' direkt verwenden, denn die gibt es bei einer GUI dann nicht mehr.<br />
Du mußt dann evtl. deine Funktionen (bzw. Klassenmethoden) mit zusätzlichen Parametern versehen, z.B. eine String-Variable, in der die Daten geschrieben werden.</p>
<p>Hier ein Beispiel:</p>
<pre><code class="language-cpp">// Hauptprogramm, welches nachher durch eine GUI ersetzt werden kann
int main()
{
   std::string sInput;
   cin &gt;&gt; sInput;

   cout &gt;&gt; Calc(sInput);
}

// dein eigenes Berechnungsmodul (ohne IO)
std::string Calc(const std::string &amp;s)
{
   std::string sCalc = s;
   // do something with sCalc

   return sCalc;
}
</code></pre>
<p>Du kannst auch std::vector oder std::list oder andere Klassen verwenden, welche nur mit dem Hauptspeicher arbeiten (also ohne IO), z.B. für Datenbankfunktionalität.</p>
<p>Bzgl. der IO-Streams solltest du dich evtl. auch mit Datei Ein- und Ausgabe beschäftigen, denn dann kannst du ebenfalls abstrahieren.</p>
<p>Du könntest die obere Funktion 'main' so umschreiben, daß sie nur so aussieht:</p>
<pre><code class="language-cpp">int main()
{
  DoCalc(cin, cout);
}
</code></pre>
<p>Nun kannst du dann eine Funktion implementieren, welche von der konkreten EIn- und Ausgabe unabhängig ist:</p>
<pre><code class="language-cpp">#include &lt;iostream&gt;

void DoCalc(std::istream &amp;is, std::ostream &amp;os)
{
   std::string sInput;
   is &gt;&gt; sInput;

   os &gt;&gt; Calc(sInput);
}
</code></pre>
<p>Nun kannst du diese Funktion auch mit Datei-Streams aufrufen, z.B.</p>
<pre><code class="language-cpp">#include &lt;fstream&gt;

int main()
{
  std::ifstream iff(&quot;input.txt&quot;);
  std::ofstream off(&quot;output.txt&quot;);

  DoCalc(iff, off);
}
</code></pre>
<p>So das war's jetzt ersteinmal zum Thema Schnittstellen-Programmierung.<br />
Bis zum nächsten Mal -)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385877</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385877</guid><dc:creator><![CDATA[Th]]></dc:creator><pubDate>Mon, 15 Oct 2007 18:33:38 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 19:54:20 GMT]]></title><description><![CDATA[<p>Ich stimme meinen Vorrednern natürlich voll und ganz zu, allerdings bieten manche GUI-Toolkits eben mehr als nur eine grafische Oberfläche. So kannst du mit Qt auch Datenbanken ansteuern. Und dann läuft das halt alles schön nach einem Schema.<br />
Was ich damit sagen will: es ist vielleicht nicht verkehrt, sich jetzt schon für 'nen GUI-Aufsatz zu entscheiden und dann verstärkt in die Richtung zu gehen und auch die anderen Funktionen zu nutzen. Welche Vorteile du mit Qt bei Datenbanken hast, kann ich dir leider nicht sagen. Ich stehe auch noch ganz am Anfang... <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="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385914</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385914</guid><dc:creator><![CDATA[moagnus]]></dc:creator><pubDate>Mon, 15 Oct 2007 19:54:20 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 21:01:53 GMT]]></title><description><![CDATA[<p>Ich stimme meinen Vorrednern eigentlich auch zu. Für Schnittstellen, bzw. portieren zwischen verschiedenen GUIs (bzw. von der Konsole zu einer GUI) empfehle ich dir ein MVC-Modell. Kannst vielleicht mal im Inet nach MVC suchen, gibt da überall verschiedene Einträge. Eigentlich geht es darum, Daten von der Ausgabe zu trennen. MVC steht schliesslich auch für Model View Controller, also Modell Ansicht Steuereinheit.</p>
<p>Was ich dir aber auch empfehlen kann, hüpf ins kalte Wasser! Also mir hat das unheimlich geholfen. Ich bin voller optimismus und gross gekotzt an mein erstes grosses Projekt ran. Es hat am Ende funktioniert, aber ich habe viel gelernt und nach einem Jahr support wusste ich dann auch nochmals einiges mehr <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Ansonsten gibt es auch Bücher zur Projektplanung. Da kann man natürlich sehr ins komplexe gehen. Zum Beispiel Gantt-Charts, wann du was und wie fertig haben willst, welcher Arbeit von was abhängt usw. ^^</p>
<p>Zwei Tipps vielleicht noch: UML und Codebeschriftung <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="😉"
    /></p>
<p>Ansonsten, das Thema ist eben riesig. Buch kaufen oder einfach mal probieren und lernen <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="😉"
    /></p>
<p>Grüssli</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385957</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385957</guid><dc:creator><![CDATA[Dravere]]></dc:creator><pubDate>Mon, 15 Oct 2007 21:01:53 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Mon, 15 Oct 2007 21:12:58 GMT]]></title><description><![CDATA[<p>versuch dir bei sowas immer klar zu machen, wo programmlogik steckt, wo daten rumgeschubst werden und wo interaktion mit dem benutzer stattfindet. MVC deckt nur ein teilgebiet davon ab.</p>
<p>wenn man beispielsweise eine ID auf gültigkeit überprüfen möchte, besteht das ganze aus drei teilaufgaben:</p>
<p>- beschaffung der ID<br />
- berechnung der gültigkeit<br />
- präsentation des ergebnisses</p>
<p>die berechnung der gültigkeit ist reine programmlogik. das ist ein modul, welches man problemlos völlig abstrakt implementieren kann.</p>
<pre><code class="language-cpp">boolean validate(std::string id);
</code></pre>
<p>das ding kann nichts weiter, als eine id auf gültigkeit zu prüfen. jetzt möchte man die methode natürlich mit daten füttern. woher bekommt man die? zum testen steckt man da vielleicht nen hart kodierten string rein. für seine konsolenanwendung liest man die evtl. aus cin, oder übergibt sie als programm parameter. wenn man das stückchen logik in eine GUI anwendung klebt, kommt die eingabe vielleicht aus einer textbox.</p>
<p>und ähnlich siehts mit der präsentation aus. die kann in eine datei geschoben werden, oder auf der konsole passieren oder vielleicht ein grüner button im GUI.</p>
<p>wenn man eine anwendung sauber gestaltet und darauf achtet, logik und I/O immer strikt voneinander zu trennen, dann ist es völlig problemlos möglich, ein und dieselbe anwendung einmal als konsolenanwendung und einmal als GUI anwendung auszuliefern.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1385961</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1385961</guid><dc:creator><![CDATA[thordk]]></dc:creator><pubDate>Mon, 15 Oct 2007 21:12:58 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Tue, 16 Oct 2007 07:08:41 GMT]]></title><description><![CDATA[<p>im allgemeinen finde ich es sinnvoll, wenn nicht nur das ziel fest steht, sondern auch diverse planungen.<br />
wenn man sich im vornherein gedanken darüber macht, wie man alles an gehn will (stichwort UML), dann ist die implementierung eigentlich nebensache. bei einer guten planung schreibt man seine klassendiagramme, MSCs etc einfach ab und es läuft. allerdings nimmt eben die planung recht viel zeit in anspruch, was einen auch wieder davon ab hält. hatte mal in java n projekt, in dem ich zwei wochen vor &quot;abgabe&quot; mein komplettes internes klassenkonzept über den haufen geschmissen habe. das war nicht ideal und ich hätte es mir mit gescheiter planung sparen können, allerdings hatte ich die schnittstellen so definiert, dass das austauschen des ganzen konzeptes nicht das problem war.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1386081</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1386081</guid><dc:creator><![CDATA[Vorden]]></dc:creator><pubDate>Tue, 16 Oct 2007 07:08:41 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Tue, 16 Oct 2007 09:06:01 GMT]]></title><description><![CDATA[<p>Was die Abstrakte Ausgeb angeht: such mal im netz nach &quot;MVC-paradigma&quot; oder &quot;model-viewer-controller&quot; - da findest du eine Idee dessen, was gemeint war. Trenne deine Programmlogik so weit wie moeglich von Ein- und Ausgabe, dann ists am Ende einfacher, letztere zu ersetzen (z.B. Konsole durch GUI)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1386155</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1386155</guid><dc:creator><![CDATA[pumuckl]]></dc:creator><pubDate>Tue, 16 Oct 2007 09:06:01 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Tue, 16 Oct 2007 09:32:27 GMT]]></title><description><![CDATA[<p>Ein wirkliches gutes Projekt steht schon, bevor die erste Zeile Code implementiert wurde.</p>
<p>Oder: Wer bei Projekten stets an das Programmieren denkt, der wird nie weit kommen.</p>
<p>Klassische Arbeitsschritte sind:<br />
Analyse - Was gibt es bereits, wie wird das gemacht<br />
Anforderungen - Was muss das Programm können<br />
Design - Wie muss es das leisten<br />
Konstruktion - Wie baue ich die Module / Klassen etc auf<br />
Implementierung<br />
Testen<br />
Launch</p>
<p>Mit guten Tools lassen sich die Design- und Konstruktionsschritte zB direkt als Code-Rahmen für ein Programm ausgeben<br />
die eigentliche Implementierung ist dann nur Wischi-waschi <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /> weniger Wochen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1386179</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1386179</guid><dc:creator><![CDATA[crashterpiece]]></dc:creator><pubDate>Tue, 16 Oct 2007 09:32:27 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Tue, 16 Oct 2007 10:08:32 GMT]]></title><description><![CDATA[<p>ich würde allerdings während der implementierung halt die einzelnen module / submodule etc jeweils eingängig testen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1386211</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1386211</guid><dc:creator><![CDATA[Vorden]]></dc:creator><pubDate>Tue, 16 Oct 2007 10:08:32 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Tue, 16 Oct 2007 10:25:47 GMT]]></title><description><![CDATA[<p>Wenn du noch nie was mit GUI gemacht hast, dann mach erst mal ein paar GUI Übungsprogramme. Dann siehst du wie das funktioniert und kommst auch ein bisschen von der &quot;Konsolendenkweise&quot; weg.<br />
Einigermasen vernünftiges Design (MVC,...) wirst du beim ersten mal sowieso nicht gleich hin bekommen. Natürlich ist es gut MVC zukennen, aber ohne verständnis für das was ein UI kann und wie es funktioniert, wirst du es sehr wahrscheinlich nicht verstehen bzw. richtig umsetzen können.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1386229</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1386229</guid><dc:creator><![CDATA[masterofblumen]]></dc:creator><pubDate>Tue, 16 Oct 2007 10:25:47 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Tue, 16 Oct 2007 11:07:16 GMT]]></title><description><![CDATA[<p>Zwischendurch schon mal ein grosse DANKESCHOEN fuer Eure Muehe und die offensichtlich tollen Ratschlaege.</p>
<p>Ich werd's mir nachher mal in Ruhe durchlesen und mich dann noch mal mit einem Fazit melden.</p>
<p>Gruss</p>
<p>Guenther</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1386264</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1386264</guid><dc:creator><![CDATA[gboelter]]></dc:creator><pubDate>Tue, 16 Oct 2007 11:07:16 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Thu, 18 Oct 2007 02:54:41 GMT]]></title><description><![CDATA[<p>Neben all dem, was ich beim Studium der vielen guten Ratschlaege gelernt und/oder begriffen habe, scheint es mir besonders wichtig zu sein, dass bei meinen naechsten Schritte mein Hauptaugenmerk wirklich auf die strikte Trennung von Logik und I/O gerichtet sein sollte. Etwas, was ich aber 'relativ' einfach umsetzen kann, da ich intuitiv den Grossteil meiner Programmlogik ohnehin schon in jeweils einzelne Funktionen gelegt habe.</p>
<p>Ich denke aber auch, dass es tatsaechlkich hilfreich sein duerfte, wenn ich mich daneben in den naechsten Tagen mal ein kleines GUI Projekt wage, also einfach nur so zum Test, damit ich's 'mal gesehen habe'. Das sollte mir helfen, das Ganze noch ein wenig besser verstehen zu koennen.</p>
<p>Aber wie gesagt, nur zum Test und nur mal zwischendurch. Ansonsten werde ich weiter meine Funktionen entwickeln, bei denen ich Ein- und Ausgabe in die main() 'auslagere' und natuerlich hoffen, dass ich dann spaeter wirklich all diese Funktionen ohne grosse Aenderungen in die geplante GUI Version uebernehmen kann.</p>
<p>Ansonsten heisst es fuer mich 'ueben, ueben, ueben ...', denn bekanntlich ist es die Uebung, die den Meister macht! Und an manchen Tagen laeuft's wirklich schon recht gut. Es gibt aber natuerlich auch Tage, da bin ich leicht am Zweifeln, weil ploetzlich ueberhaupt nichts klappt. So wie gestern, als ich versucht habe ein Programm mit</p>
<pre><code>g++ -v -o example -lncurses example.cpp
</code></pre>
<p>statt mit</p>
<pre><code>g++ -v -o example example.cpp -lncurses
</code></pre>
<p>zu uebersetzen und mich dann wundere, dass der Linker immer die fehlende Library anmeckert ... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Aber nun gut, dass sind die Fehler, aus denen man(n) lernt ...</p>
<p>Nochmals vielen Dank fuer Eure Hilfe ... <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="😉"
    /></p>
<p>Guenther</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1387548</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1387548</guid><dc:creator><![CDATA[gboelter]]></dc:creator><pubDate>Thu, 18 Oct 2007 02:54:41 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Thu, 18 Oct 2007 05:37:59 GMT]]></title><description><![CDATA[<p>das ist der grund, warum es IDEs gibt <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="😉"
    /> wenn man weiss, dass der compiler mit &quot;g++ in.c -o out&quot; aufgerufen wird, hat man genug gelernt und kanns ab da einem IDE überlassen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1387566</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1387566</guid><dc:creator><![CDATA[thordk]]></dc:creator><pubDate>Thu, 18 Oct 2007 05:37:59 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Thu, 18 Oct 2007 06:59:58 GMT]]></title><description><![CDATA[<p>gboelter schrieb:</p>
<blockquote>
<p>Es gibt aber natuerlich auch Tage, da bin ich leicht am Zweifeln, weil ploetzlich ueberhaupt nichts klappt.</p>
</blockquote>
<p>Die wird es immer geben, passiert mir auch nach ~4 Jahren mit C++ immer wieder mal <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1387602</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1387602</guid><dc:creator><![CDATA[Badestrand]]></dc:creator><pubDate>Thu, 18 Oct 2007 06:59:58 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Thu, 18 Oct 2007 07:03:56 GMT]]></title><description><![CDATA[<p>weiß net, finde von hand compilieren eh schwachsinnig, außer du hast genau 1 file zu compilieren<br />
nimm halt zur not einfach make, des is echt schön, kann man so richtig lustige logik einbauen (und makefiles zusammen stöpseln, die keiner mehr lesen kann :D)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1387606</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1387606</guid><dc:creator><![CDATA[Vorden]]></dc:creator><pubDate>Thu, 18 Oct 2007 07:03:56 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Thu, 18 Oct 2007 11:28:21 GMT]]></title><description><![CDATA[<p>Finde ich eigentlich gar nicht. Gerade beim &quot;Von-Hand-Kompilieren&quot; lernt man ja diesen Entwicklungsprozess. IDEs sind praktisch ohne Zweifel, verbergen aber auch (wohl oder übel) einen entscheidenen Teil der Programmerstellung.</p>
<p>Wenns umfangreicher wird, kann man immer noch makefiles schreiben.</p>
<p>Und wenn man zuviele Objektdateien &quot;rumfliegen&quot; hat, dann kann man diese hübsch mittels ar in eine Statische Bibliothek zusammenführen. So wird der Linkeraufruf (oder die Kombination g++) wieder übersichtlich.</p>
<p>Fazit: Wenn man &quot;Von-Hand-Kompilieren&quot; kann, schafft man es ohne weiteres die Projektoptionen in der IDE richtig einzustellen, was in der anderen Richtung schon nicht mehr ohne weiteres möglich ist.</p>
<p>Grüße...</p>
<p>Heiko</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1387802</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1387802</guid><dc:creator><![CDATA[bwbg]]></dc:creator><pubDate>Thu, 18 Oct 2007 11:28:21 GMT</pubDate></item><item><title><![CDATA[Reply to Wie ein groesseres Project angehen? on Thu, 18 Oct 2007 11:54:44 GMT]]></title><description><![CDATA[<p>ich sach mal so:<br />
wenn man des ganze mit make kann, gehts genauso...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1387822</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1387822</guid><dc:creator><![CDATA[Vorden]]></dc:creator><pubDate>Thu, 18 Oct 2007 11:54:44 GMT</pubDate></item></channel></rss>