C++ Tutorial - neuer Versuch



  • Umfrage: Wie gefällt euch dieses Preview des Tutorials?

    Auswahl Stimmen Prozent
    Ist lustig und könnte einem Anfänger etwas bringen. 4 28.6%
    Ganz Ok 7 50.0%
    Schreib es bitte neu 3 21.4%

    Ich habe mir ja vorgenommen für unsere (CME386, Trunxx und meine Wenigkeit)Site, die bald fertig sein wird ein C++ Tutorial zu schreiben. Mein Problem ist vorallem der Stil, mein erster Versuch den ich relativ weit gebracht hatte war einfach zu trocken zu lesen und so habe ich heute versucht ein etwas lustigeres Tutorial zu schreiben. Bis jetzt natürlich nur eine Hello World Tutorial, doch ich will wissen ob der Stil zu kindisch und dämlich ist, oder ob das lustig ist und ich mich an dem Stil weiterhin orientieren soll.

    Ich bitte euch das ihr das mal durchlest und dann eure Stimme abgebt,
    es sind natürlich noch sehr viele Rechtschreibfehler vorhanden, da ich das ganze heute Nachmittag geschrieben habe. (Nach einem ausführlichen Osterbrunch)
    [EDIT]Jetzt sollte es gehen, dank umleitung:
    http://master_max.funpic.de/Tutorial.html
    [/EDIT]

    Sagt mir echt was ihr davon haltet, es ist ok wenn es völliger Schwachsinn ist, dann schreibe ich es neu und versuche fachlicher zu sein, ich wollte blos mal schaun ob ein Tutorial in dieser Stilrichtung ankommt.

    MfG Max



  • Servs Master_Max,

    der Link scheint nicht zu funktionieren ?!

    Xecutor



  • Xecutor schrieb:

    Servs Master_Max,

    der Link scheint nicht zu funktionieren ?!

    Xecutor

    Geändert.



  • Komisch komisch, im Opera gehts nicht aber im IE läuft es einwandfrei 😉

    Also kommen wir zu den Kritiken:

    - einiges an Rechtschreibfehlern -> sollte möglichst korrigiert werden.
    - Bleibe bei einer Anrede, wenn du mit "Du" anfängst dann benutze weiterhin im Text Du, auf der 2. Seite am Ende benutzt du nämlich "Sie" als Anrede 😉 Ich persönlich würde weiter mit dem dutzen fortfahren.
    - Die Hochkommata in deinem C++ Code nochmal überprüfen 😉
    - ich dachte immer und meine es auch gelesen zu haben, das "cout" für character output steht - hoffe ich täusche mich da nicht 🙄
    - Eventuell solltest du noch an der Textformation arbeiten, einige Absätze, Vorschübe etc. einbringen. Wichtige bzw. markante Wörter wie main() oder cout in Texten hervorheben, durch Fett setzen oder ähnliches.

    Ansonsten liest sich der Text ganz gut, witzig finde ich das du den Compiler einen fiesen Burschen nennst 😉 Die ganze Geschichte mit dem Compiler fand ich sehr gut, hat mich zum schmunzeln gebracht 🙂

    Zum Schluß noch meine persönliche Meinung:
    Der Text bzw. das Tutorial ist in der momentanen Fassung nur ein Tut unter vielen anderen. Mir würde sich die Frage stellen, wieso ich dasselbe was wirklich in zig anderen Tuts steht nochmal schreibe ?!
    Das ist ganz und gar nicht böse gemeint, aber versuch mal was anderes zu schreiben - wieso immer das "Hello World" Programm ? Ich würde mich mehr freuen wenn das erste Programm etwas umfangreicher wäre, wie zum Beispiel einlesen eines Satzes und dann die Ausgabe dessen.

    #include<iostream>
    using namespace std;
    
    int main()
    {
        char eingabe;
        cout << "Bitte geben Sie einen Satz ein: ";
        cin >> eingabe;
        cout << "Sie haben folgendes eingegeben: " << eingabe << endl;
    
        return 0;
    }
    

    Ich glaube nicht das dieses Programm den Leser überfordern würde.

    So ich glaub ich hab nun genug gemeckert *g*

    Xecutor



  • Ich habe "ganz OK" gewählt. Prinzipiell finde ich es also i.O., wie du es geschrieben hast. Ich habe ehrlich gesagt schlimmeres erwartet! 😉 Allerdings bin ich auch der Meinung, das man es auch "normal" schreiben kann. Im großen und Ganzen also, kannst du den Stil beibehalten, wenn er nicht extremer wird.

    Über die Rechtschreibung will ich jetzt mal nichts sagen. Die willst du ja zum Glück noch ausbessern.

    Was mir doch eher Angst macht, ist die Passage, das C++ keine Grafiken usw. kann. Ich werde bei solchen lapidaren Äußerungen ziemlich unruhig und hibbelig. 😃 Du solltest auf jeden Fall erklären, was es damit aufsich hat. Denn eigentlich kann ja C++ auch keine Textzeichen auf den Bildschirm ausgeben und auch nicht von der Tastatur lesen. C++ besteht ja nur aus ein paar Schlüsselwörtern. Man sollte sagen, das C++ sich nur einfach benutzen lässt, wenn man entsprechenden Bibliotheken hat. Selbst wenn man ein einfaches Textzeichen ausgeben will, kommt man um eine Bibliothek nicht herum. Und wenn man sowas nicht haben würde, müsste man sich selbst diese Funktionen selbst schreiben.

    Auch sagst du, das die Bibliotheken (für Fenster usw.) nicht zu C++ gehören? Warum? Es sind doch C++ Bibliotheken, nur sind sie nicht im ISO-Standard vom C++-Kommitee abgesegnet.

    Ich glaube, solche Stories über C++ sollte man nicht noch weiter verbreiten und C++ als kompliziert darstellen - ist es garnicht. Java ist nämlich auch nicht viel besser! Was würde ein Java-Coder ohne die AWT/Swing-Klassen machen können? Er würde auch kein Fenster darstellen können. Java-Coder haben nur das Glück, eine umfangreichere Standard-Bibliothek zu haben. Nicht mehr und nicht weniger.

    Kann dir dazu den Link in meiner Signatur empfehlen.

    Ansonst fand ich den Rest des Tutorials schon sehr gut beschrieben! 👍



  • Hi, danke für das Statement.

    Xecutor schrieb:

    - einiges an Rechtschreibfehlern -> sollte möglichst korrigiert werden.
    Jo, wird gemacht

    Xecutor schrieb:

    - Bleibe bei einer Anrede, wenn du mit "Du" anfängst dann benutze weiterhin im Text Du, auf der 2. Seite am Ende benutzt du nämlich "Sie" als Anrede 😉 Ich persönlich würde weiter mit dem dutzen fortfahren.
    Ist ausgebessert, wird morgen upgeloadet

    Xecutor schrieb:

    - Die Hochkommata in deinem C++ Code nochmal überprüfen 😉

    Scheiss OpenOffice 🙂

    Xecutor schrieb:

    - ich dachte immer und meine es auch gelesen zu haben, das "cout" für character output steht - hoffe ich täusche mich da nicht 🙄

    Hmmm, kann gut sein, ist einige Zeit her als ich das gelesen habe, ich dachte ich hätte es richtig in errinnerung.

    Xecutor schrieb:

    - Eventuell solltest du noch an der Textformation arbeiten, einige Absätze, Vorschübe etc. einbringen. Wichtige bzw. markante Wörter wie main() oder cout in Texten hervorheben, durch Fett setzen oder ähnliches.

    Danke, werde ich machen.
    (Auch eventuell Syntax Coloring, weis blos nicht wie´s mit PDF gehen soll...

    Xecutor schrieb:

    Ansonsten liest sich der Text ganz gut, witzig finde ich das du den Compiler einen fiesen Burschen nennst 😉 Die ganze Geschichte mit dem Compiler fand ich sehr gut, hat mich zum schmunzeln gebracht 🙂

    Ich wollte mich so ein bisschen an den Dummie büchern orientieren,
    freut mich das es ok ist.

    Das wichtigste war mir im moment nur das es vom Stil her ankommt, wie bereits oben stand, der Inhalt wird hoffentlich mehr und besser.
    Heute ist mir halt nichts inhaltlich neues eingefallen und ich wollte den Leser im ersten Kapitel vorallem vor falschen mains abschrecken. 😃

    Danke, bin weiterhin an Statements interresiert.



  • @Artchi: Ok, aber ich werde beim bösen, fiesem Burchen dem Compiler bleiben. 😃

    Auch sagst du, das die Bibliotheken (für Fenster usw.) nicht zu C++ gehören? Warum? Es sind doch C++ Bibliotheken, nur sind sie nicht im ISO-Standard vom C++-Kommitee abgesegnet.

    Naja ich werde sie als C++ Bibliotheken aufführen, ich zähle sie nicht der Sprache C++ zugehörig weil, sie sich einige nicht gut in diese Eingliedern und weil sie kein Bestandteil sind, wie es bei Java und C# der Fall ist. Dort sind sie fester Bestandteil und wesentlich einfacher zu behandeln, aber ich werde mir das nocheinmal sehr gut durch den Kopf gehen lassen.

    Ich werde also das ganze mal ausbauen, wichtig war der Stil und er scheint einigermaßen ok zu sein, jetzt kann ich mich um den Inhalt kümmern.

    Danke. 👍

    MfG Max



  • Da externes Linken ja nicht erlaubt ist linken wir nun intern 🙂 :
    http://master_max.funpic.de/Tutorial.html



  • aus deinem tutorial:

    Vergesse auch hier bitte nicht das ;sonst gibt der Compiler wieder unverständliches Englisches
    Gebrabbel von sich.

    zum glück kann ich englisch. als programmierin muss man das können. zumindest muss man fehlermeldungen lesen und verstehen. sonst hat man von vornherein verloren.
    einen solchen satz in deinem "tutorial" suggeriert, das man die fehlermeldungen "ignorieren" soll.. und dann schreiend in das c++ forum "hilfe" posten muss.

    wenn man sich einen tag damit auseinandersetzt, sieht man schnell, wie klar und deutlich der compiler einem die fehler richtig anzeigt. zumindest bei anfänger c++ problemen (templates sind dann etwas anders geortet).

    schau dir mal shades c++ tutorial an, oder volkards.
    es geht vor allem darum, leuten zu helfen, daß sie selbständig fehler erkennen und ihre programme verstehen lernen.
    übrigens ist das visual studio auch auf deutsch erhältlich.

    so long.



  • Master_Max schrieb:

    Heute ist mir halt nichts inhaltlich neues eingefallen und ich wollte den Leser im ersten Kapitel vorallem vor falschen mains abschrecken. 😃

    Warum?
    Sieh dir mal volkards Tutorial an - void main() ist zwar falsch, aber dennoch nicht so tragisch. Man kann auch mit void main() gute Programme schreiben 🙂

    IMHO solltest du mehr erklären und mehr auf die Technik eingehen

    Nach #include kommt kein Strichpunkt - ist zwar richtig, aber ich weiss jetzt nicht wieso - und werde es mir vermutlich nicht merken.

    Sieh dir mal meinen Ansatz an: ich habe #includes und Co am Anfang nicht erklärt: ich habe gesagt: das ist so, und basta -> es reicht ja auch für den Anfang. Langsam entdeckt der Leser dann den Sinn - bis ich ihm das Konzept der Übersetzungseinheiten präsentiere.

    Du musst es natürlich nicht genauso machen - aber vielleicht kannst du dir ein paar Ideen holen 🙂 Bei mir hat es auch etliche Tutorials, Texte und Antworten und Erklärungen im Forum und Chats bedarft, bis ich einiger maßen vernünftige Texte schreiben konnte.



  • C++ ist die in der Proffesionellen Programmierung am meisten genutzte Sprache

    Ich würde das auch nicht als Fakt hinstellen. Die meisten Betriebssysteme sind in C/ASS.



  • Unix-Tom schrieb:

    C++ ist die in der Proffesionellen Programmierung am meisten genutzte Sprache

    Ich würde das auch nicht als Fakt hinstellen. Die meisten Betriebssysteme sind in C/ASS.

    Aha? Und professionelle Programmierung wird nur in der Betriebssystem-Entwicklung betrieben??? 😮

    Die Aussage von MasterMax ist ansich total irrelevant! In der Industrie wird eigentlich in jeder Sprache prorgammiert, egal ob Delphie, Java, VisualBasic, C, C++ usw.

    Im VW-Konzern dominiert praktisch Java, sowohl auf Desktop-Applikationen als auch auf der Middleware. C++-Projekte gibts so gut wie garnicht mehr in dem Konzern.



  • Ihr habt ja recht und ich habe im ersten Abschnitt zuviel gemacht.
    Ich wollte mal eine andere Art versuchen, gleich viel erklären und möglichst lustig. Den Leuten Fakten hinstellen mag ich nicht, aber wenn es im nächsten Kapitel erklärt wird und dann im vorherigen gesagt: Im nächsten wird´s erklärt, macht es einfach so. Dann ist´s auch Ok.

    Wie gesagt, ich wollte etwas neues Probieren, ich wollte ganz kleine Happen machen damit jeder Leser, egal welche Zielgruppe es versteht und erfolgserlebnisse am Fließband bekommt. Ausserdem wollte ich es unterhaltsam schreiben.

    Ich habe mir wohl zu viel vorgenommen und werde mal mein Konzept überdenken bevor ich weitermache, vielen dank an alle.



  • Artchi schrieb:

    Aha? Und professionelle Programmierung wird nur in der Betriebssystem-Entwicklung betrieben??? 😮
    .

    Ok, ich werde es in:

    Die in der Proffesionellen Software-Entwicklung wohl am meist verwendete Sprache.

    ändern.



  • Shade Of Mine schrieb:

    Master_Max schrieb:

    Heute ist mir halt nichts inhaltlich neues eingefallen und ich wollte den Leser im ersten Kapitel vorallem vor falschen mains abschrecken. 😃

    Warum?
    Sieh dir mal volkards Tutorial an - void main() ist zwar falsch, aber dennoch nicht so tragisch. Man kann auch mit void main() gute Programme schreiben 🙂

    IMHO solltest du mehr erklären und mehr auf die Technik eingehen

    Nach #include kommt kein Strichpunkt - ist zwar richtig, aber ich weiss jetzt nicht wieso - und werde es mir vermutlich nicht merken.

    Sieh dir mal meinen Ansatz an: ich habe #includes und Co am Anfang nicht erklärt: ich habe gesagt: das ist so, und basta -> es reicht ja auch für den Anfang. Langsam entdeckt der Leser dann den Sinn - bis ich ihm das Konzept der Übersetzungseinheiten präsentiere.

    Du musst es natürlich nicht genauso machen - aber vielleicht kannst du dir ein paar Ideen holen 🙂 Bei mir hat es auch etliche Tutorials, Texte und Antworten und Erklärungen im Forum und Chats bedarft, bis ich einiger maßen vernünftige Texte schreiben konnte.

    Wie gesagt, ich habe im ersten Tutorial sehr viel erklärt was ich erst einmal stehen hätte lassen können, ich werde das auf jeden Fall überdenken.

    Zum #include und dem nicht folgenden sprichpunkt.
    Ich wollte den Leser nicht im ersten Kapitel auch noch erzählen das include nicht kompiliert wird, sondern ein Präprozessor befehl ist und das auf Präprozessorbefehle kein Strichpunkt folgt.

    Um noch aufs nicht Englisch können einzugehen, du hast recht man muss Englisch können doch im ersten Kapitel will der Leser nicht denken, er will ein Erfolgserlebnis und das so schnell wie möglich. Ansonsten gebe ich dir Recht.

    Vielleicht werde ich nicht auf die ersten zwei Zeilen eingehen,
    wäre eventuell besser so.

    Danke an alle, habt mir sehr geholfen. 👍



  • Einige Fackten zu C++:

    *gallewiederrunterschluck* 😉 👍



  • Ich habe mir jetzt mal vorgenommen das ganze mehr zu splitten, zu fast jedem Abschnitt wird es einige Aufgaben + Lösungen geben:

    Intro
    Was kann C++ und warum C++ lernen
    Ein bisschen Geschichte
    Einrichten einer Entwicklungsumgebung ( (Windows VC + Dev-C++) +(Linux KDevelop) )
    Das Erste Programm (Bildschirmausgaben etc.)
    Variablen + Stringklasse der STL(Eingaben aus der Tastatur einlesen und speichern)
    Kontrollstrukturen
    Zeiger
    Funktionen

    Das sollte für den Anfang reichen... ich melde mich dann bald wieder.
    Danke an alle.



  • Hi.

    Ich finde "leider" machst du (wie auch sehr sehr viele) den bösen Fehler zu weit vorne zu beginnen.

    Programmieren ist ein bisschen mehr als nur das eintippen von "einfachen" Befehlen.

    Gerade bei C/C++, wo man doch recht nahe an den Bits und Bytes arbeitet finde ich das das erste Kapitel sich mit den Datentypen und den Grundlagen der Speicherung von Zahlen, Buchstaben etc. in diesen befassen sollte.

    Ich erlebe es gerade bei mir in der Vorlesung zu C Programmieren.
    Mein Prof fängt genauso an wie du und kommt mit dieser Methode zwar sehr schnell zu Ergebnissen (sprich zum ersten fertigem Programm) aber verstehen tun es die Leute nicht. Die Fragen sich nämlich was denn eigentlich passiert wenn ich "int iZahl1;" da hinschreibe und warum ich das machen muss etc.
    Und dann auch noch worin genau der Unterschied zwischen "int" und "unsigned int" besteht. Und dann WARUM ich bei "unsigned int" viel größere Zahlen darstellen kann als nur mit "int".

    Ich finde GENAU DAS wird in SO vielen Tutorials einfach verschluckt! Und es ist absolut wichtig, gerade bei C/C++, dieses zu verstehen. Daher ist es vollkommen unangebracht im ersten Kapitel mit einem "Hello World" Programm anzufangen.

    Das ist zwar nur meine Meinung, aber ich habe gesehen das es vielen Leuten genau so ergeht wie ich hier beschrieben habe.

    Ich persöhnlich muss sagen, das ich in C/C++ wesentlich sicherer geworden bin, als ich auch noch mit Assembler angefangen habe, da ich nun genau weiß was denn intern vorgeht wenn ich da eine bestimmte Zeile in C verfasse.

    Und wenn ich den Hintergrund der Bits und Bytes nichtmal verstehe oder weiß das es sowas gibt, brauch ich mit C nicht anzufangen.



  • Artchi schrieb:

    Unix-Tom schrieb:

    C++ ist die in der Proffesionellen Programmierung am meisten genutzte Sprache

    Ich würde das auch nicht als Fakt hinstellen. Die meisten Betriebssysteme sind in C/ASS.

    Aha? Und professionelle Programmierung wird nur in der Betriebssystem-Entwicklung betrieben??? 😮

    Ist doch genau was ich gesagt habe. Sein Aussage stimmt nicht.
    Wenn jemand sein Tut ließt, läuft derjenige dann herum und sagt: "Die Profis programmieren alle in C++ und das ist der Großteil der Entwickler"

    Die ist kein Fakt da es nicht stimmt. In einem Tutorial soll man nicht Halbwahrheiten verbreiten, da ein Leser dies als gegeben annimmt.

    Geht man jetzt von Großteil aus so wären es z.B. PHP,JAVA, etc.
    Auch das Programmieren ein Website ist Programmieren. Dies geschieht aber nicht mit C++ sondern mit php,java und was weiß ich noch alles. Das darunter C arbeitet ist in diesem Fall irrelevant. Dies meinte ich mit Betriebssystem. Im Grunde programmieren auch php- und java-entwickler auch mit hilfe von c/c++. Die meisten Programme sind aber nicht C++.



  • TeeJay! Muß dir hier voll und ganz zustimmen! Aber ich denke, das es heute schwieriger ist, in Assembler einzusteigen. Oder sagen wir es mal so: alle wollen Fenster usw. darstellen.

    Damals hab ich auf dem C64 in Assembler angefangen. Ich wußte also wie so ein Computer arbeitet. Als ich dann Jahre später auf C++ umstieg (was mir seeehr schwer fiel!), habe ich mir bei jeder Zeile die ich eintippte, vorgstellt, was nun der Compiler daraus macht. Eigentlich war es verrückt sich jedesmal darüber Gedanken zu machen. Vorallem habe ich bei OO-Kram die Kriese bekommen, weil in meinen C++-Büchern nicht drin stand, was im Hintergrund passiert, wenn ich eine Klasse instanziere.

    Selbst heute findet man in der Literatur immer noch keine Aussage, was da nun passiert. Es heißt immer lappidar: "Es wird ein neues Objekt erzeugt." Ich konnte es mir einfach nicht vorstellen, was damit gemeint war. Ich habe noch in Assembler gedacht. Es sind nicht nur Einsteiger-Tutorials wo ich sowas vermisst habe.

    Sicherlich, heute weiß ich was da passiert. Und ich kann heute beruhigt und bedenkenlos OO programieren.

    Ich habe letztens meinem Cousin, der Delphie an der Techniker-Abendschule lernt, erklärt was eine Parameter-Übergabe by Refrence und by Value passiert. Was nun im Speicher und mit dem ProgrammCounter der CPU usw. passiert, hatte ihnen NIEMAND erklärt. Und ich muß sagen, mit ein paar Skizzen auf Papier hat er verstanden was da genau passiert, wenn er eine Funktion aufruft. Und warum es by Value und by Referece gibt.


Anmelden zum Antworten