Was ein Anfänger über das Programmieren wissen sollte


Programmieren zu lernen ist nicht sehr einfach. Zwar ist es schnell möglich Erfolge zu erreichen, doch zu einen wirklich guten Programmierer ist einiges mehr nötig als "Hello World" zu können. Wie überall ist auch beim Programmieren der Anfang am schwersten. Ich selbst habe mir das Programmieren aus Büchern per Selbststudium beigebracht und wage daher behauptet zu können dem Anfänger ein paar wichtige Tipps über die Materie beibringen zu können.

Die wichtigste Lektion, die ich selber lernen musste ist die, dass man nicht mehr als die Standardkonstrukte wissen brauch um programmieren zu können. Wer weiß was if, else, for, while und new machen und dazu noch weiß wie man eine Klasse oder Methode schreibt, der kann schon programmieren. Und das sogar in jeder Sprache (die funktionalen mal ausgenommen). Ich fing mit C++ an und machte den Fehler mir jedes Schlüsselwort einprägen zu wollen.  Ich versuchte dann die Standard-Bibliothek auswendig zu lernen und mir zu merken was beispielsweise includiert werden muss um ein Fenster malen zu können. Das ist alles kompletter Blödsinn und total unnötig. Wenn man in einem Lehrbuch ein Konstrukt findet welches man nicht versteht, so sollte man die Bedeutung begreifen, aber nicht versuchen es auswendig anwenden zu können. Heutzutage dauert es nur die Zeit eines Mausklicks um unzählige Forenbeiträge und Tutorials zu einem Konstrukt zu finden. Erst letzte Woche musste ich in einem PHP-Programm mehrere Zahlen, welche in Wörtern die wiederum in einem Feld gespeichert wurden ersetzen. Es gab so Wörter wie "Mein Urlaub1" aus denen jetzt beispielsweise die 1 entfernt werden musste. Wie durch das Feld iteriert wird wusste ich auswendig und bastelte ohne Probleme die foreach-Schleife. Wie man in PHP allerdings Zeichen ersetzt wusste ich nicht und googelte einfach nach "php char replace" und wurde sofort fündig und hatte das Problem gelöst.
Mein Tipp ist also, nicht alles auswendig zu lernen. Auch wenn in einem Lehrbuch lauter unbekannte Methoden aufgerufen werden müssen diese nicht nachprogrammiert werden können. Es genügt ihre Bedeutung zu kennen und das Beispiel zu verstehen.
Den nächsten Fehler den ich machte war es mir zu wenig Zeit für die Übungen zu nehmen. Ich lag mit dem Fachbuch in den Händen in einem gemütlichen Sessel und wollte mich eigentlich nicht an den PC sitzen nur um die Übungen zu machen. Das ist jedoch ein fataler Fehler. Mehr als das fünfmalige lesen eines Kapitels bringen die dazu gestellten Übungsaufgaben. Nur dadurch sammelt man Erfahrung. Es ist meiner Meinung nach dabei sogar völlig legitim im Internet nach Lösungen zu suchen. Dabei lernt man auch gleich unterschiedliche Herangehensweisen kennen. Das ist nämlich ein weiterer wichtiger Punkt. Man sollte immer dazulernen. Das geht besonders gut anhand fremden Codes. Ich habe schon unzählige male erstaunliche Lösungsansätze zu Problemen gefunden, die ich selbst weitaus komplizierter gelöst hätte. Warum auch das Rad neu erfinden?
Der letzen Typ den ich geben möchte betrifft eigene Projekte. Wie bereits oben beschrieben kann man nur dann gut werden, wenn man wirklich viel programmiert. Jeder Programmierer sollte daher immer aktiv sein. Das kann durch den Job oder eigene Projekte gewährleistet sein. Es müssen dabei keine großen Projekte sein. Auch kleine Projekte helfen dabei besser im programmieren zu werden. Hat man beispielsweise im Urlaub ein paar hundert Fotos geschossen und möchte diese nun aussortieren, so kann dies von Hand geschehen oder man schreibt einfach ein Programm dafür. Dieses könnte dann so aussehen, dass jedes Bild einzeln angezeigt wird und dann mehrere Buttons zur Auswahl stehen. Je nachdem welcher Button gedrückt wird, wird das Bild in einen anderen Ordner verschoben. Hierbei lernt man nicht nur den Umgang mit Dateien, das Erstellen von Oberflächen und das abarbeiten von Events, sondern hat gleichzeitig ein nützliches Programm geschaffen, welches im nächsten Jahr wieder verwendet werden kann und einfacher zu bedienen ist als das manuelle sortieren von Hand.


Bookmark and Share

5 Kommentare:

Simon Mihai hat gesagt…

Welche Fachbücher sind da sinnvoll?

Florian Buchner hat gesagt…

Kommt auf die Sprache an. Die Reviews bei amazon sind ja meistens ganz hilfreich. Es sollten auf jeden Fall Übungen enthalten sein.
Falls die Sprache egal ist würde dir Einstieg in Visual C# 2012empfehlen, da C# meine lieblings Sprache ist und die Galileo Bücher wirklich gut sind.

Marie hat gesagt…

Wir haben an der Universität mit BlueJ gearbeitet und Java gelernt. Ich fand das BlueJ Lehrbuch für Anfänger ziemlich gut erklärt und auch die Beispiele sind, gerade wenn man ganz neu anfängt schön einfach gehalten. Deswegen an dieser Stelle meine Empfehlung :-)

Anonym hat gesagt…

Schrödinger lernt Java ist auch ein tolles, unkonventionelles Lehrbuch!

DMuev1984 hat gesagt…

"Die wichtigste Lektion, die ich selber lernen musste ist die, dass man nicht mehr als die Standardkonstrukte wissen brauch um programmieren zu können. Wer weiß was if, else, for, while und new machen und dazu noch weiß wie man eine Klasse oder Methode schreibt, der kann schon programmieren." - Sehr gut geschrieben! Das sehe ich genauso, es ist egal mit welcher Programmiersprache man startet, solange man die Grundelemente anzuwenden lernt.

Kommentar veröffentlichen