
Huhu, da alle so schön PHP u.s.w können und dafür wunderbare Tutorials heraus bringen, muss ich das ja auch einmal machen. Da es etwas besonderes ist, kommt hier nun die Programmiersprache, die ich seit Jahren lerne. Im voraus: C/C++ sowie C# sind sehr weitläufige Programmiersprachen.
Ich selber lerne diese bereits ca. 6 Jahren und kann immer noch nicht alles! Deswegen glaubt nicht, dass ihr immer alles sofort schafft. Immer wieder kommen Fehler vor, die sich aber dann meistens von selbst klären! Allerdings soll dieses Tutorial nur eine Einführung sein!
Was beinhaltet dieses Tutorial?
- Eine Begriffserklärung
- Tipps und Tricks zur komfortablen C Programmierung
Es mag so klingen als wäre es einfach und schnell gelernt, aber man sollte beachten, dass das die Grundlagen sind, die man NIE vergessen darf!
Was sollte ich mitbringen?
- Optimal: Einige Erfahrungen in den objektorientierten Programmiersprachen, am besten PHP oder Pearl!
- Sonst: JavaScript & Ajax
Achtung: Dieses Tutorial ist keinesfalls für blutige Anfänger gedacht! Also für die, die denken sie haben mit Html & CSS eine Programmiersprache erlernt!
Grundbegriffe
Das Beispiel mit einem Rezept ist da recht schön:
Zutaten
- Ein Kopfsalat
- Karotten
- 4 Esslöffel Essig
- Öl
- Pfeffer
Zubereitung
Den Kopfsalat zerpflücken und gründlich waschen. Die Karrotten waschen und schneiden, danach zusammen mit dem Kopfsalat in eine Schüssel werfen, ein Spritzer Öl, Pfeffer und Essig darüber, gut umrührern und kurz weilen lassen.
So wie man nun sieht, hat das Rezept zwei Teile. Im ersten Teil werden die Zutaten genannt, die benötigt werden und im zweiten Teil wird die Zubereitung des Salates beschrieben. Diese beiden Teile sind wesentlich verschieden, aber gehören doch zusammen. Ohne Zutaten kann man nichts zubereiten und ohne die Anleitung zum zubereiten kann man den Salat evtl. roh essen. 
Dann gibt es noch eine gewisse “Fachsprache” die der Autor verwendet. (z.B: Essl.) Ohne diese “Fachsprache” (Terminologie) wäre dieses Rezept weitaus umfangreicher, oder gar unverständlich. In dieser Weise verständigen sich Autor und Leser praktisch unausgesprochen miteinander.
So, nun genug vom Kochen. Das Beispiel kann man nun schön in die C Welt übertragen- in die Welt der “Datenverarbeitung”:
- Die Zutaten für das Rezept, sind quasi die Daten b.z.w die Datenstrukturen, die wir dann verarbeiten.
- Die Zubereitung ist der Algorithmus, der die Daten verarbeitet
- Das Rezept ist dann das Programm, das alle Datenstrukturen(Zutaten) und Algorithmen (Zubereitungsvorschriften) zum lösen der Aufgabe (Also zum Zubereiten des Salates) enthält.
- Die gemeinsame Terminologie, in der sich Autor und Leser des Rezeptes verständigen, ist eine Programmiersprache, in der das Programm geschrieben ist.
- Die Programmiersprache muss dabei in der Lage sein, alle Infos der Zutaten ohne irgendwelche Missverständnisse zu übermitteln.
- Der Ort, an dem ihr kocht, ist dann quasi die Infrastruktur zum Zubereiten, ist also mit dem Betriebssystem und den Werkzeugen des Computers vergleichbar.
- Der Koch teilt das Rezept in einzelne Arbeitsschritte auf. Üblicherweise sind das zwei Arbeitsschritte: Zuerst bereitet er die Zutaten einzeln und unabhängig voneinander zu (z.B Salat waschen). Im zweiten Schritt fügt er die Zutaten zusammen, und schmeckt ab, ob man das Zeug auch essen kann.
In der Datenverarbeitung kann man dann von dem Compiler und dem Linker sprechen
- Das fertige Gericht ist dann das lauffähige Programm, dass vom Benutzer (Esser) angewandt(gegessen) wird.
Programme für C/C++/C#
Ich selber programmiere mit DevC++. Es bietet einige komfortable Codevorlagen, einen Compiler usw.
Download von DevC++!
3 Grundlegende Begriffe
Drei Begriffe die oben genannt worden sind, will ich hier noch erklären. Sie sind ausschlaggebend für die weitere Erlernung von C-Sprachen. Dies ist nur eine Kurzeinführung in die Begriffe. Um umfangreicheres Material dazu zu erhalten, sieh auf Wikipedia nach!
- Algorithmus
- Datenstrucktur
- Programm
Algorithmus
Was ist ein Algorithmus?
Eine endliche Menge von genau beschriebenen Anweisungen, die unter Nutzung vorgegebener Anfangsdaten in einer festgelegten Reihenfolge auszuführen sind, um die Lösung des Problems in endlich vielen Schritten zu lösen.
Datenstrukturen
Bei einer Datenstruktur handelt es sich um ein Modell, dass Informationen zur Lösung eines Problemes enthält (Ausgangsdaten, Zwischenergebnisse und Endergebnisse). Diese Informationen werden dann für festgelegte Zugriffswege bereitgestellt.
Programm
Ein Programm ist eine eindeutige Beschreibung von Algorithmen und Datenstrukturen, das durch einen automatischen Übersetzungsprozess auf dem PC lauffähig ist.
Damit wäre die Begriffserklärung im großen und ganzen zu Ende. Ich werde nach und nach dieses Tutorial, oder diese Einführung, verbessern und optimieren.
Ok das war’s. Bei ungeklärten Begriffen könnt ihr gerne ein Kommentar da lassen.
Liebe Grüße,
Lechner