Was ist für euch guter Programmcode?



  • Nehmen wir einmal an, ihr müßtet den Programmcode von einer
    anderen Person bewerten, die mit einer Programmiersprache
    einen Programmcode geschrieben hat um eine gestellte Aufgabe zu lösen.

    Wenn wir weiter annehmen, das das fertige Programm die gestellte Aufgabe fehlerfrei erfüllt und der Quellcode zum Programm gut dokumentiert ist, worauf würdet ihr dann bei der Bewertung des Programmcodes noch achten?

    Was macht für euch guten Programmcode aus?

    Falls zur Beantwortung der Frage eine bestimmte Programmiersprache
    spezifiziert werden muß, so nehmen wir in diesem Beispiel die Programmiersprache
    C für ein prozedural programmiertes Programm und die Programmiersprache C++ für ein objekt orientiertes Programm.



  • Was macht für euch guten Programmcode aus?

    Sauberes Design, gute Wartbarkeit.



  • Selbsterklärender Quelltext. Wenn ich erst die Kommentare lesen muss, suckt es.



  • Optimizer schrieb:

    Selbsterklärender Quelltext. Wenn ich erst die Kommentare lesen muss, suckt es.

    Wenn ich aber Kommentare lesen will und keine da sind, dann suckt es noch viel mehr!

    Klar, Kommentare ist was für Weicheier und Testen für Memmen. Wer meinen Code nicht versteht ist halt zu blöd, etc. Alles lustige Sprüche, aber Dünnsinn.

    C Code in gewisser Größe unkommentiert zu lassen ist meines Erachtens nicht ratsam. Kommentare haben zwei entscheidende Vorteile. Erstens, allein das Erklären des Geschriebenen in kurzer prägnanter Weise zwingt den Programmierer zur Reflektion des Geschriebenen und oftmals zur Einsicht, dass man den Code auch lesbarer bzw. besser schreiben kann. Zweitens, helfen gute Kommentare dem Leser immer weiter. Fragen a la "Hättest Du das nicht so viel besser machen können?" werden überflüssig, wenn geschrieben steht warum bestimmte Sachen wie implementiert werden.
    Natürlich sollen keine Aufsätze geschrieben werden. Warum Variable "i" "i" heisst interessiert natürlich nur peripher, bzw. kann man sich evtl auch denken.

    Meines Erachtens muss Programmcode ausreichend kommentiert sein, selbst wenn er in Java geschrieben ist.



  • Fragen a la "Hättest Du das nicht so viel besser machen können?" werden überflüssig, wenn geschrieben steht warum bestimmte Sachen wie implementiert werden.

    Ja, aber so tricky Sachen hat man doch nicht alle Nase lang.

    Man kann eher sagen: Je weniger Kommentare der Code braucht, desto besser ist er.



  • Klar, Kommentare ist was für Weicheier und Testen für Memmen. Wer meinen Code nicht versteht ist halt zu blöd, etc. Alles lustige Sprüche, aber Dünnsinn.

    C Code in gewisser Größe unkommentiert zu lassen ist meines Erachtens nicht ratsam.

    rofl. Als hätte ich das jetzt gesagt. Ich habe nur gesagt, dass man den Quelltext ohne Kommentare verstehen können muss.
    Natürlich ist es schön, wenn für die Feinheiten ein Kommentar dasteht. Sowas hab ich aber am liebsten am Anfang einer Methode, womit ich beschrieben krieg, was sie genau macht. Also Doc-Kommentare und nicht Kommentare mittendrin.



  • jo JavaDoc kommentare sind was feines. weil man dann auch gleich gezielt die funktion findet, die die gewuenschte funktialitaet bietet. sowas ist fein.

    ich mach kommentare idR erst spaeter, wenn das programm fortgeschritten ist.

    die einzigen kommentare die ich gleich waherend dem programmieren mache sind:
    TODO:
    BUG:
    IDEA:
    oder kurzbeschreibungen eines algos, zB
    //algo: bubblesort, see: http://geileseite.de
    oder
    see: Sedgewick
    oder so 😉

    sowas kommt aber selten vor. TODO ist am oefftesten...





  • lol 😃

    dazu fällt mir ein, dass ich öfter als Kommentar auch // XXX habe... aber mit anderer Intention 😉



  • Tjaja Shade, jetzt ist es raus 😉



  • Helium schrieb:

    Was macht für euch guten Programmcode aus?

    Sauberes Design, gute Wartbarkeit.

    Definiere, was ist für dich sauberes Design?

    Beispiele?



  • hmmmmmmm schrieb:

    see: http://geileseite.de

    😮 😮 😮 😮 👎 ⚠

    roflmao.



  • Frage 1337 schrieb:

    Helium schrieb:

    Was macht für euch guten Programmcode aus?

    Sauberes Design, gute Wartbarkeit.

    Definiere, was ist für dich sauberes Design?

    Beispiele?

    In der Praxis wirst du sowas wohl nicht finden.



  • Frage 1337 schrieb:

    Was macht für euch guten Programmcode aus?

    Selbsterklärender Code da wo es möglich ist, Kommentare wo nicht. Wichtig ist mir nicht WIE etwas gemacht wird sondern WAS. Dazu nötig sind aussagekräftige Namen für Variablen, Funktionen, Klassen etc. Niemand weiß was eine Variable nTemp tut oder eine Funktion Calculate(). Trivialitäten sollten nicht kommentiert werden, dafür so Sachen wie am Anfang der Datei eine Auflistung was das Programm tut, wer es geschrieben hat und wann.

    Wichtig ist auch konsistenter Programmierstil. Also wenn ich mich z. B. dafür entscheide ungarische Notation zu verwenden sollte ich das immer tun und nicht manchmal so und manchmal so. Inkonsistenter Code ist schwieriger zu lesen als der schlechteste Standard.



  • Optimizer schrieb:

    hmmmmmmm schrieb:

    see: http://geileseite.de

    😮 😮 😮 😮 👎 ⚠

    roflmao.

    Irgendwo muss er sich doch Inspiration holen 😃 🤡 .



  • asdrubael schrieb:

    ungarische Notation

    Bäh!



  • MaSTaH schrieb:

    asdrubael schrieb:

    ungarische Notation

    Bäh!

    Oder [hierMaSTaHsLieblingsCodingStandardeinsetzen]



  • Ich finde nen Kommentar darf schon sein, so ist eine Funktion savegame() sicher selbsterklärend vom Sinn her, aber die Parameter, Fehlercodes und was die Funktion genau macht (wenn sie ein Objekt verändert könnte das ja uU wichtig sein) sollte schon da stehen.

    Nen gutes Beispiel finde ich den Linux QT, so stelle ich mir nen sauberen QT vor, allerdings gelingt es mir nicht immer 😕

    /Edit

    Achja wenn ne Funktion mal so lang wird, dass man so viel kommentieren muss sollte man überlegen ob man diese Funktion nicht in weitere Funktionen zerlegen kann.



  • Irgendwer meinte, Perl sei für viele Leute "write-only", und als ich das las, musste ich etwas schmunzeln..... :p



  • Leute, das der Code gut kommentiert sein sollte ist schon klar,
    aber das war nicht die Frage, siehe Fragestellung:
    "gut Dokumentiert = gut kommentiert".

    Denn die eigentliche Fragestellung war, was ist mit dem programmiertechnischen Rest?


Log in to reply