Fachbegriffe in der Programmierung?

8 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ach herrje, das ist ja eine Liste :-D Ich werde versuchen es so einfach wie möglich zu halten, was teilweise auf Kosten der Korrektheit gehen wird. Aber für den Anfang sollte es wohl reichen.

Algorithmus: Das ist eine Kochanleitung um zu einem Ziel zu kommen. Stell dir vor, du hast eine Liste, die du sortieren möchtest. Dann hast du eine Reihe von Befehlen, die du nacheinander ausführst, um das zu schaffen. Das ist ein Algorithmus, quasi die Logik deines Programms. Für viele Probleme gibt es schon Algorithmen, die du nutzen kannst, für andere musst du sie selbst erfinden.

Platformunabhänige Programmiersprache: Eine Plattform ist eine Betriebssystem, also Windows, Linux, MacOS, Android etc. In der Regel funktionieren Programme für eine Plattform nicht automatisch auch auf einer anderen. Die Ausnahme sind eben diese plattformunabhängigen Programmiersprachen. Beispiele dafür wären Java oder Python.

Bibliothek: "Es gibt sehr viele Sachen, die nicht zum "Kern" gehören. Also etwas zum arbeiten mit Internet, graphische Oberflächen und so weiter. Diese sind in Bibliotheken ausgelagert (englisch library und kurz lib)." Von diesen Bibliotheken gibt es schon sehr viele für alle möglichen Zwecke, aber du kannst auch selbst welche schreiben.

API: Hast du eine Bibliothek, musst du ja auch irgendwie auf sie zugreifen. Dafür gibt es meistens Anleitungen (documentation, kurz doc), in denen drinsteht: Diese Funktion hat diese Parameter und wenn du dies oder das reinsteckst, wird dies oder das rauskommen.

Objektorientiere Programmierung: Das ist (mir persönlich) ehrlich gesagt etwas zu komplex, als es in wenigen verständlichen Worten erklären zu können. Es geht darum, dass du dein Programm in Teile (Klassen) aufteilst, die bestimmte Eigenschaften und Fähigkeiten haben, die du ihnen gibst. Alles, was zusammengehört bündelst du so. Du kannst dann auch Abwandlungen von diesen Klassen machen, ohne alles kopieren oder neu schreiben zu müssen. Java oder C++ wären Beispiele.

Prozedurale Programmierung: Das ist ein bisschen das Gegenteil zur objektorientierten Programmierung. Es gibt keine Klassen, sondern nur Variablen und Funktionen. Ein Beispiel wäre C.

Ich hoffe, ich konnte das etwas verständlich machen, sonst frag einfach noch mal nach :-)

TheOrzoBiased  11.07.2016, 18:53

Super Antwort, aber in c geht auch oop

0
karajan9  11.07.2016, 18:57
@TheOrzoBiased

Meines Wissens nach nicht ohne Bibliotheken wie GObject. Die Funktionalität (Klassen, Vererbung) ist in C selbst nicht vorhanden, aus dem Grund wurde ja C++ erfunden ;-)

0

API ist eine Schnittstelle an der sich ein Programmierer mit fertigen Bausteinen ranhängen kann. Meist sehr spezifisch zu einem Thema/Programm

Prozeduale Programmiersprache sind Sprachen die Schrit für Schritt nacheinander Befehle ausführen. Beispiel C

Objektorientierte Sprachen haben zudem noch Klassen. Und diese Klasen kann man instanzieren. Das sind dann Objekte. In OOP arbeitet man eben mit Objekten.

Algorithmen sind eine Art Ausschnitt von Befehlen. Es kann mehrere Eingangsparameter haben und mehrere Ausgangsparameter. Ein Algoritmus zeichnet sich dadurch aus, dass man ihn tausendfach wiederholen kann und IMMER die gleichen Ergebnisse liefert, sofern die gleichen Eingangsparameter genutzt werden.

