Programmierrichtlinien
Empfehlungen
Vorschläge
für Java
Dateianfang
- Anfangskommentar
- Klassenname
- Version
- Datum
- Autor
- Sonstiges
- Packages und Importe
- 1.
package
- 2.
import
- Hauptklasse
- evtl. Klassendokumetation
- Klassendeklarartion
- Klassenvariablen (
static
)
- Instanzvariablen
- Konstruktoren
- Methoden
- Kommentare
- vier Arten von Kommentaren:
- 1. Blockkommentar:
/*
* Kommentarbereich
*/
- insbesondere zur Klassen- und Methodendokumentation
- Jede public
-Methode/Variable muß mittels javadoc ausführlich kommentiert werden!
- 2. einzeiliger Kommentar:
/* hier steht der Kommentar */
- 3. Trailingkommentar: wie einzeiliger Kommentar, aber ohne Extrazeile
- 4. EndOfLine Kommentar:
//zum Ausklammern
- insbesondere beim Auskommentieren von Zeilen ganz links, da dort auffälliger und keine Strukturveränderung
- Positionierung bei Bedingungen so:
System.out.println("Meldung!");
//Vergleich der Abbruchbedingungen mit den fundamentalen Basisdaten auf Grundlage der errechneten Mittelwerte
if (nachts == dunkel && nachts == kalt) {
- oder so:
System.out.println("Meldung!");
if (nachts == dunkel && nachts == kalt) { //Vergleich der Abbruchbedingungen mit den fundamentalen Basisdaten auf Grundlage der errechneten Mittelwerte
- Klassen-/Interfacedeklarationen
- keine Leerzeichen zwischen Methodenname und Klammer:
methodeAufrufen();
- "{" am Ende der Zeile nach der Deklaration
- "}" unter das erste Zeichen der letzten Codezeile
public static void main(String[] args) {
int temp = 42;
...
System.out.println("Ende von main");
}
- Variablendeklarationen
- nur eine Deklaration pro Zeile
- keine zwei Typen in einer Zeile deklarieren
- Variableninitialisierungen
- lokale Variablen beim Deklarieren initialisieren z. B.:
for(int i = 0; i < 1881; i++)
- wenn übersichtlicher, dann alle anderen Variablen auch gleich initialisieren
- Statements
- nur ein Statement pro Zeile
nicht: a++; b++;
- Groß-/Kleinschreibung
- Packages: Kleinbuchstaben
- Klassen: mit Großbuchstaben am Anfang, keine Abkürzungen, 2. Wort auch mit Großbuchstabe:
class BierTrinker
- Interfaces: wie Klassen
- Methoden: erster Buchstabe klein, möglichst mit Verb am anfang:
trinkeSchnell(Bier x);
- Variablen: wie Methoden, kurz und aussagekräftig
- Hilfsvariablen aus einem Buchstaben; kein "
m_
" am Anfang von Klassenvariablen
- Konstanten: Großbuchstaben und Worttrennung durch "_":
final static int LETZTER_TERMIN = 220902
- Objekte: Kleinbuchstabe am Anfang und Klasse am Ende
- Einrücken
- jeweils 1 Tabulatorzeichen
- entspricht 4 Leerzeichen und darf nicht durch solche ersetzen werden
- Linien, überlange Zeilen
- Zeilenumbruch nach spätestens 80 Zeichen
- in der nächsten Zeile einrücken
- zwei Leerzeilen
- zwischen inhaltlich getrennten Teilen z.B. inneren Klassen
- eine Leerzeile
- zwischen einzelnen Methoden
- zwischen lokalen Variablen und erstem Statement
- vor Blockkommentar oder einzeiligem Kommentar
- zwischen logischen Teilen
- Leerzeichen
- nach Kommata
- zwischen binären Operatoren:
a += c + d;
- nicht bei
a++, a--
und Punktoperator (A.methodeAnufrufen()
)
- in Bedingungsstatements für
for, if, while, ...
- bei Typumwandlungen:
(byte) Kontostand;
- Allgemeines
- nur eine Sprache bei allen Bezeichnern zumindest konsistent in den einzelnen Klassen/Dateien
- Code in Englisch - Kommentare in Deutsch
- keine Umlaute und Sonderzeichen
- lieber mehr Klammern als zu wenig:
if ((a == b) && (c == d)) {
- Wahrung des Geheimnisprinzips: Änderung von Attributen nur durch Methoden:
gibKoepfe(); setzeKoepfe(int i);
- Sichtbarkeit der Attribute/Methoden so weit als möglich einschränken.
- Zahlen und Werte am Anfang deklarieren und intialisieren, damit später nur an einer Stelle Änderungen nötig sind.
- Im Code selbst dürfen nur "
0
" und "1
" vorkommen, sonst nur Konstanten. Gleiches gilt für Strings.
- GUI-Programmierung unabhängig von der Bildschirmauflösung
- Bei allen Eingaben Fehler sinnvoll abfangen.
- Zugriffe auf System immer mit
try
und catch
abfangen. Minimum für catch
ist ein log4jLog.error(...);
- Bei
if then else
die Ja-Bedingungen hinter then
und else
-Zweig kommentieren.
- Rundungsfehler bei Fließkommazahlen beachten
Beispiele und mehr ausführliche Informationen bei Sun via:
http://java.sun.com/docs/codeconv
Letzte Änderung am 8. 5. 2002. © 2002