Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Beuth Hochschule Jakob Schillinger Programmierstil Objektorientierte Programmierung MPM M13.

Ähnliche Präsentationen


Präsentation zum Thema: "Beuth Hochschule Jakob Schillinger Programmierstil Objektorientierte Programmierung MPM M13."—  Präsentation transkript:

1 Beuth Hochschule Jakob Schillinger Programmierstil Objektorientierte Programmierung MPM M13

2 Jakob Schillinger Grundlagen If builders built buildings the way programmers write programs, then the first woodpecker that came along would destroy civilization. ~ Gerald Weinberg XX-ST-2

3 Jakob Schillinger TIPPS FÜR JEDEN PROGRAMMIERER Programmierstil XX-ST-3

4 Jakob Schillinger Übersichtlichkeit XX-ST-4 Problem: Andere Programmierer wollen Änderungen im Quelltext so schnell und einfach wie möglich umsetzen! Übersichtlichkeit des Quelltextes reduzieren. Funktionen mit mehreren Zwecken! So lange Codeabschnitte wie möglich!

5 Jakob Schillinger Namenskonventionen XX-ST-5 So viele Abkürzungen wie möglich. Jeder vernünftige Programmierer hat einen angeborenen Instinkt, was die Abkürzung CAPIAT heißt! Verwenden Sie Zahlen und Buchstaben als Variablen. In der Kürze liegt die Würze! Verwenden Sie sehr lange, zusammengesetzte Namen für Variablen. Unterschiedliche Variablen sollten sich um einzelne Zeichen unterscheiden!

6 Jakob Schillinger Programmfluss XX-ST-6 Jede Funktion sollte etwas mehr oder weniger tun als ihr Name verspricht. Goto erleichtert den Sprung zwischen Programmteilen. Verwenden Sie Copy&Paste so viel wie möglich. Greifen Sie möglichst häufig auf Inhalte anderer Objekte zu. Dies verkürzt den Aufbau der Zielfunktion. Die Verwendung von Ausnahmebehandlungen macht Lücken im Code sichtbar. Vermeiden Sie das! Löschen Sie nie!!! ungenutzten Code aus dem Programm. Man kann nicht wissen, wann man ihn noch mal braucht. Alle Variablen und Funktionen werden öffentlich deklariert. Dies minimiert den Aufwand beim Datenaustausch.

