Programmierweise
Ich programmiere schon seit ich 12 Jahre alt bin. Dabei hat sich im Laufe der Zeit folgende Vorgehensweise bewährt:
- nicht zu überstürzt beginnen – besser vorher Zeit investieren und zusammenschreiben, wie ich mir den Ablauf des Programms vorstelle: Welche Situationen gibt es und wie soll das Programm darauf reagieren? Für mich selber schreibe ich natürlich nicht so eine ausführliche Spezifikation wie sie ein unbeteiligter Programmierer bräuchte. Ich brauche auch nicht zu warten, bis die Spezifikation endgültig fertig ist.
- das Rad nicht neu erfinden
- z. B. keine eigene Datenbank programmieren
- Andererseits sind verfügbare Standardkomponenten manchmal schwer an bestimmte Wünsche anzupassen.
- schauen, wie andere arbeiten und was es bereits gibt
- keine neuen Standards erfinden – kein eigenes HTML, keine anderen als die ISO-
Länderkürzel verwenden usw.
Wenn es dann wirklich an's Programmieren geht:
- Programmierstil mit festgelegten Grundsätzen und Konventionen, an die ich mich halte, weil sie sich als sinnvoll erwiesen haben – wobei im Einzelfall natürlich Abweichungen möglich sind, wenn sie gut begründet sind (kein sklavisches Einhalten von Regeln)
- in kleinen Schritten programmieren und testen – Ganz wichtig! Später sind Fehler erst einmal einzugrenzen, d. h. nicht mehr so leicht lokalisierbar.
- ausgiebig testen
- Je größer das Programm ist und je länger es in Verwendung sein wird sowie je weniger es unter meiner direkten Kontrolle ausgeführt wird, desto robuster mache ich es gegenüber unvorhergesehenen Fehlersituationen.
- nicht mehr einschränkende Annahmen als nötig – z. B. nicht als "kleine Ganzzahl" definieren, wenn auch eine "große" möglich ist
Faustregeln
- Einfache Programme werden später um immer mehr Funktionen erweitert. Das kann dafür sprechen, gleich die "nächstgrößere" Problemlösung zu nehmen (z. B. SQL-
Datenbank, obwohl zunächst auch noch einfache Textdateien ausreichen würden). - Der Programmieraufwand schaut zu Beginn kleiner aus, als er ist.
- Alles, was schiefgehen kann, wird früher oder später auch schiefgehen. (Murphys Gesetz)
- Je mehr Leute an einem Programm schreiben, desto größer wird der Aufwand. Im Extremfall wird das Programm sogar später fertig, wenn mehr Leute zugleich daran arbeiten. (Brooksches Gesetz)