Buffl uses cookies to provide you with a better experience. You can find more information in our privacy policy.
Was ist ein Compiler?
Ein Compiler übersetzt Sourcecode (z.B. for (int i: numbers)), den ein Mensch schreibt, in Maschinencode (z.B: 00011010 00011010), den ein Computer ausführen kann.
for (int i: numbers)
00011010 00011010
Dafür muss der Sourcecode absolut fehlerfrei sein, sonst gibt es Compiler-Fehler.
Die einzuhaltenden Regeln werden durch die Syntax der Programmiersprache bestimmt. Zur Syntax gehören Rechtschreibung, Interpunktion und Grammatik.
Was ist eine IDE?
Eine Integrated Development Environment (integrierte Entwicklungsumgebung) ist eine Software, mit der andere Software entwickelt wird. Sie enthält meist einen Editor und den Compiler.
Was ist ein Objekt?
Ein Objekt ist ein Ding der realen Welt mit Eigenschaften und Funktionen, z.B. ein Auto mit Eigenschaft Farbe und Funktion fahren.
Ein Objekt ist immer nur ein Modell der Realität, das sich je nach Einsatzzweck unterscheiden kann. Beim Auto interessiert sich die Tankstellenanwendung vielleicht nur für das Kennzeichen und die Größe des Tanks, während eine Werkstatt sich für den Kilometerstand und den Hersteller interessiert.
Was ist eine Klasse?
Eine Klasse ist ein Bauplan für Objekte, in dem festgelegt wird, welche Eigenschaften und Funktionen alle (!) Objekte dieser Klasse haben müssen.
Aus einer Klasse können dann mehrere Objekte erzeugt werden, die alle die gleichen Eigenschaften und Funktionen haben, die sich jedoch in den Werten ihrer Eigenschaften unterscheiden können.
Beispiel: Die Klasse Auto definiert die Eigenschaft Farbe und die Funktion fahren. Aus dieser Klasse können zwei Objekte erstellt werden, von denen eins den Wert blau für die Farbe hat und das andere den Wert rot.
Außerdem kann noch ein weiteres Auto erstellt werden, das ebenfalls blau ist, mit dem anderen blauen Auto aber nichts zu tun hat. Genau wie in der Realität kann es „baugleiche“ Autos geben, die trotzdem individuelle Einzelstücke sind.
Was ist ein Datentyp?
Ein Datentyp legt fest (und der Compiler prüft):
Art der Daten (z.B. Zahlen, Zeichenfolgen, Wahrheitswerte)
Länge der Daten (z.B. 32 Bit für Zahlen)
Erlaubte Operationen auf den Daten (z.B. Addition für Zahlen oder Konkatenation für Zeichenketten)
Nicht erlaubt wären:
Ganzzahl a = "Hallo"; ("Hallo" ist keine Ganzzahl)
Ganzzahl a = "Hallo";
"Hallo"
Ganzzahl
Byte b = 32321; (32321 ist zu groß für ein Byte)
Byte b = 32321;
32321
Byte
true + false (Wahrheitswerte können nicht addiert werden)
true + false
Verbreitete Datentypen, die es in vielen Programmiersprachen gibt:
Integer: Ganzzahlen (meist 32 Bit lang)
Integer
Double: Gleitkommazahlen
Double
String: alphanumerische Zeichenketten
String
Boolean: Wahrheitswerte (true und false)
Boolean
true
false
Man kann auch eigene Datentypen definieren. Das wären dann die Klassen, die eine beliebige Kombination aus anderen Datentypen als Attribute enthalten können.
Was ist eine Variable?
Eine Variable ist ein benannter Speicherbereich, der in einem Programm für die Verarbeitung verwendet werden kann, damit man nicht mit kryptischen Speicheradressen wie 0xA042BC2 arbeiten muss.
0xA042BC2
Variablen haben einen Datentyp und einen Bezeichner, z.B. Integer alterDerPerson (in Java).
Integer alterDerPerson
Der Wert einer Variablen kann während der Programmlaufzeit verändert werden.
Was ist ein Ausdruck (oder eine Expression)?
Ein Ausdruck führt bei der Auswertung zu einem Resultat.
Beispiele: 1 + 2 (-> 3), (43.2 + 2) * 3 (-> 135.6), "Hallo" + "Welt" (-> "HalloWelt")
1 + 2
3
(43.2 + 2) * 3
135.6
"Hallo" + "Welt"
"HalloWelt"
Was sind Operatoren und Operanden?
Operanden sind die Werte, die verarbeitet werden sollen.
Operatoren verknüpfen die Operanden zu Ausdrücken. Sie bilden z.B. die arithmetischen Operationen (Addition, Multiplikation usw.) ab.
Je nach Typ hat ein Operator einen (unär), zwei (binär) oder drei (ternär) Operanden.
1 + 2 -> 1 und 2 sind die Operanden, die mit dem Operator + (Addition) zum Ausdruck verknüpft werden, dessen Resultat 3 ist.
1
2
+
Beispiele für arithmetische Operatoren: +, -, *, /, %
-
*
/
%
Was ist eine Anweisung (oder ein Statement)?
In der imperativen Programmierung formulieren wir unsere Programme in Form von Anweisungen oder Befehlen, die der Computer ausführen soll.
Beispiele: Wertzuweisungen zu Variablen, Ausgaben, if, for
if
for
Anweisungen müssen mit Semikolons abgeschlossen werden (in Java).
Was ist ein Algorithmus?
Ein Algorithmus ist eine Beschreibung zur Lösung eines Problems.
Beispiel: Rezept zum Backen eines Apfelkuchens. Löst das Problem eines fehlenden Apfelkuchens!
Algorithmen können beliebig oft wiederholt werden und sollten immer zu einem vorhersagbaren Ergebnis führen (z.B. einem leckeren Apfelkuchen).
Algorithmen bestehen aus drei grundlegenden Strukturen:
Sequenz: Eine Folge von Anweisungen, die der Reihe nach abgearbeitet werden.
Beispiel: schaeleApfel; zerkleinereApfel; legeApfelAufTeig;
schaeleApfel; zerkleinereApfel; legeApfelAufTeig;
Verzweigung: Eine Fallunterscheidung, bei der abhängig von einer Prüfung unterschiedliche Anweisungen ausgeführt werden.
Beispiel: if (schokostreuselGewuenscht) { fuegeSchokostreuselHinzu; }
if (schokostreuselGewuenscht) { fuegeSchokostreuselHinzu; }
Wiederholung: Das mehrfache Ausführen der gleichen Anweisung(en).
Beispiel: for (Apfel a: aepfel) { schaeleApfel(a); }
for (Apfel a: aepfel) { schaeleApfel(a); }
Was ist ein Block?
Ein Block fasst eine Gruppe aus Anweisungen zusammen und ergibt damit eine neue Anweisung.
Ein Block kann grundsätzlich überall verwendet werden, wo auch eine Anweisung erlaubt ist.
Ein Block wird an einigen Stellen erwartet, z.B. um den Rumpf einer Schleife oder Verzweigung zu definieren.
Blöcke werden in vielen Programmiersprachen in geschweifte Klammern ({}) eingeschlossen.
{}
Was ist eine Methode?
Eine Methode ist ein wiederverwendbarer, benannter Algorithmus.
Der Kopf einer Methode besteht aus: Rückgabewert, Name, Parametern.
Der Rückgabewert ist der Datentyp, den die Methode als ihr Ergebnis liefert.
Die Parameter sind mehrere Variablen (Datentyp + Name), mit denen die Methode arbeitet. Sie werden vom Aufrufer in die Methode hineingegeben.
Der Rumpf enthält die Implementierung als Folge von Anweisungen in einem Block.
Die konkreten Werte, die der Aufrufer für die Parameter übergibt (z.B. 5 für den Parameter zahl), heißen Argumente.
5
zahl
Nicht jede Methode muss einen Werte zurückgeben, es gibt daher auch void als Pseudo-Rückgabewert.
void
Last changed2 years ago