Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen RevisionVorhergehende Überarbeitung
objektorientierte_programmiersprachen [2019/01/29 15:33] – Externe Bearbeitung 127.0.0.1objektorientierte_programmiersprachen [2019/07/27 16:36] (aktuell) huwi
Zeile 3: Zeile 3:
  
 ===== der Sprachumfang von C (Auszug) ===== ===== der Sprachumfang von C (Auszug) =====
->>><code>+ 
 +><code>
 // Schlüsselworte .......................................... // Schlüsselworte ..........................................
 break double int struct break double int struct
Zeile 29: Zeile 30:
 In den strukturierten Sprachen gibt es zwar noch weitere Spielarten dieser drei Grundstrukturen aber dem Wesen nach gibt es tatsächlich nur diese drei. Im Folgenden soll dargestellt werden wie diese Algorithmusbausteine  in C und dann natürlich auch in C++ notiert werden. Beachten Sie die geschweiften Klammern! Diese begrenzen einen Anweisungsblock und sollten immer besonders am Anfang diszipliniert gesetzt werden.  In den strukturierten Sprachen gibt es zwar noch weitere Spielarten dieser drei Grundstrukturen aber dem Wesen nach gibt es tatsächlich nur diese drei. Im Folgenden soll dargestellt werden wie diese Algorithmusbausteine  in C und dann natürlich auch in C++ notiert werden. Beachten Sie die geschweiften Klammern! Diese begrenzen einen Anweisungsblock und sollten immer besonders am Anfang diszipliniert gesetzt werden. 
  
