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

DoctorEarlyn

Frischling

  • »DoctorEarlyn« ist der Autor dieses Themas

Beiträge: 15

Beruf: Schüler

  • Private Nachricht senden

1

25.06.2012, 16:49

Frage zum Kommentieren

Hallo zusammen

Blöde Frage: Soll ich meine Kommentare in Englisch schreiben oder "darf" man diese auch in Deutsch verfassen?
Grundsätzlich schreibe ich die Programme ja schon in Englisch, aber die Kommentare habe ich in Deutsch geschrieben.

Bin dankbar um jede Antwort.

Mfg DoctorEarlyn
Achtung: Kreative Signatur

Nox

Supermoderator

Beiträge: 5 272

Beruf: Student

  • Private Nachricht senden

2

25.06.2012, 16:50

Für wen sind denn die Kommentar bzw. der Quelltext bestimmt?
PRO Lernkurs "Wie benutze ich eine Doku richtig"!
CONTRA lasst mal die anderen machen!
networklibbenc - Netzwerklibs im Vergleich | syncsys - Netzwerk lib (MMO-ready) | Schleichfahrt Remake | Firegalaxy | Sammelsurium rund um FPGA&Co.

Zendee

unregistriert

3

25.06.2012, 18:29

Du kannst sie aber auch in Klingonisch schreiben ;-)

Es ist dir frei überlassen in welcher Sprache du die Kommentare schreibst. Für das Programm ist das nicht relevant. Ich habe mir aber angewöhnt die Kommentare in Englisch zu verfassen. Keine Ahnung wieso, da sonst keiner den Quellcode bekommt, aber es ist doch passender (da ja die Syntax auch in Englisch ist).

Stellst du den Quellcode aber der Community (Open Source) zur verfügung, ist Englisch die Sprache die man wählen sollte.

Ach ja, man muss nicht alles kommentieren ;-)

C-/C++-Quelltext

1
cout << "Hello World" << endl; //Gibt den Text Hallo World in der Konsole aus

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

4

25.06.2012, 19:20

Warum Kommentare für die Community englisch sein sollen ist mir auch nicht klar. Das kommt ja auch die Community an. Man sollte es wie mit der Variabelbenennung halten. Wenn du allein arbeitest, mach es so wie du es selbst am besten verstehst. Wenn du zwischendurch Wörter nachschlagen musst bist du dir hinterher möglicherweise nicht mehr sicher was du sagen wolltest. Wenn du gut mit Deutsch klar kommst, spricht ja eigentlich nichts dagegen. Klar sieht es nicht cool aus wenn Klasse deutsche Namen haben oder der Code eher deutsch gehalten ist, aber wenn der Entwickler es so besser und schneller verstehen kann, ist alles gut. Sobald mehrere Leute mit am Projekt arbeiten muss/sollte man sich zusammen überlegen wie man das Problem angeht. Solange alle Deutsch sind, spricht für mich nie was dagegen sowas auf Deutsch zu schreiben. Sobald auch nicht Deutsche daran beteiligt sind macht englisch dann schnell mehr Sinn.
Ich geh aber davon aus dass du nur für dich entwickelst und auch allein entwickelst, und von daher mach es so wie es dir leichter fällt.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

DoctorEarlyn

Frischling

  • »DoctorEarlyn« ist der Autor dieses Themas

Beiträge: 15

Beruf: Schüler

  • Private Nachricht senden

5

25.06.2012, 19:36

Danke für die schnellen Antworten.

@Nox: Eigentlich für mich selbst. Kann sich aber auch ändern. Hab da so ein Projekt, das ich mit einem Kollegen anfangen will.

@Zendee: Danke erstmals. Klingonisch wäre eine Option, aber ich Persöhnlich würde eher auf Nordkoreanisch zurückgreifen. ;)
Also mein "Hello World Programm" hatte ich nicht kommentiert...nachvollziehbar denke ich.

@Schorsch: Auch dir erstmals ein Dankeschön. Ich werde das wahrscheinlich so in der Zukunft Handhaben.

Mfg Earlyn
Achtung: Kreative Signatur

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

6

25.06.2012, 20:02

Zitat

Man sollte es wie mit der Variabelbenennung halten. [...] Klar sieht es nicht cool aus wenn Klasse deutsche Namen haben oder der Code eher deutsch gehalten ist

Ich würde sagen das ist nicht der Punkt, weshalb man zumindest Code in Englisch schreibt.
Der Unterschied vom Code zum Kommentar ist einfach, dass du Kommentare später übersetzen kannst, wenn es erforderlich sein sollte.
Mit dem Code geht es nicht so einfach, denn auf den wird von anderswo zugegriffen oder es gibt sogar eine Dokumentation die man von Grund auf überarbeiten müsste.

Außerdem finde ich es generell ätzend, wenn Englisch und Deutsch zusammengewürfelt wird.
Dann kommt gerne sowas raus:
object Ergebnis = (object)(this.Objekte).ZurückInvoke();
return (IResult)Ergebnis;


