Wer die Weisheit sucht, ist ein Weiser.
Wer glaubt, sie gefunden zu haben, ist ein Narr.— Seneca
Mit dem Lösen einer Aufgabe ist man noch kein Programmierer. Auch wenn viele Buchtitel versprechen, dass es ganz einfach und ganz schnell zu erlernen sei. Es braucht Jahre intensiver Übung, bis man einen Grad der Meisterschaft erreicht. Gute Bücher, Artikel, Kolumnen von Fachzeitschriften, gut geschriebene Quellen von realen Programmen sollte man "aufsaugen". Dazu kommen gute Lehrmeister und Gleichgesinnte, die Denkanstösse geben und bei Fragen helfen. Programme entwerfen und schreiben ist Teamarbeit. Kommunikation und Dokumentation erfordern gemeinsame Sprachen. Für unterschiedliche Entwicklungsstadien gibt es unterschiedliche Schreibweisen. Erlerne also neben Deiner Programmiermuttersprache (als "C++ native speaker") auch Techniken des Software Engineering. Software Carpentry (engl.) gibt einen wesentlichen breiteren Überblick über den Software-Entwicklungsprozess und Grundtechniken. Pseudocode, Struktogramme, UML-Diagramme sind wichtige Entwurf- und Dokumentationswerkzeuge. Wie werden Erkenntnisse und Daten ausgetauscht? Wie sind Ergebnisse zu sichern? Wie werden Konflikte gelöst? Ein wichtiges Stichwort ist Versionskontrolle.
Lernen heißt auch, Erreichtes immer wieder in Frage zu stellen. Nur so ist Weiterentwicklung möglich. Absichtlich wurde ein funktionierendes Programm immer wieder zerpflückt und neu, anders zusammengesetzt. Der Umbau von Programmen (engl. refactoring) wird immer wieder einmal notwendig. Mit Bausteinen ist das einfacher.
Mit zunehmenden Fähigkeiten muss nicht mehr alles zerrissen werden. Bestimmte "Anfängerfehler" lassen sich vermeiden. Ein guter Entwurf ist die Voraussetzung dafür, dass ein Quelltext erfolgreich und zügig entstehen kann. Gute Programmierer beginnen damit, die Testroutinen zu bauen. Besteht das Programm alle notwendigen Tests, ist die Aufgabe erfüllt. Eine Garantie für das Gelingen eines Programms gibt es allerdings nicht.
Der bis hier gezeigte Weg kann nur einen Einblick vermitteln. Entscheide für Dich, ob die Sache Dich begeistert. Als Programmierer wird man nicht geboren, sondern man wird dazu gemacht.
Programmieren kann Spaß machen, es ist eine Quelle des Humors. Aber verfalle nicht in Euphorie. Gehe schrittweise vor, um Dir keinen Misserfolg zu organisieren. Es ist natürlich, ungeduldig zu sein. Arbeite Dich dennoch langsam vor. Übe Dich an einfachen Aufgaben. Baue einzelne Klassen. Bilde mehrere Objekte einer Klasse. Wie können diese zusammenarbeiten? Bilde mehrere Klassen und damit mehrere Objekte unterschiedlicher Typen. Erkunde die Möglichkeiten, die sich daraus ergeben. Erforsche, wie durch unterschiedliche Mittel der einen oder mehrerer Programmiersprachen dieselben Effekte erzielt werden können. Ebenso gibt es einzelne Sprachmittel, mit denen unterschiedliche Dinge erreicht werden können, je nachdem, wie man sie einsetzt.
Nicht alles muss man selbst erfinden. Es gibt für verschiedenste Zwecke schon gute Bibliotheken. Lerne sie zu nutzen.
Wichtige Sprachkonstrukte sind in diesem Überblick für Anfänger zusammengestellt.
Zurück zur Einleitung-Seite.