->>><code cpp>+><code cpp>
 // Blöcke in C und C++ // Blöcke in C und C++
 { // BEGIN { // BEGIN
Zeile 38: Zeile 39:
 Das Weglassen von Klammern in bestimmten Fällen sind eben genau das, Sonderfälle und diese sollte man sich als Einsteiger erst mal sparen. Übrigens gibt es die Blockbildung in allen strukturierten Sprachen. Manchmal sind das statt Klammern Schlüsselworte wie //BEGIN// oder //END//. Das gleiche gilt für das Semikolon. Ein Semikolon ist in C das Endekennzeichen einer Anweisung und für den Compiler extrem wichtig. Notieren Sie eine Anweisung immer in einer eigenen Zeile und schließen diese immer mit einem Semikolon ab. Das Einrücken der Anweisungen mit einem //TAB// innerhalb eines Blocks gewährleistet den Überblick zu bewahren. Das Weglassen von Klammern in bestimmten Fällen sind eben genau das, Sonderfälle und diese sollte man sich als Einsteiger erst mal sparen. Übrigens gibt es die Blockbildung in allen strukturierten Sprachen. Manchmal sind das statt Klammern Schlüsselworte wie //BEGIN// oder //END//. Das gleiche gilt für das Semikolon. Ein Semikolon ist in C das Endekennzeichen einer Anweisung und für den Compiler extrem wichtig. Notieren Sie eine Anweisung immer in einer eigenen Zeile und schließen diese immer mit einem Semikolon ab. Das Einrücken der Anweisungen mit einem //TAB// innerhalb eines Blocks gewährleistet den Überblick zu bewahren.
  
->>><code cpp>+><code cpp>
 int A,B,C; int A,B,C;
  
Zeile 100: Zeile 101:
  
 ===== Zusätzlicher Sprachumfang von C++ (Auszug) ===== ===== Zusätzlicher Sprachumfang von C++ (Auszug) =====
->>><code>+><code>
 bool catch  false enum bool catch  false enum
 class new delete public template  class new delete public template 
Zeile 113: Zeile 114:
 Es ist ein Anwendungsprogramm mit dem Namen Applikation (englisch: //Application//) zu entwickeln. Die Anwendung soll zunächst geplant und dann programmiert werden und letztlich benötigen wir eine Instanz von dem Programm. Es ist ein Anwendungsprogramm mit dem Namen Applikation (englisch: //Application//) zu entwickeln. Die Anwendung soll zunächst geplant und dann programmiert werden und letztlich benötigen wir eine Instanz von dem Programm.
  
->>>{{:app.jpg?150|}}+>{{:app.jpg?150|}}
  
->>><code cpp>+><code cpp>
 // Klasse Name { Bauplan } Instanz; // Klasse Name { Bauplan } Instanz;
 class Application class Application
Zeile 126: Zeile 127:
 Die Applikation **ist eine** Mikrocontrolleranwendung. Diese soll alle Möglichkeiten  der vorhandenen Klasse Controller besitzen. Somit erbt die Applikation am besten alle Merkmale vom Controller.  Die Applikation **ist eine** Mikrocontrolleranwendung. Diese soll alle Möglichkeiten  der vorhandenen Klasse Controller besitzen. Somit erbt die Applikation am besten alle Merkmale vom Controller. 
  
->>>{{:mcu.jpg?380|}}+>{{:mcu.jpg?380|}}
  
->>><code cpp>+><code cpp>
 // Klasse Name : Sichtbarkeit Basisklasse { Bauplanerweiterung } Instanz; // Klasse Name : Sichtbarkeit Basisklasse { Bauplanerweiterung } Instanz;
 class Application : public Controller class Application : public Controller
Zeile 139: Zeile 140:
 Der Controller wird eingeschaltet und arbeitet dann fortlaufend taktgesteuert. Oh ja, wir erinnern uns dunkel. Subjekt und Prädikat. **WER** (der Controller) macht **WAS** (wird eingeschaltet, arbeitet)... Dafür sollte es jetzt Operationen in der Klasse geben. Der Controller wird eingeschaltet und arbeitet dann fortlaufend taktgesteuert. Oh ja, wir erinnern uns dunkel. Subjekt und Prädikat. **WER** (der Controller) macht **WAS** (wird eingeschaltet, arbeitet)... Dafür sollte es jetzt Operationen in der Klasse geben.
  
->>>{{:poweron.jpg?450|}}+>{{:poweron.jpg?450|}}
  
->>><code cpp>+><code cpp>
 // Klasse Name : Sichtbarkeit Basisklasse { Bauplanerweiterung } Instanz; // Klasse Name : Sichtbarkeit Basisklasse { Bauplanerweiterung } Instanz;
 class Application : public Controller class Application : public Controller
Zeile 167: Zeile 168:
 Es soll eine LED angeschlossen werden. An diese LED wollen wir niemand anderes heranlassen. Wir schützen diese vor unberechtigtem Zugriff. Es soll eine LED angeschlossen werden. An diese LED wollen wir niemand anderes heranlassen. Wir schützen diese vor unberechtigtem Zugriff.
  
->>>{{:hatled.jpg?380|}}+>{{:hatled.jpg?380|}}
  
->>><code cpp>+><code cpp>
 // Klasse Name : Sichtbarkeit Basisklasse { Bauplanerweiterung } Instanz; // Klasse Name : Sichtbarkeit Basisklasse { Bauplanerweiterung } Instanz;
 class Application : public Controller class Application : public Controller
Zeile 190: Zeile 191:
 Die LED ist eine fertige Klasse aus dem Framework. Wir müssen der LED mitteilen, an welchem Port-Pin sie angeschlossen ist und wir wollen sie einschalten. Die LED ist eine fertige Klasse aus dem Framework. Wir müssen der LED mitteilen, an welchem Port-Pin sie angeschlossen ist und wir wollen sie einschalten.
  
->>>{{:ledon.jpg?400|}}+>{{:ledon.jpg?400|}}
  
->>><code cpp>+><code cpp>
 // Klasse Name : Sichtbarkeit Basisklasse { Bauplanerweiterung } Instanz; // Klasse Name : Sichtbarkeit Basisklasse { Bauplanerweiterung } Instanz;
 class Application : public Controller class Application : public Controller