Ich schreibe meinen Code immer 100% englisch. Und nur wenn es unbedingt notwendig ist, die Kommentare ebenso.
Den Code verstehe ich auch so sehr gut. (Es kommt auch zu 95% nur Programmiersprachenvokabular vor)

Zitat

Ach ja, man muss nicht alles kommentieren ;-)

Das ist in der Regel eher nicht das Problem, denke ich.
Ich habe bei mir noch so ein paar Programmierjuwelen rumliegen mit mehreren zehntausend Zeilen Code, aber mit nur wenigen dutzend Kommentarzeilen. :rolleyes:
(Wobei es sich bei diese Kommentarzeilen um auskommentierten Code handelt...)

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Spiele Programmierer« (25.06.2012, 20:09)


NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

7

25.06.2012, 20:11

Ich schreibe den Code komplett auf Englisch, dann gibts auch keine Probleme mit Umlauten usw.
Da mein Englisch zwar ausreicht um Fachbücher zu verstehen und (meistens) um aussagekräftige Bezeichner zu finden, aber nicht um komplexe Zusammenhänge zu erklären kommentiere ich auf deutsch. Sollte eine Übersetzung mal nötig sein werde ich wohl übersetzen (lassen) müssen.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

8

25.06.2012, 21:50

Code-Kommentare (nicht zu verwechseln mit API-Doku) sind Deodorant für schlechten Code. Guter Code ist selbst-beschreibend und bedarf keiner Kommentare. Wenn es welcher bedarf, ist das ein Zeichen dafür, dass der Code müffelt - dann ist er zu lang, zu komplex, zu schlecht gekapselt oder die Variablen/Methoden schlecht benannt.
API-Dokumentation oder Kommentare an wirklich notwendigen Stellen (in der Tat ist eben nicht jeder Algorithmus sofort ersichtlich, auch wenn er nur 5 Zeilen lang ist, ist seine Notwendigkeit aus dem Kontext heraus manchmal eben nicht ersichtlich) sollte man in der Sprache schreiben, die man selbst mindestens "gut" kann und die die maximale Anzahl an Lesern des Codes umfasst. Im Beruf wird dies meist deutsch oder englisch sein. Privat wohl eher deutsch. Ich persönlich schreibe immer alles in englisch, weil ich es fließend spreche und schreibe.
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]

Beiträge: 1 223

Wohnort: Deutschland Bayern

Beruf: Schüler

  • Private Nachricht senden

9

25.06.2012, 22:00

Zitat

Guter Code ist selbstbeschreibend und bedarf keiner Kommentare.

Prinzipiell ist das schon richtig.
Aber dieses betonte "keiner" will ich mal überhört haben.

Mit Kommentaren kann der Code gegliedert werden.
Oder wenn ich zb- eine rückläufige Schleife einbaue. Ich werde in einen Jahr sicher nicht mehr wissen weshalb.
Zb. Bitoperationen können auch ohne gute Kommentierung auch ganz schrecklich undurchsichtig sein.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

10

25.06.2012, 22:21

Der Kommentar was angesichts meines zweiten Absatzes wohl überflüssig, nicht? ;)
Dennoch klingt eine "rückläufige Schleife" sehr trivial. Wenn ihr innerer Code zu lang ist, dann ist da auch mit Kommentar nur Deodorant am Werk, eine Korrektur wäre eine Aufteilung in weitere Funktionen/Methoden. Wie war die Daumenregel noch? Eine Methode mit mehr als 10 Zeilen ist zu lang? Auch ich halte mich da wohl eher selten dran, aber wenn man z.B. Sonar-Analysen machen lässt und Regeln (z.B. zyklomatische Komplexität maximal 10, maximal 25 Zeilen, anonyme Klassen und Lambda-Expressions maximal 20 Zeilen) dazu einpflegt, wie wir das auf der Arbeit machen, dann stellt man schon fest, dass kurze Methoden irgendwie sehr schön wartbar und übersichtlich sind. Nachteil ist die plötzlich explodierende Anzahl Methoden einer Klasse. Da heißt es dann eigenständige Funktionalitäten besser kapseln.

Bitoperationen ... ich weiß nicht, ob da mit Kommentar noch was zu retten ist. Ich denke da z.B. an Verschlüsselungs-Runden mit Shifts, Rotationen und XOR-Operationen. Da wird auch mit Kommentar nichts mehr besser, die Operation ist halt im Kern komplex. Beziehungsweise die Idee hinter der eigentlich ja simplen Operation.

Als Daumenregel würde ich es trotz all dieser Ausnahmen genau so stehen lassen: "Guter Code ist selbstbeschreibend und bedarf keiner Kommentare."
Baut man in den Satz Ausnahmen ein, dann ist bald alles nur noch eine einzige Ausnahme. Lieber nicht... ;)
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