1. Foren
  2. » Kommentare
  3. » Applikationen
  4. » Alle Kommentare zum Artikel
  5. » Computer History Museum…

Guter Code braucht keine Kommentare

Anzeige
  1. Thema
  1. 1
  2. 2

Neues Thema Ansicht wechseln


  1. Guter Code braucht keine Kommentare

    Autor HansiHinterseher 15.02.13 - 10:36

    Das hat schon Bjarne Stroustrup mal gesagt.

    Wenn man kommentieren muss, dann weil der Code schlecht zu verstehen ist. Code muss sprechend sein, besonders mit den heutigen Hochsprachen sehr einfach.

    Bei Assembler-Programmen sind Kommentare eher verständlich. Wobei selbst Assembler heute schon sehr viele Möglichkeiten bieten, lesbareren Code zu schreiben...



    1 mal bearbeitet, zuletzt am 15.02.13 10:36 durch HansiHinterseher.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  2. Re: Guter Code braucht keine Kommentare

    Autor ibsi 15.02.13 - 10:41

    Code kann aber auch kompliziert sein, und deshalb ist es schon sinnvoll mindestens solche Stellen dann ausführlich zu kommentieren.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  3. Re: Guter Code braucht keine Kommentare

    Autor MaX 15.02.13 - 10:41

    Das seh ich anders. Kommentare nach dem Motto, "Hier mache ich XY" sind nutzlos aber kommentare, in denen steht, warum man etwas gemacht hat sind sehr hilfreich.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  4. Großer Unterschied

    Autor dabbes 15.02.13 - 10:43

    Kommentare die den Code kommentieren braucht kein Mensch.
    Kommentare die kommentieren was der Code macht aber schon.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  5. Re: Guter Code braucht keine Kommentare

    Autor Extrabit 15.02.13 - 11:14

    Ein bischen kurz gegriffen. Der Code kann ja sauber sein. Dann erklärt er aber immer noch nicht immer Interdependenzen / komplexe Schnittstellen zwischen verschiedenen Modulen.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  6. Re: Großer Unterschied

    Autor kopfspringer 15.02.13 - 11:14

    Hat einer von euch eigenlich schonmal mehr als eine Zeile echten Code abgeliefert?

    Ihr Helden!

    Codecomments sind essentiell wichtig!
    Ich rede da von professionellen Softwareprodukten und großen Entwicklungsabteilungen. Es kann dann durchauch passieren, dass ein bestimmter Teil oder Modul der Software jahrelang seinen Dienst tut und dann einem Redesign unterworfen wird oder im Zusammenspiel mit Neuerungen ein Fehler auftritt...

    Eine gewisse sauber gemachte Codekommentierung ist dann mehr als hilfreich, wenn ich nach Jahren an eigenen Code oder Code anderer die vieleicht schon lange das Unternehmen verlassen haben, ran muss.

    Wenn Die Software dann noch komplexe Strukturen wie bspw. ERP Prozesse abbildet, dann ist der Code in der Syntax eventluell noch verständlich, jedoch die Algorithmische bedeutung doch mehr als nebulös... Da sind Kommentare echt angebracht...

    Benutzer wird von Ihnen ignoriert. Anzeigen

  7. "Tod durch Scrollen"

    Autor renegade334 15.02.13 - 11:25

    Wenn's nach mir geht, tragen überflüssige Kommentare zum Tod durch Scrollen bei. Ich mag's nicht, wenn man für manch so Einiges eine eigene Zeile gönnt für "/**", "*/", "int x=0;" und für "public int getX(){return x;}" gleich 4 Zeilen verschwenden.

    Auch wenn es vor einer extrem langer Zeit an einem Gerät programmiert habe wo man beim Programmieren nur 6 Zeilen Code beim Editieren sieht. Trotzdem kann man mehr sehen, wenn man etwas kompakter schreibt. Ich wäre mehr begeistert, wenn man zum Beispiel sowas schreiben würde anstatt eine ganze Bildschirmhöhe dafür zu brauchen:
    public int getSize(){ return size;}
    public void setSize(String size) this.size=size;}
    public void stopServer() this.server.stop;}
    Haben wir gegenüber der konventionellen Schreibweise schon mal mindestens 6 Zeilen gespart. Kennt jemand schon einen Checkstyle, der mir unnötige zeilen kürzt?
    Für Euch ist das vielleicht noch ungewohnt, aber ich finde es leserlicher, da ich nicht zu stark daran gewöhnt bin, sehr schnell vertikal zu lesen.

    Okay, aber für Matheberechnungen finde ich Kommentare schon sinnvoll, damit ich den Ansatz wenigstens versteher. Und man programmiert wie so oft nicht selten allein ;-)



    2 mal bearbeitet, zuletzt am 15.02.13 11:30 durch renegade334.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  8. Re: "Tod durch Scrollen"

    Autor BLi8819 15.02.13 - 11:35

    Getter und Setter kommentieren ist auch ganz schön Witzlos ;)
    Die lässt man sich einmal generieren und dann bleiben die ausgeblendet ^^

    Wichtig werden Kommentare bei komplexen Methoden oder mathematischen Funktionen, bei denen Hintergrundwissen Notwendig ist.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  9. Re: "Tod durch Scrollen"

    Autor renegade334 15.02.13 - 11:42

    BLi8819 schrieb:
    --------------------------------------------------------------------------------
    > Getter und Setter kommentieren ist auch ganz schön Witzlos ;)
    > Die lässt man sich einmal generieren und dann bleiben die ausgeblendet ^^
    Ich find's auch komisch, dass Getter/Setter nie in eine Zeile geschrieben werden bzw. dass meistens 4 Zeilen deswegen in Anspruch genommen wurden ("Signatur", Nutzcode, dann "}" und Zwischenleerzeile). In persönlichen Code packe ich sowas in eine Zeile ohne leeren Zwischenzeilen falls kurz genug (Code-Statements mit Tabs auf eine Ebene gebracht).

    Benutzer wird von Ihnen ignoriert. Anzeigen

  10. Re: Guter Code braucht keine Kommentare

    Autor bstea 15.02.13 - 11:43

    Dafür ist eine Dokumentation da.
    Sollte das doch einer als Kommentar hinterlassen, würde ich schon seine fachliche Eignung hinterfragen.

    Was ich überhaupt nicht leiden kann ist, wenn die Kommentare zu viel Platz in Anspruch nehmen. Erst letztens hab ich den Code eines Chip8 Emulator eines Freundes refactored. Da wurde jeder Opcodes nochmals erklärt, was den Code unnötig aufgebläht und nichts mit Implementierung zu tun hatte.

    --
    http://www.heise.de/open/meldung/Linux-auf-dem-Desktop-Europa-fuehrt-1243708.html
    http://www.heise.de/newsticker/meldung/Immer-mehr-Linux-auf-dem-Desktop-1404775.html

    Benutzer wird von Ihnen ignoriert. Anzeigen

  11. Re: "Tod durch Scrollen"

    Autor theonlyone 15.02.13 - 11:57

    Programmiert man Test Driven hat man in aller Regel eine gute Dokumentation allein durch die TestAbdeckung.

    Will jemand wissen was eine Funktion macht muss nur der zugehörige Test betrachtet werden, bzw. ausgeführt.

    Parameter ordentlich zu benennen, das sie aussagekräftig sind ist auch etwas das viele nie gelernt habe.

    Da heißen die Paramter dann "x_1_y" und es ist total unklar was das sein soll.

    Grobe Dokumentation sagt einfach so kurz wie möglich was die Funktion machen soll.

    Sind ein paar "hacks" in der Funktion die nicht gewöhnlich sind, werden sie dokumentiert und SOWIESO mit einem entsprechend Zeichen versehen (da man solche hacks immer dokumentieren sollte, wenn möglich entfernen und durch standardisierte Lösungen ersetzen).


    Ein Algorithmus der sehr komplex ist muss entsprechend beschrieben werden, mit Beispielen wenn möglich (daher Test-Driven hat man gleich ein Anwendungsbeispiel).

    Macht man etwas in seinem Code das ohne Kommentar einfach unklar ist, sollte einem klar werden das diese Sache einfach schlecht gelöst ist (auch wenn einem auf Anhieb keine bessere Lösung einfällt, so MUSS diese stelle einfach gekennzeichnet werden).

    Benutzer wird von Ihnen ignoriert. Anzeigen

  12. Re: Guter Code braucht keine Kommentare

    Autor ruamzuzler 15.02.13 - 12:17

    Sehe ich auch so, vor allem wenn man irgendwelche Workarounds bastelt muss, weil das darunter liegende System buggy ist. Aber das kommt ja eh nieeee vor ...

    Benutzer wird von Ihnen ignoriert. Anzeigen

  13. Re: Guter Code braucht keine Kommentare

    Autor teenriot 15.02.13 - 13:26

    MaX schrieb:
    --------------------------------------------------------------------------------
    > Das seh ich anders. Kommentare nach dem Motto, "Hier mache ich XY" sind
    > nutzlos

    Ich finde es durchaus sinnvoll innerhalb einer Funktion Codeblöcke durch einzeilige Kurzkommentare abzutrennen um beim späteren Überflug auf Anhieb zu wissen was passiert wenn eine Funktion etliche Zeilen hat.
    Was ich nämlich nicht leiden kann ist die Aufsplittung von Codeblöcken in jeweils eigene Funktionen die dann doch nur einmal im Code aufgerufen werden und nur in einem bestimmten Kontext sinnvoll sind und nicht allgemein funktionieren.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  14. Re: "Tod durch Scrollen"

    Autor teenriot 15.02.13 - 13:40

    renegade334 schrieb:
    --------------------------------------------------------------------------------
    > Wenn's nach mir geht, tragen überflüssige Kommentare zum Tod durch Scrollen
    > bei. Ich mag's nicht, wenn man für manch so Einiges eine eigene Zeile gönnt
    > für "/**", "*/", "int x=0;" und für "public int getX(){return x;}" gleich
    > 4 Zeilen verschwenden.
    >
    > Auch wenn es vor einer extrem langer Zeit an einem Gerät programmiert habe
    > wo man beim Programmieren nur 6 Zeilen Code beim Editieren sieht. Trotzdem
    > kann man mehr sehen, wenn man etwas kompakter schreibt. Ich wäre mehr
    > begeistert, wenn man zum Beispiel sowas schreiben würde anstatt eine ganze
    > Bildschirmhöhe dafür zu brauchen:
    > public int getSize(){ return size;}
    > public void setSize(String size) this.size=size;}
    > public void stopServer() this.server.stop;}
    > Haben wir gegenüber der konventionellen Schreibweise schon mal mindestens 6
    > Zeilen gespart. Kennt jemand schon einen Checkstyle, der mir unnötige
    > zeilen kürzt?
    > Für Euch ist das vielleicht noch ungewohnt, aber ich finde es leserlicher,
    > da ich nicht zu stark daran gewöhnt bin, sehr schnell vertikal zu lesen.

    Du vermeidest vertikales Scrollen führst damit aber horizontales scrollen ein.
    Denn wenn Methode und Parameter ordentlich benannt sind hat man nicht selten 120 Zeichen oder mehr bei einem simplen setter. Das schlimme ist das der eigentlich relevante Code außerhalb des nicht gescrollten 'Sichtfensters' liegt

    Es ist echt ein Problem das code conventions, die den Zweck haben Code leserlich zu machen bei strikter Anwendung oft das Gegenteil bewirken und sich teilweise widersprechen.
    Ausschließlich durch Regeln zu sauber anzusehenden Code zu kommen funktioniert leider nicht. Man braucht Gefühl für Regelbrüche um wirklich 'ästhetisch' zu werden.

    Beispiel:
    Ich empfinde es als ideal wenn ich meinen Code an keiner Stelle horizontal scrollen muss. Andererseits hasse auch ich die Platzverschwendung durch Boilercode. Und zusätzlich hätte ich gerne fast identitischen Codezeilen in Folge so formatiert das gleiche Parts exakt untereinander stehen.
    Dafür wird man keine einheitlichen regeln aufstellen können. Der Stil muss immer an Ort und stelle entschieden werden.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  15. Re: Großer Unterschied

    Autor GodsBoss 16.02.13 - 08:38

    > Hat einer von euch eigenlich schonmal mehr als eine Zeile echten Code
    > abgeliefert?

    Ja.

    > Codecomments sind essentiell wichtig!
    > Ich rede da von professionellen Softwareprodukten und großen
    > Entwicklungsabteilungen. Es kann dann durchauch passieren, dass ein
    > bestimmter Teil oder Modul der Software jahrelang seinen Dienst tut und
    > dann einem Redesign unterworfen wird oder im Zusammenspiel mit Neuerungen
    > ein Fehler auftritt...
    >
    > Eine gewisse sauber gemachte Codekommentierung ist dann mehr als hilfreich,
    > wenn ich nach Jahren an eigenen Code oder Code anderer die vieleicht schon
    > lange das Unternehmen verlassen haben, ran muss.

    Noch viel besser helfen da ordentliche, leicht lesbare Unit Tests. Die sind vor allem deswegen besser als Kommentare, weil Kommentare und der Code, z.B. nach Änderungen, divergieren können, aber wenn die Unit Tests nicht mehr zum Code passen, schlagen sie fehl.

    > Wenn Die Software dann noch komplexe Strukturen wie bspw. ERP Prozesse
    > abbildet, dann ist der Code in der Syntax eventluell noch verständlich,
    > jedoch die Algorithmische bedeutung doch mehr als nebulös... Da sind
    > Kommentare echt angebracht...

    Gegen Dokumentation, die die Konzepte erklärt, will ich nichts einwenden, ist aber nicht das, was ich unter „Code Comments“ verstehen würde.

    Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  16. Re: "Tod durch Scrollen"

    Autor GodsBoss 16.02.13 - 08:55

    > Getter und Setter kommentieren ist auch ganz schön Witzlos ;)
    > Die lässt man sich einmal generieren und dann bleiben die ausgeblendet ^^

    Code-Generierung ist ein deutliches Signal für Mängel in der gewählten Programmiersprache. Ebenso können Getter-Setter-Paare Anzeichen für eine schlechte Struktur sein, wenn derartige Objekte tatsächlich ihre Innereien darbieten, weil das dem Prinzip des Information Hiding widerspricht.

    Reden ist Silber, Schweigen ist Gold, meine Ausführungen sind Platin.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  17. Re: "Tod durch Scrollen"

    Autor Heinz Müllersen 16.02.13 - 10:29

    renegade334 schrieb:
    --------------------------------------------------------------------------------
    > public int getSize(){ return size;}
    > public void setSize(String size) this.size=size;}
    > public void stopServer() this.server.stop;}

    Hätten Sie mehrere Zeilen genutzt, dann wäre Ihnen beim Schreiben vermutlich aufgefallen, dass sie einige Klammern vergessen haben.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  18. Re: "Tod durch Scrollen"

    Autor KleinerWolf 16.02.13 - 10:46

    hey Nase, wir haben heutzutage Monitore, die kann man um 90 Grad drehen. Wir arbeiten nicht mehr an 80x25 10" Bernstein Monitoren.

    Benutzer wird von Ihnen ignoriert. Anzeigen

  19. Re: "Tod durch Scrollen"

    Autor KleinerWolf 16.02.13 - 10:47

    owned :-P

    Benutzer wird von Ihnen ignoriert. Anzeigen

  20. Re: Guter Code braucht keine Kommentare

    Autor sknoche 16.02.13 - 15:21

    Naja, in dem Moment, in dem sich innerhalb einer Funktion mehrere "Code-Blöcke" befinden, tut diese bereits mehr als sie eigentlich sollte!

    Benutzer wird von Ihnen ignoriert. Anzeigen

  1. 1
  2. 2

