Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

10.07.2018, 20:29

Kommt sauberer Code ohne Kommentare aus?

Mod: Diese Diskussion wurde von hier abgespalten.

Wurde das Spiel denn so programmiert, dass ein fremder Programmierer den Code auf Anhieb versteht?
Wenn nicht, macht es für die meisten mehr Sinn, das Spiel selber nach zu programmieren.

Warum nicht einfach Open Source stellen? Dem Trailer nach zu urteilen kannst du eigentlich froh sein, wenn überhaupt jemand sich die Mühe macht, das Spiel weiterzuentwickeln. Schließlich muss derjenige von der Idee so sehr überzeugt sein, dass er seine eigenen Ideen nach hinten stellt.


Ja, der Code ist sauber und Kommentare sind auch vorhanden, sodass fremde Programmierer den Code verstehen sollten.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

2

11.07.2018, 06:20

Sauberer Code benötigt gar keine Kommentare.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

3

11.07.2018, 10:00

Sauberer Code benötigt gar keine Kommentare.

Wenn du viel optimierst, z.B. indem du Bitsets nutzt, brauchst du schon an einigen Stellen Kommentare. Oder für einige Funktionen, die Voraussetzungen (Vorbedingungen) haben, das sollte dann auch bei der Deklaration der Funktion stehen. Oder wenn Dinge wirklich kompliziert sind, helfen Kommentare, um es später besser zu verstehen.
Cube Universe
Entdecke fremde Welten auf deiner epischen Reise durchs Universum.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

4

11.07.2018, 14:23

Ich kann nur wiederholen, was ich gesagt habe. Guter Code braucht keine Kommentare (Stichwort Code-Smell). Ob Bitsets jetzt z.B. unbedingt notwendig sind und ob der Code, der mit ihnen hantiert, nun wirklich so schlecht sein sollte, dass er Kommentare benötigt, halte ich für höchst diskutabel. POITROAE wird viel zu oft ignoriert und irgendwelcher unverständlicher Unfug gebaut, obwohl nie geprofiled oder mal über die Struktur ("Funktion mit Vorbedingung" lässt grüßen) nachgedacht wurde.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

5

12.07.2018, 01:14

Wenn eine Funktion erfordert, dass keine Mutexe gehalten werden, dann ist das eben eine Vorbedingung. Das ist auch kein schlechtes Design, sondern anders nicht lösbar, wenn du das für Multithreading optimieren willst.

Durch Bitsets spare ich ungefähr 1 bis 120 GB RAM (je nach Sichtweite). Sollte ich wohl dringend ändern, ist ja schlechter Code, weil ich dafür Kommentare brauche.
Cube Universe
Entdecke fremde Welten auf deiner epischen Reise durchs Universum.

David Scherfgen

Administrator

Beiträge: 10 382

Wohnort: Hildesheim

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

6

12.07.2018, 08:43

Ich denke, dass „high level“ Kommentare durchaus ihre Daseinsberechtigung haben. Beispiele:
- Man erklärt in einem Kommentar, warum man gerade Algorithmus X benutzt, wenn es für dasselbe Problem auch Algorithmus Y und Z gibt (der Programmierer weiß etwas über den typischen Anwendungsfall und basiert darauf seine Entscheidung - das kann man nur durch Lesen des Codes nicht wissen).
- Man muss "komische" Third Party-APIs aufrufen, die ungewöhnlich in der Handhabung oder Namensgebung sind (z. B. ein Kommentar wie "Diese Funktion aus der Library ... heißt zwar ..., aber was sie tatsächlich tut ist ...").
- Man ordnet Daten in einer bestimmten Reihenfolge im Speicher an, die besonders Cache-freundlich ist.
- Wenn es eigentlich eine schönere Variante gäbe, etwas zu lösen, der anvisierte Compiler ein dafür notwendiges Feature aber noch nicht unterstützt.
Nur um ein paar Beispiele zu nennen.

dot

Supermoderator

Beiträge: 9 757

Wohnort: Graz

  • Private Nachricht senden

7

12.07.2018, 10:41

Sauberer Code benötigt gar keine Kommentare.

+1

Ich denke, dass „high level“ Kommentare durchaus ihre Daseinsberechtigung haben.

+1

Sollte ich wohl dringend ändern, ist ja schlechter Code, weil ich dafür Kommentare brauche.

Wieso brauchst du dafür Kommentare?

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

8

12.07.2018, 14:30

Ich denke, dass „high level“ Kommentare durchaus ihre Daseinsberechtigung haben
Ich denke dabei werden wir uns wohl auch alle einig.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

9

12.07.2018, 15:11

sowas hier? :D


(Link)

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

10

12.07.2018, 15:21

"sort - sort an array" - ORLY? Es wäre da sicherlich hilfreich zu wissen welcher Algorithmus dort verwendet wird oder welche Laufzeit- und Speicher-Komplexität er hat, ob er stabil ist!? Aber so ist der Kommentar reiner Code-Smell und Noise.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Werbeanzeige