Grundlagen der Programmierung
„Am Anfang eines Programmierkurses mag man sich die Fragen stellen: "Wozu braucht man Programmierung?" oder "Was hat mein Fach mit der Programmierung zu tun – das ist doch kein Informatik-Studium."
„Am Anfang eines Programmierkurses mag man sich die Fragen stellen: "Wozu braucht man Programmierung?" oder "Was hat mein Fach mit der Programmierung zu tun – das ist doch kein Informatik-Studium."
Steve Jobs – der Gründer der Firma Apple – hat in einem Interview die Frage so beantwortet:
"I think everybody in this country should learn how to program a computer because it teaches you how to think."
Rechner sind ein zentraler Bestandteil unseres Lebens geworden – sowohl privat als auch beruflich. Schlagwörter wie Smart Home, Smart-Produktion, Smart-Fabrik, Smart Farming, Smartpatient und Industrie 4.0, um nur einige zu nennen, bezeichnen in beindruckender Weise die Durchdringung der Rechner in nahezu allen unseren Lebensbereichen. Es ist wahrlich schwer geworden, überhaupt einen Lebensbereich zu finden, in dem Rechner noch keine Rolle spielen und uns im Alltag unterstützen. Unabhängig davon, ob man selbst bei der Erstellung der entsprechenden Lösungen beteiligt ist, gehört das Wissen über die prinzipielle Funktionsweise von digitalen Systemen zum Allgemeinwissen – sprich zu dem Wissen, welches jeder Mensch benötigt, um sich in der Welt orientieren zu können. Programmieren lernen ist ein gutes Hobby, das viel Spaß macht und nützlich ist. Es trainiert Ihre analytischen Denkfähigkeiten. Sie lernen, komplexe Sachverhalte in kleine lösbare Einzelprobleme zu zerlegen und die entsprechenden Lösungen zu entwickeln. Programmiert wird immer in einer Programmiersprache. Mit einer Programmiersprache "sagen" Sie dem Computer, was er zu tun hat. Am Anfang fällt es Ihnen vielleicht schwer, Ihre Lösungen so zu formulieren, dass der Rechner auch "versteht", was Sie meinen und die erwartete Lösung für ein gegebenes Problem tatsächlich auch liefert. Das liegt einerseits daran, dass die Regeln der Sprache gewöhnungsbedürftig sind und andererseits daran, dass die Formulierung der Lösung für eine Aufgabe zuerst schwierig ist. Wir sind es gewohnt, mit Menschen zu kommunizieren. Ein Rechner hat kein Vorwissen, er kennt keinen Kontext, er kann selbst keine Schlüsse ziehen und er kann keine Ungenauigkeiten erkennen und mit ihnen umgehen. Der Rechner kann nur das, was wir ihm beibringen. Daher müssen Sie dem Rechner sehr genau und detailliert alles vorgeben, was er für die Lösung braucht.
Es gibt viele verschiedene Programmiersprachen … Eine neue Programmiersprache zu lernen ist vergleichbar damit, eine Fremdsprache zu lernen. Sie müssen viele neue Wörter und eine neue Grammatik lernen. Genauso wie beim Fremdsprachenlernen müssen Sie die neue Sprache aktiv benutzen. Anfangs können Sie mit der neugelernten Sprache mit großer Mühe einfache Dinge ausdrücken. Im Laufe der Zeit beherrschen Sie die neue Sprache immer besser und besser und werden in der Lage sein, komplexe Sätze zu formulieren. Während Sie die Programmiersprache aktiv benutzen, entwickeln sich bei Ihnen auch andere Fähigkeiten, die nicht nur beim Programmieren nützlich sind. Wenn Sie Ihre erste Programmiersprache gelernt haben, werden Sie merken, dass alleine die Kenntnisse, wie Sie in einer Programmiersprache Lösungen formulieren müssen, Ihre Herangehensweise bei Problemlösungen in anderen Bereichen beeinflusst hat.
Das Programmieren beginnt mit dem detaillierten Auseinandersetzen mit dem zu lösenden Problem. Um die entsprechende Lösung formulieren zu können, müssen Sie zuerst das Problem genauestens verstanden haben. Fragen wie: "Was erwarte ich von der Lösung?" und "Was soll die Lösung leisten?" stehen im Vordergrund. Diese Fragen klingen selbstverständlich, aber trotzdem oder gerade deshalb gehört deren Beantwortung zu den schwierigsten Aufgaben beim Programmieren. Wenn Sie das Problem verstanden haben und wissen, was die Lösung zu leisten hat, beginnen Sie sich Gedanken darüber zu machen, wie sich das Problem prinzipiell lösen lässt – Sie analysieren das Problem und modellieren die entsprechende Lösung bzw. den entsprechenden Lösungsweg (Algorithmus) dazu. Bei kleineren Aufgaben können Sie sich vielleicht den Algorithmus gut im Kopf vorstellen und auch im Kopf behalten. Bei komplizierteren Algorithmen empfiehlt es sich, diesen aufzuschreiben. Nachdem Sie den Algorithmus entwickelt haben, können Sie beginnen, diesen als Programm aufzuschreiben, d. h. zu programmieren. Erst hier kommt die Programmiersprache zum Spiel. Bei der Umsetzung des Algorithmus verwenden Sie die Sprachelemente oder Anweisungen, die die Programmiersprache zur Verfügung stellt. C ist eine imperative Programmiersprache. Bei der imperativen Programmierung ist ein Programm eine Folge von Anweisungen oder Befehlen, die hintereinander in der vorgegebenen Reihenfolge von dem Rechner ausgeführt werden. Als Programmierer ist Ihre Aufgabe, den vorher entwickelten Algorithmus als eine Folge von Anweisungen für den Rechner ausführbar umzuformulieren.“ [6]
[6] Programmierung I, vfhprog.oncampus.de, Stand 07.09.2017 10:34