Neues Thema Ansicht wechseln


Entschuldigung, nur registrierte Benutzer dürfen in diesem Forum schreiben. Klicken Sie hier um sich einzuloggen


Anzeige

Haben wir etwas übersehen?

E-Mail an news@golem.de


Test LG L40: Android 4.4.2 macht müde Smartphones munter
Test LG L40
Android 4.4.2 macht müde Smartphones munter

Mit dem L40 präsentiert LG eines der ersten Smartphones mit der aktuellen Android-Version 4.4.2, das unter 100 Euro kostet. Dank der Optimierungen von Kitkat überrascht die Leistung des kleinen Gerätes - und es dürfte nicht nur für Einsteiger interessant sein.

  1. LG G3 5,5-Zoll-Smartphone mit 1440p-Display und Kitkat
  2. LG L35 Smartphone mit Android 4.4 für 80 Euro
  3. Programmierbare LED-Lampe LG kündigt Alternative zur Philips Hue an

Vorratsdatenspeicherung: Totgesagte speichern länger
Vorratsdatenspeicherung
Totgesagte speichern länger

Die Interpretationen des EuGH-Urteils zur Vorratsdatenspeicherung gehen weit auseinander. Für einen endgültigen Abgesang auf die anlasslose Speicherung von Kommunikationsdaten ist es aber noch zu früh.

  1. Bundesregierung Vorerst kein neues Gesetz zur Vorratsdatenspeicherung
  2. Innenministertreffen Keine schnelle Neuregelung zur Vorratsdatenspeicherung
  3. Urteil zu Vorratsdatenspeicherung Regierung uneins über neues Gesetz