7 Jakob Schillinger Dokumentation XX-ST-7 Verhindern Sie, dass man erkennen kann auf welchen Softwarestand Sie sich beziehen! Wenn Sie ein Feature nicht umsetzen konnten, schreiben Sie trotzdem in die Doku, dass Sie es umgesetzt haben! Verwenden Sie Kommentare wie */1 zu i addieren/*, schwierigere Sachverhalte nicht kommentieren! Ein Kunde, der weiß was er tut, braucht keine Dokumentation!

8 Beuth Hochschule Jakob Schillinger Sauberer Programmierstil Programmierstil MPM M13

9 Jakob Schillinger Grundlagen Unter Programmierstil wird ein Satz von Regeln verstanden, denen sich ein Programmierer bei der Erstellung von Code unterwirft. Programmierstil dient der Kommunikation im Team und der schnellen Erfassbarkeit des Quelltextes. –Lesbarkeit –Verständlichkeit –Wartbarkeit XX-ST-9

10 Jakob Schillinger Programmierrichtlinien Große Softwareprojekte hängen maßgeblich von der Kommunikation im Projekt ab. Im Projekt werden deswegen oft Regeln als Richtlinien vorab aufgestellt. Aus Richtlinien können Stereotypen und Entwurfsmuster abgeleitet werden. XX-ST-10

11 Jakob Schillinger Kommentare Abwesenheit von Kommentaren ist schlechter Programmierstil! Kommentare erhöhen die Lesbarkeit für Andere! Kommentare verwenden: –Kopf einer Datei –Übergabewerte einer Funktion –Beschreiben einer Funktion –Beschreiben von Attributen XX-ST-11

12 Jakob Schillinger Einrückstil Verschachtelung von Codeelementen. Positionierung von Syntaxelementen. Einsatz von Leerzeichen und Leerzeilen. XX-ST-12

13 Jakob Schillinger Namenskonventionen Der Name einer Variable weist auf ihren Zweck hin oder deutet ihn zumindest an. Namen werden nach Notationen, z.B. der ungarischen Notation vergeben. Eine Variable wird für einen Zweck und nicht für mehrere verwendet. Variablenrecycling vermeiden. XX-ST-13

14 Jakob Schillinger Zeilenlänge Kurze Zeilenlänge fördert die Menschenlesbarkeit und Vergleichbarkeit durch Textprogramme. Beschränkung der Zeilenlänge ist manueller Aufwand. Generell gilt, nicht mehr als eine Anweisung pro Zeile. XX-ST-14

15 Jakob Schillinger Programmfluß Keine Sprünge zwischen Programmteilen, z.B. mit GoTo, verwenden. Unkontrollierten Zugriff auf globale Variablen durch definierte Schnittstellen zwischen Funktionen ersetzen. XX-ST-15

16 Jakob Schillinger Objektorientierte Programmierung Anwendung der objektorientierten Programmierung kapselt Funktionen und somit die Fehleranfälligkeit. Bauweise im Model erhöht die Wieder- verwendbarkeit und Unabhängigkeit. Vererbung erhöht die Übersichtlichkeit im Projekt. XX-ST-16

17 Jakob Schillinger Robustheit Fehlerbehandlung durch expliziten Aufruf aller möglichen Werte. Ausnahmebehandlung durch Meldung von Ausnahmewerten. XX-ST-17

18 Jakob Schillinger Verhältnismäßigkeit Sauberer Programmierstil soll ein Hilfsmittel sein, keine zusätzliche Hürde. XX-ST-18

19 Beuth Hochschule Jakob Schillinger Ungarische Notation Programmierstil MPM M13

20 Jakob Schillinger Grundlagen Die ungarische Notation ist eine Richtlinie zur Benennung von Codeelementen. In der Notation werden sprechende Variablennamen verwendet und um Präfixe und Modifikatoren erweitert. XX-ST-20

21 Jakob Schillinger Präfix BedeutungBeispiel bbooleanbool bHasEffect; c (or none*)classCreature cMonster; chchar (used as a char)char chLetterGrade; ddouble, long doubledouble dPi; ffloatfloat fPercent; n short, int, long char used as an integer int nValue; sstructRectangle sRect; strC++ stringstd::string strName; XX-ST-21

22 Jakob Schillinger Modifikation nach Typ ModifikationBedeutungBeispiel aarray on stackint anValue[10]; ppointerint* pnValue; rreferenceint rnValue; Wenn anwendbar, werden die folgenden Modifikationen vor den Präfix gesetzt. XX-ST-22

23 Jakob Schillinger Präfixe der Sichtbarkeit PräfixBedeutungBeispiel g_global variableint g_nGlobalValue; m_member of classint m_nMemberValue; s_static member of classint s_nValue; Wenn anwendbar, werden die folgenden Präfixe vor die Modifikation gesetzt. XX-ST-23

24 Jakob Schillinger LITERATUR UND QUELLEN Guter Programmierstil XX-ST-24

25 Jakob Schillinger Literatur und Quellen ( )www.learncpp.com aint.pdfI ( )http://www.cs.purdue.edu/homes/jv/510s05/unm aint.pdfI Helmut Balzert, Lehrbuch der Software-Technik, Software-Entwicklung, , Spektrum Akad. Vlg Helmut Erlenkötter, C++: Objektorientiertes Programmieren von Anfang an, , rororo XX-ST-25


Herunterladen ppt "Beuth Hochschule Jakob Schillinger Programmierstil Objektorientierte Programmierung MPM M13."

Ähnliche Präsentationen


Google-Anzeigen