Eine Bibliothek ist ein Sammlung von Klassen.

Plattformunabhängige Programmierung ist das Programmieren, dass es unter jeder Plattform funktioniert. Das kann man in zwei Formen sehen. Entweder man nutzt Sprachen, wo der Compiler sich an die Plattform anpasst (z.B. Java) oder man macht das als Programmierer selbst (z.B. durch Präcompilerdirektiven unter C)

SirNik  11.07.2016, 17:45

Prozedurale Programmierung wird oft als Synonym für imperative Programmierung genommen, ist aber eigentlich eine Erweiterung der Imperativen Programmierung. D.h.: Schritt für Schritt = imperativ und prozedural wird es dann, wenn man diese Schritt für Schritt teile eines Programmes in Prozeduren (z.B. Methoden) auslagert.

0

API: Programmierschnittstelle: Dein Programm benutzt ein anderes Programm, z.B. einen Drucker. Den Druckertreiber hast du ja nicht selbst geschrieben, das hat Microsoft oder Apple schon für dich gemacht. Aber der Druckertreiber muss mit bestimmten Befehlen angesprochen werden. Diese Befehle nennt man API.

Prozeduale Programmierung. Dein Programm soll bestimmte dinge öfters machen, z.B. Eingaben annehmen. Um den gleichen Vorgang nicht immer wieder neu zu programmieren, packt man das Ganze in eine separate Prozedur (oder auf Funktion), die immer wieder neu aufgerufen werden kann.

Objektorientiert: dazu solltest du erst mal die prozeduale Programmierung erlernen. OOP ist eine abstrakte Erweiterung dazu, die man ohne Programmmierkenntnisse nicht so einfach erklären kann. 

Algorithmen: sind Rechenwege, die zum gewünschten Ergebnis führen. Um eine Liste zu sortieren gibt es z.B. verschiedene Möglichkeiten. Jeden dieser durchaus verschiedenen Rechenwege nennt man Algorithmus.

Bibliothek: Dein eines Programmteil ist so toll geworden, dass du es auch in anderen Programmen nutzen willst. Dann kannst du es als Bibliothek auslagern, dann können mehrere Programme gleichzeitig darauf zugreifen.

Plattform unabhängig: Dein Prog. läuft ohne wesentliche Änderungen auf Windows, Mac und Linux. Ist meist abhängig von der Programmiersprache, die du nutzt.

Dann solltest du dir eine richtige Lernquelle (sprich: Buch oder Tutorial suchen) und dieses von Anfang an durcharbeiten. Wenn du gerade erst mit dem Programmieren anfängst, dann musst du noch nicht wissen, was eine API oder "Objektorientierte Programmierung" ist, das kommt erst im Laufe der Zeit. Es bringt wenig, die Begriffe völlig ausserhalb vom Kontext zu erklären, zumal man schon etwas längere Antworten schreiben muss, wenn man es richtig erklären will. Bei den anderen Antworten sieht man, dass sie sich damit schwer tun, vor allem OOP zu erklären (was kein Vorwurf ist, das Thema ist komplex) und teils neue Fachbegriffe verwenden, die du sicherlich auch nicht kennst.

Wenn du kochen lernen willst, dann übst du am Anfang auch erstmal, wie man Spiegeleier bratet. Was du alles für ein Festtagsmenü mit 5 Gängen in der Küche haben musst, ist dir am Anfang völlig egal. Und genauso ist es in der Programmierung.

Die Abkürzung API steht für Application Programming Interface

Man versteht darunter den Teil eines Programms, der notwendig ist (und den man im Detail kennen muss), um dieses Programm aus anderen Programmen heraus aufrufen zu können.

Viele Programme haben nur ein GUI - ein sog. Graphical User Interface (zu deutsch: eine Dialogschnittstelle). Sie können dann also nur im Dialog aufgerufen werden, aber nicht aus anderen Programmen heraus.