Jul7Foto Holger Dietz

Code Guidelines - das Gütesiegel für professionelle Programmierung

verfasst von am 7-Jul-09, 15:47:00 - 0 Kommentare
Kategorie: Entwicklung

Was durch ISO-Normen und TÜV-Zertifizierungen in vielen Branchen seit Jahrzehnten als Standard gilt, ist in den meisten Software-Projekten immer noch die absolute Ausnahme: ein Qualitätsstandard für die Architektur und der Code-Bauteile der Lösung.

Die meisten Software-Projekte weisen frappierende Mängel auf:

  • Viele Bausteine werden neu entwickelt, obwohl bereits entsprechende Funktionen in den Frameworks enthalten sind
  • Jeder Entwickler nutzt seinen eigenen Code
  • Ein Qualitäts-Review findet nicht statt
  • Grundlegende Schnittstellen für Fehlerbehandlung, Debugging und Logging werden nicht durchgänging implementiert
  • Eine Dokumentation des Codes ist nur spärlich vorhanden

Die Liste ließe sich noch weiter fortsetzen - mit unüberschaubaren Risiken für den Auftraggeber!

 image

Daher setzt die HanseVision auf durchgängige Code-Guidelines, die den Umgang mit Erweiterungen für all unsere Entwickler festschreiben. Die Einhaltung der Guidelines wird über den Microsoft Team Foundation Server überwacht - werden Regeln bei der Programmierung nicht berücksichtigt, ist kein Einchecken des Codes möglich.

Durch regelmäßige Workshops mit dem Microsoft Premier Support for Developers (PSfD) wissen unsere Entwickler genau, welche Bausteine und Funktionen aus den Frameworks und von SharePoint zu nutzen sind, bevor sie eigenen Code schreiben.

Anbei ein Auszug aus dem Inhaltsverzeichnis der Guidelines:

Versionshistorie. 4
Class Library Design. 5
Entwurfsrichtlinien zum Entwickeln von Klassenbibliotheken. 5
Richtlinien für Namen. 5
Konventionen für die Groß-/Kleinschreibung. 5
Allgemeine Benennungskonventionen. 7
Namen von Assemblys und DLLs. 8
Namen von Namespaces. 8
Namen von Klassen, Strukturen und Schnittstellen. 9
Namen von Typmembern. 11
Parameternamen. 11
Namen von Ressourcen. 11
Library Architecture. 12
Richtlinien für den Entwurf von Typen. 12
Typen und Namespaces. 12
Auswählen zwischen Klassen und Strukturen. 12
Auswählen zwischen Klassen und Schnittstellen. 12
Entwurf abstrakter Klassen. 13
Entwurf statischer Klassen. 13
Schnittstellenentwurf 13
Strukturentwurf 13
Enumerationsentwurf 14
Geschachtelte Typen. 14
Entwurfsrichtlinien für Member 15
Überladen von Membern. 15
Explizites Implementieren von Schnittstellenmembern. 16
Auswählen zwischen Eigenschaften und Methoden. 16
Eigenschaftenentwurf 17
Konstruktorentwurf 17
Ereignisentwurf 17
Feldentwurf 18
Operatorüberladungen. 19
Konvertierungsoperatoren. 21
Parameterentwurf 21
Entwerfen für Erweiterbarkeit 22
Usage. 24
Richtlinien für die Verwendung von Arrays. 24
Richtlinien für die Verwendung von Attributen. 26
Verwenden von Timeouts. 27
Specific Development Tasks. 28
Entwurfsrichtlinien für Ausnahmen. 28
Auslösen von Ausnahmen. 28
Ausnahmebehandlung. 29
Abfangen und Auslösen von Standardausnahmetypen. 30
Entwerfen von benutzerdefinierten Ausnahmen. 31
Ausnahmen und Leistung. 31


[zurück]
 

Es gibt 0 Kommentare zum Thema


    Kommentar abgeben:

    Name:
    URL:
    E-Mail:
    Kommentar:
    Validierung: Bitte geben Sie die sechs Ziffern ein.