Grundlagen der Informatik
Computer als Schichtenmodell
Zum Verständnis eines Computers ist die Kenntnis des Schichtenmodells sehr bedeutsam. Auch um das Verhältnis von Computerprogramm zum Patentrecht zu verstehen, dient das Schichtenmodell. Das Schichtenmodell verdeutlicht, dass jedes Computerprogramm eine Hardwareseite und eine Softwareseite aufweist. Die Hardware wird vom Patentrecht als technisch angesehen. Die Software zunächst nicht. Zwischen der reinen Anwendungssoftware und der Hardware gibt es mehrere Schichten, die hin zur Hardware zunehmend konkreter und detaillierter sind.
Die oberste Schicht ist die Anwendungssoftware. Die Anwendungssoftware gibt Steuerbefehle an das Betriebssystem, das eine weitere Schicht darstellt. Zwischen Anwendungssoftware und Betriebssystem kann eine API vorhanden sein, die die Kommunikation zwischen Anwendungssoftware und Betriebssystem sicherstellt. Die Hardware kann als eine weitere Schicht aufgefasst werden.
Softwareengineering als Abstraktion
Softwareengineering bedeutet die planmäßige, industrielle Entwicklung von Software nach ingenieurmäßgen Grundsätzen. Softwareengineering ist als Gegensatz zum Hobbyprogrammieren zu verstehen. Die Entwicklung von Software gemäß den Vorgaben des Softwareengineering folgt einem strikten Ablauf. Zunächst wird ein Anforderungsprofil an die Software erstellt. In einem nächsten Schritt wird ein Modell der Software erarbeitet. Dieses Modell wird als ein konkretes Ablaufdiagramm entwickelt. Das Ablaufdiagramm wird als ein Produkt implementiert.
Algorithmus
Ein Algorithmus zusammen mit einer Datenstruktur werden durch ein Computerprogramm realisiert. Algorithmus ist ein zentraler Begriff in der Informatik, wobei ein Algorithmus nur sein kann, was finit, deterministisch und effizient ist. Durch ein Computerprogramm wird ein Algorithmus für einen Computer lesbar.
Datenstruktur
Eine Datenstruktur stellt die Beziehungen zwischen einzelnen Daten dar. Datenstrukturen können insbesondere als arrays, linked lists, stacks, trees oder hash tables dargestellt werden und erleichtern damit dem Computerprogramm die Abarbeitung der Programmschritte.
Computerprogramm
.
Software
.
Zurück