Die Informatik handelt vom maschinellen Lösen von Problemen.
Die Informatik ist die Wissenschaft von der methodischen Beherrschung algorithmisch lösbarer Probleme.
Weise zwei Zahlen den Variablen x und y zu
→ x = 1, y = 2
Addiere x und y und weise das Ergebnis der Variable z zu
→ z = x + y
Multipliziere z mit dem Faktor 4711. Weise das neue Ergebnis z zu
→ z = 4711 × z
Gib z als das Endergebnis aus
→ print(z)
Abstrakte Beschreibung ist häufig in Pseudocode
Problem: Ein Computer versteht die (Programmier-)Sprachen nicht.
Er kennt nur 0 und 1.
110011000 und 1Daraus folgt:
Im Grunde ist alles eine Anwendung, die auf dem Betriebssystem aufsetzt
Dies ist alles nicht Teil eines Betriebssystems
Beispiel GNU/Linux
Tiefergehende Algorithmen und Algorithmenanalyse
→ Vorlesung „Datenstrukturen und Algorithmen 2 (DAP2)”
Programmierung einer grafischen Oberfläche (UI = User Interface)
→ heutzutage häufig webbasiert in Browser-Container, wie bei Visual Studio Code
Anfang der 1970er Jahre von Dennis Ritchie erfunden
C ist eine sogenannte Hochsprache
Hardwarenahe Programmiersprache zur Systemprogrammierung
Wurde für das Betriebssystem UNIX entwickelt
Warum der Name C?
→ Nachfolger der Programmiersprache B
(ebenfalls von Dennis Ritchie und Ken Thompson)
Betriebssystem für Großrechner (Mainframes),
Entstand 1969-70 bei Bell Labs (später AT&T)
Initiiert durch Ken Thompson
Nutzte DEC PDP-7-Rechner wegen besserer graphischer Konsole
Portierung des Spiel brachte neues Betriebssystem hervor
C wurde parallel zu Unix entworfen
→ Ziel: Programme angenehmer verwirklichen zu können
Für Elektrotechniker:innen
Manche (obskure) Hardware-Plattformen haben nur einen Übersetzer für C
Außerdem: Überall zu finden.
Entstehung von riesigen Infrastrukturen auf Basis von C
Von Bjarne Stroustrup 1983 erfunden
(Büronachbar von Ritchie und Thompson)
Geplant war C mit Erweiterung um objektorientierte Programmierung
Aber es wurde mehr …
C++ ist Superset von C (= beinhaltet C vollständig)
plus zahlreiche weitere Funktionalitäten
Faustregel: Man kann alles mit C machen, aber man muss es manuell erstellen.
→ C++ bietet bereits eine Reihe von Lösungen.
C++ liegt auf Platz 7
(mit CSS)
Davor liegen nur interpretierte Sprachen
C ist etwas weiter unten auf Platz 10
C++98
C++03
C++11 (C++0x)
→ gilt als Beginn von modernem C++
Und seitdem alle 3 Jahre neue Version (C++14, 17, 20, 23, 26)
Das war’s mit der Einführung.
Jetzt wird programmiert! 🥳