|  | 
 GeheimnisprinzipBeispiel: DatumVersion 1: Implementierung der KlasseDate. Intern wird das Datum durch 3 Ganzzahlen für Tag,
Monat und Jahr repräsentiert.
Version 2: Alternative Implementierung der Klasse
Date. Intern wird das Datum durch eine Zeichenkette
repräsentiert. Beachte: Die Klasse hat die gleichen
Schnittstellen wie Version 1, drum kann sie exakt gleich verwendet werden! Dokumentation mit JavadocBeispiel: DatumVersion 1 (inkl. Doku): obige KlasseDatemit vollständiger Dokumentation. Beachte:
Trennung zwischen Schnittstellendokumentation und
Implementierungskommentaren:
  Schnittstellendokumentation
  Dokumentiert das WAS: Alle Informationen zur Benutzung
      der Klasse:
      
	Klassendokumentation
	wofür ist die Klasse, welches ist die
	    grundlegende Idee dazu, Hintergrundinformationen zum Verstehen
	    ihres Zwecks und ihrer Funktionsweise
	Methodendokumentation (für non-privateMethoden)allgemein: was macht die Methode, konkret: Parameter
	    erläutern, erlaubte Werte, Rückgabewert erläutern,
	    mögliche Werte, Ausnahmen erläutern
	Attributdokumentation (für non-privateAttribute)allgemein: was repräsentiert das Attribut, welche Werte darf
	    es haben; beachte: Attribute sollten gewöhnlich
	    privatesein; Ausnahme: Konstanten sind oftpublicImplementierungskommentare
  Dokumentiert das WIE: Erläuterungen zu
      Implementierungsdetails, einzelnen Anweisungen; zum Verständnis
      der Klasseninterna; auch:
      
	Methodendokumentation (für privateMethoden)genauso wie oben für non-private; aber: nicht
	    für das Verständnis von Klassenbenutzern
	    gedacht, sondern für Leute, die die Interna
	    warten/verändernAttibutdokumenation (für privateAttribute)<entsprechend>
       
Version 2 (inkl. Doku): obige Klasse mit
vollständiger Dokumentation. Beachte: Die
Schnittstellendokumentation ist identisch zu Version 1; nur die
Implementierungskommentare sind unterschiedlich!
     |  |