Ein zentraler Punkt in diesem Zusammenhang ist die Strukturierung des Codes in Klassen und Pakete, die das Problem abbilden (Design-Pattern). Darüber hinaus ist es sinnvoll, nach Möglichkeit die Algorithmen und Datenstrukturen aus der Klassenbibliothek zu verwenden, da deren Funktionsweise bekannt, dokumentiert und getestet ist.
In den Klassen ist zur Gewährleistung der Lesbarkeit auf eine sinnvolle Aufteilung des Codes in Methoden zu achten. Die Sichtbarkeit (public, private, …) von Attributen und Methoden schafft Übersichtlichkeit.
Außerdem ist es sehr wichtig, passende Namen für Pakete, Klassen, Methoden und Variablen zu wählen.
Bei der Erstellung von Code gilt es Konventionen einzuhalten. In Java beginnen Methodennamen mit einem Kleinbuchstaben, Klassennamen mit einem Großbuchstaben, … . Weiters sind bei Methodennamen gewisse Präfixe konventionell: getX, setX, isX, …
Dokumentationen (javadoc) und Kommentare an den richtigen Stellen können zur Verständlichkeit des Codes beitragen.