18
Style Guidelines für Java und .NET Klaus Lehner 9957635, [email protected] Seminar aus Softwareentwicklung: Programmierstil

Style Guidelines für Java und .NET

  • Upload
    nell

  • View
    58

  • Download
    0

Embed Size (px)

DESCRIPTION

Seminar aus Softwareentwicklung: Programmierstil. Style Guidelines für Java und .NET. Klaus Lehner 9957635, [email protected]. Übersicht. Was sind Guidelines? Wozu Guidelines? Allgemeine Formatierung Namenskonventionen Deklarationen Statements Verzweigungen & Schleifen Whitespaces - PowerPoint PPT Presentation

Citation preview

Page 1: Style Guidelines  für Java und .NET

Style Guidelines für Java und .NET

Klaus Lehner9957635, [email protected]

Seminar aus Softwareentwicklung: Programmierstil

Page 2: Style Guidelines  für Java und .NET

2 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Übersicht Was sind Guidelines? Wozu Guidelines? Allgemeine Formatierung Namenskonventionen Deklarationen Statements Verzweigungen & Schleifen Whitespaces Dokumentation CheckStyle Anwendung in der Praxis

Page 3: Style Guidelines  für Java und .NET

3 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Was sind Guidelines? Unverbindliche Richtlinien, wie Source

Code zu schreiben ist, an die man sich halten sollte.

Falls man sich an eine Regel nicht hält, soll man dies dokumentieren!

Page 4: Style Guidelines  für Java und .NET

4 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Wozu Guidelines? Immer mehr Geld fließt in die Wartung

von Source Code

Fast keine Software wird immer vom Programmierer selbst gewartet

Page 5: Style Guidelines  für Java und .NET

5 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Allgemeine Formatierungen

Keine Tabulatoren Keine Pagebreaks Zeilenlänge auf 80 Zeichen beschränken

Zeilenumbruch nach einem Komma

Zeilenumbruch nach einem Operator

Die neue Zeile an den Anfang des Ausdrucks ausrichten

Function1 (param1, param2, param3);

for (tableNo = 0; tableNo < maxTable; tableNo += tableStep)

totalSum = a + b + c + d + e;

Page 6: Style Guidelines  für Java und .NET

6 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Namenskonventionen (1) Syntaktische

Namenskonventionen Pascal CaseBackColor

Camel CasebackColor

UppercaseMAXLEN

Kein Case Sensitiv!!!

Java .NET

Packages / Namespaces

Camel Pascal

Klassen Pascal

InterfacesPascal

Pascal; Präfix I

Methoden Camel Pascal

Felder, Parameter

Camel

Property --- Pascal

Konstanten Uppercase Pascal

Page 7: Style Guidelines  für Java und .NET

7 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Namenskonventionen (2) Semantische Namenskonventionen

Englisch verwenden! Keine Abkürzungen Keine verneinten

bool‘schen Variablen

Iteratoren i, j, k, ...

Repräsentation einer Anzahl

nPoints, numberOfPoints

Initialisierungsmethoden InitializeFontSet()

Suchmethoden FindNext()

Berechnungsmethoden ComputeAverage()

bool isNotError;:if (!isNotError) ..

Page 8: Style Guidelines  für Java und .NET

8 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Namenskonventionen (3) JavaBeans-Konventionen get / set / is

public boolean isConnected() { return connected;}

public setName(String n) { this.name = n;}

public String getName() { return this.name;}

Page 9: Style Guidelines  für Java und .NET

9 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Deklarationen Klassen- und Methodendeklarationen

Nach jeder Methode 1 Zeile freilassen Variablendeklaration

Nur gleichartige Variablen in einer Zeile deklarieren

Immer am Anfang eines Blocks

Keine äußerliegenden Variablen überdecken

Class Foo { int var; void FooMeth() { int var; if (keypressed) { int var; : } // if } // FooMeth

} // Foo

Page 10: Style Guidelines  für Java und .NET

10 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Statements max. 1 Anweisung pro Zeile

Ausnahme: For-Schleife Zusammengehörende Statements

nacheinander schreiben

Bei Schleifen und Verzweigungen immer geschwungene Klammern verwenden

myObject.message1();myObject.message2();counter++;myObject.message3();

myObject.message1();myObject.message2();myObject.message3();

counter++;

Page 11: Style Guidelines  für Java und .NET

11 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Verzweigungenif (condition) {

statements;

}

if (condition) {

statements;

} else {

statements;

}

if (condition) {

statements;

} else if (condition) {

statements;

} else {

statements;

}

switch (value) {

case 1:

statements;

/* fall through */

case 2:

statements;

break;

case 3:

statements;

break;

default:

statement;

break;

}

Page 12: Style Guidelines  für Java und .NET

12 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Schleifen & try...catch

while (condition) {

statements;

}

try {

statements;

} catch (Exception e) {

statements;

}

try {

statements;

} catch (Exception e) {

statements

} finally {

statements;

}

for (initialization; condition; update) {

statements;

}

do {

statements;

} while (condition);

Page 13: Style Guidelines  für Java und .NET

13 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Abstände Leerzeichen zur besseren Lesbarkeit

einführen vor und nach Operatoren nach Kommas

counter=1;grandTotal=invoice.total()+getAmountDue();grandTotal=Discounter.discount(grandTotal,this);

counter = 1;grandTotal = invoice.total() + getAmountDue();grandTotal = Discounter.discount(grandTotal, this);

Page 14: Style Guidelines  für Java und .NET

14 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Dokumentation

„Goldene Regel“

Source Code, der es nicht wert ist, dokumentiert zu werden, ist es auch nicht wert, geschrieben zu werden.

Page 15: Style Guidelines  für Java und .NET

15 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Code Beautifier CheckStyle

Command Tool JBuilder Plugin „Compiler“, der nach Guideline-

Verletzungen sucht www.sourceforge.net

nach „checkstyle“ suchen

Page 16: Style Guidelines  für Java und .NET

16 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Praxisbeispiel VAI Linz Besprechung festgelegte

Regeln für alle jederzeit

zugänglich zusätzlicher

Einsatz vonCheckStyle

Page 17: Style Guidelines  für Java und .NET

17 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Zusammenfassung Die Richtlinien verstehen Eine Liste von Richtlinien auswählen An diese Richtlinien glauben Sie schon während der

Implementierung befolgen, nicht erst nachher

Den Style zu einem Teil der Qualität machen

Für Menschen, nicht Maschinen programmieren

Page 18: Style Guidelines  für Java und .NET

18 / 18

Seminar aus Softwareentwicklung: Programmierstil Style Guidelines für Java und .NET

Klaus Lehner, 9957635, [email protected]

Happy Coding ;-)