Windows 8.1 Update 1 im Test: Ein lohnenswertes Miniupdate
Windows 8.1 Update 1 im Test
Ein lohnenswertes Miniupdate

Microsoft geht wieder einen Schritt zurück in die Zukunft. Mit dem Update 1 baut der Konzern erneut Funktionen ein, die vor allem für Mausschubser gedacht sind. Wir haben uns das Miniupdate für Windows 8.1 pünktlich zur Veröffentlichung angesehen.

  1. Microsoft Installationsprobleme beim Windows 8.1 Update 1
  2. Windows 8.1 Update 1 Wieder mehr minimieren und schließen
  3. Microsoft Windows 8.1 Update 1 vorab verfügbar

  1. Verband: "Uber-Verbot ruiniert Ruf der Startup-Stadt Berlin"
    Verband
    "Uber-Verbot ruiniert Ruf der Startup-Stadt Berlin"

    Eine einstweilige Verfügung gegen Uber und zuvor ein Gesetz über das Verbot der Zweckentfremdung von Wohnraum, dass 9flats aus der Stadt vertrieb. Der Startup-Verband fragt: "Wer gründet schon ein Unternehmen in Berlin, wenn er mit Verbot rechnen muss?"

  2. Kabel Deutschland: 2.000 Haushalte zwei Tage von Kabelschaden betroffen
    Kabel Deutschland
    2.000 Haushalte zwei Tage von Kabelschaden betroffen

    Durch einen Kabelschaden waren zweitausend Haushalte vom Netz von Kabel Deutschland getrennt. Über der Schadensstelle hatte ein parkender Wagen die Arbeiten behindert.

  3. Cridex-Trojaner: Hamburger Senat bestätigt großen Schaden durch Malware
    Cridex-Trojaner
    Hamburger Senat bestätigt großen Schaden durch Malware

    Hundertfünfzig Rechner in der Hamburger Verwaltung sind im Januar 2014 tagelang durch den Cridex-Trojaner lahmgelegt worden. Das hat der Senat bestätigt. Der Trojaner installiert auch einen Keylogger, doch einen Datenverlust hat es angeblich nicht gegeben.


  1. 20:20

  2. 19:26

  3. 19:02

  4. 17:52

  5. 17:10

  6. 17:02

  7. 17:00

  8. 16:22