Wirtschaftsinformatik (Bachelor-Studiengang): Programmierung (1. Semester)
Sie sind hier: Startseite › Wirtschaftsinformatik › Programmierung Java (Kurs 1): Kommentare, Bezeichner
HB / CM, Kurs vom 01.04.2002 - 30.09.2002
Kommentare
Wozu dienen Kommentare?
Kommentare sollen dem Leser das Verstehen des Programmes erleichtern. Programme werden in der Praxis ständig verändert, weil Anforderungen sich verändern (z.B. zusätzliche Leistungen, Fehlerbeseitigung, wegen organisatorischen Änderungen der Institution, Änderungen der Hardware).
Programmierregel: Jedes Programm ist sinnvoll zu kommentieren!
Woran dürfen Kommentare eingefügt werden?
Überall dort, wo ansonsten ein Leerzeichen (White Space) stehen könnte.
Ausnahme: Dies gilt nicht für Leerzeichen in Zeichenketten oder Zeichenkonstanten.
Woran erkennt der Compiler Kommentare?
Es gibt drei Arten von Kommentaren:
//
: alles bis zum Zeilenende/* ... */
: alles was zwischen dem Kommentaranfangs- und Kommentarendzeichen steht/** ... */
: Dies ist ein sog. Dokumentationskommentar (vonjava.doc
)
Der Compiler ignoriert die Kommentare und ersetzt das Kommentar durch ein Leerzeichen.
In Kommentaren sind alle Zeichen zulässig.
Hinweis: Kommentare können nicht geschachtelt werden!
Was soll kommentiert werden?
Dies wird in der Regel durch Programmierrichtlinien festgelegt. Für Java gibt es die sog. "Java-Code-Conventions", die in dieser Vorlesung für unsere Zwecke adaptiert werden.
Programmierregel:
- Jede Java-Datei beginnt mit einem Kommentar
folgender Gestalt:
/* Klasse: (Name), Freizeile, Autorin: (Vor-, Nachname), Enter, Datum (tt.mm.jjjj) */
- Bei jeder
import
-Anweisung ist anzugeben, warum sie benötigt wird. Dabei sind alle Gründe anzugeben. - Vor jeder Klasse ist ein Kommentar folgender
Gestalt einzufügen
/** Text, der den Zweck und ggf. die Besonderheiten der Klasse beschreibt */
Wie sind Kommentare inhaltlich zu gestalten?
So, dass sie ein anderer auch nach Jahren verstehen
kann.
Nicht: Dinge, die aus dem Code (Text) ersichtlich sind
(z.B.
x++; // erhöhe um 1
).
Nur Dinge, die nicht unmittelbar klar sind kommentieren.
Wenn viele oder/und komplizierte Kommentare nötig sind, um Dinge zu erklären, ist das häufig ein Indiz für ein schlechtes Programm.
Wenn das Programm geändert wird, sind auch die Kommentare anzupassen!
Kommentare dürfen dem Programmcode nicht widersprechen.
Hinweis: Gute Kommentierung ist schwierig!
Bezeichner
Bezeichner dienen dazu, Dinge (Klassen, Objekte, Attribute, Variablen, Label) auseinanderzuhalten.
Jeder Bezeichner muss mit einem Buchstaben anfangen. Danach können Buchstaben und Ziffern folgen (Groß-/Kleinschreibung beachten!).
Was ist ein Buchstabe?
Java benutzt den Unicode-Zeichensatz. Dazu gehören Buchstaben aus allen möglichen Sprachen (Schwedisch, Hebräisch, Polnisch, Deutsch). Auch der Unterstrich und das Dollarzeichen sind dann Buchstaben.
Bezeichner können beliebig lang sein.
Gute Programmierung: Bezeichner sollten so gewählt werden, dass sie selbsterklärend sind. Zu kurze Bezeichner erschweren die Lesbarkeit, zu lange Bezeichner sind unpraktisch, weil man viel schreiben muss und schnell über den Blattrand hinauskommt (beim Drucken).
In Java gibt es einige Konventionen, die unbedingt einzuhalten sind:
- Namen von Klassen, Interfaces beginnen immer mit einem Großbuchstaben.
- Namen von Attributen, Variablen und Methoden fangen immer mit einem Kleinbuchstaben an.
- Lange Bezeichner werden in Java durch Groß- und
Kleinschreibung strukturiert.
Beispiel:HalloMain (Klasse)
maxWert, minWert (Variablen)
diesIstEinSehrLangerName
Nicht:dies_ist_ein_sehr_langer_name
(In Java nicht üblich!) - Bezeichner müssen verschieden sein von den sog.
Schlüsselwörtern der Sprache Java.
Empfehlung hier: deutschsprachige Bezeichner wählen. - Bezeichner müssen verschieden sein von
true
,false
undnull
(vordefinierte Konstanten)
Schlüsselwörter:
abstract, boolean, break, byte, case,
catch, char, class, const, continue, default, do, double, else,
extends, final, finally, float, for, goto, if, implements, import,
indtanceof, int, interface, long, native, new, package, private,
protected, public, return, short, static, strictfp, super,
switch, synchronised, this, throw, throws, transient, try,
void, volatile, while