Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Informatik Sommercamp 2012

Ähnliche Präsentationen


Präsentation zum Thema: "Informatik Sommercamp 2012"—  Präsentation transkript:

1 Informatik Sommercamp 2012
Java programmieren Rechnerbedienung <weiter>

2 Informatik Sommercamp 2012
1. Imperative Programmierung 2. Objektorientierung 3. Eclipse 4. Debugger Crash-Kurs Uni Vorgehensweise: bisschen Theorie vorher Aber: interessieren uns nur für das, was wir brauchen

3 Imperative Programmierung
von Neumann Modell Zustand Programmzähler Variablen Arithmetik Theorie-Teil: bisschen Historie Vorstellung, wie der Rechner funktioniert

4 von Neumann Modell John von Neumann *1903 †1957 Mengenlehre
Quantenmechanik Funktionsanalysis Spieltheorie Manhattan-Projekt Rechnerarchitektur von Neumann in Grundlagenvorlesungen einen der ersten Computer gebaut Spieltheorie: mehrere Agenten wollen gewinnen Manhattan-Projekt: Schockwellen keine Atombomben, sondern Rechnerarchitektur

5 von Neumann Modell teilw. noch heute gültiges Rechnermodell
Programmzähler Zustand Rechenwerk (Arithmetik) Speicher Programmzähler: Versch. Schemata: Gemeinsamkeiten Programme sind Daten (Maschinencode) Zeiger auf nächsten Befehl Batch-Ausführung (nacheinander) <weiter> Programm und Daten

6 von Neumann Modell teilw. noch heute gültiges Rechnermodell
Programmzähler Zustand Rechenwerk (Arithmetik) Speicher

7 Imperative Programmierung
Verzweigung if (b : boolean) s1; else s2; Entscheidungen!

8 von Neumann Modell teilw. noch heute gültiges Rechnermodell
Programmzähler Zustand Rechenwerk (Arithmetik) Speicher Programme und Daten am Zustand herumgebaut gemeinsamer Bus – intern keine Unterscheidung Wichtig: Zustandsübergänge

9 von Neumann Modell teilw. noch heute gültiges Rechnermodell
Programmzähler Zustand Rechenwerk (Arithmetik) Speicher Beispiel: grüner Kommentar

10 von Neumann Modell teilw. noch heute gültiges Rechnermodell
Programmzähler Zustand Rechenwerk (Arithmetik) Speicher Arithmetik: ...haben wir jetzt schon Speicher: …müssen wir uns nicht kümmern

11 Imperative Programmierung
Funktionen: Sichtbarkeit Funktionen: <weiter>

12 Imperative Programmierung
Funktionen: Sichtbarkeit: private, protected private Funktionen: selber definiert Modularität, Übersicht Funktionen: zwei für uns hier relevante Sichtbarkeiten Modularität, Übersicht, Code wiederverwenden

13 Imperative Programmierung
Funktionen: Sichtbarkeit: private, protected private Funktionen: selber definiert Modularität, Übersicht protected (hier): ererbt werden vom Framework aufgerufen

14 Imperative Programmierung
Funktionen: Sichtbarkeit: private, protected private Funktionen: selber definiert Modularität, Übersicht protected: ererbt werden vom Framework aufgerufen Parameter und Rückgabewerte Parameter und Rückgabewerte: Nicht verwirren lassen! Rückgabewert Parameter Soviel (Module gab's auch) bis in die 70er Jahre Wir brauchen das, aber noch mehr. <weiter> Objektorientierung

15 Objektorientierung T. Rentsch (1982):
»My guess is that object-oriented programming will be in the 1980s what structured programming was in the 1970s. Everyone will be in favour of it. Every manufacturer will promote his products as supporting it. Every manager will pay lip service to it. Every programmer will practice it (differently). And no one will know just what it is.« D. Robson (1981): »Many people who have no idea how a computer works find the idea of object oriented systems quite natural. In contrast, many people who have expierence with computers initially think there is something strange about object-oriented systems.«

16 Objektorientierung Wozu soll das gut sein?

17 Objektorientierung Wozu soll das gut sein? Modularität, Übersicht

18 Objektorientierung Wozu soll das gut sein? Modularität, Übersicht
Kohäsion und Kopplung

19 Objektorientierung Wozu soll das gut sein? Modularität, Übersicht
Kohäsion und Kopplung Wiederverwendbarkeit von Programmcode

20 Objektorientierung Wozu soll das gut sein? Modularität, Übersicht
Kohäsion und Kopplung Wiederverwendbarkeit von Programmcode dominante Dekomposition von Funktionalität

21 Objektorientierung Was bedeutet das für uns?

22 Objektorientierung Was bedeutet das für uns?
das jRobots-Framework ist objektorientiert

23 Objektorientierung Was bedeutet das für uns?
das jRobots-Framework ist objektorientiert die Entwicklung von Bots ist das eher nicht (bitte nach Möglichkeit nur eine Klasse bauen)

24 Objektorientierung Was bedeutet das für uns?
das jRobots-Framework ist objektorientiert die Entwicklung von Bots ist das eher nicht (bitte nach Möglichkeit nur eine Klasse bauen) aber: wir müssen Framework-Funktionen verwenden

25 Objekte Attribute Methoden
Objektorientierung Objekte Attribute Methoden - Objekte - Attribute - Methoden <weiter> Dazu in CIP-Pool wir machen das als praktischen Teil

26 Praktischer Teil Rest der Einführung mit JRobots und
zuerst: Framework installieren Anleitung unter: Erstmal Passwort austeilen - Frage: Linux schon benutzt? (hier nicht abgedeckt) - Vorgehensweise: - Browser starten - herunterladen - Eclipse starten (mit Konsole) - … - jRobots starten: EmptyBot gegen anderen einfach ausprobieren <weiter> Eclipse Entwicklungsumgebung: was man sieht

27 Eclipse Java Perspective

28 Eclipse Open Source Entwicklungsumgebung
neben Java auch C++, Python, PHP, UML, … Views (Drag&Drop) Plug-In-Architektur selbst in Java, aber nicht plattformunabhängig Features: (Syntaxhervorhebung), Codevervollständigung, Folding, Formatting, Access- Highlighting, Views (Package-Explorer, Outline, Console, JavaDoc, Call Hierarchy, Tasks, ...), Perspectives (Java, Debug, ...), ...

29 Objekte Attribute Methoden
Objektorientierung Objekte Attribute Methoden wir machen das als praktischen Teil

30 Objekte Vererbungsbeziehung

31 Objekte Code im erbenden Bot

32 <<instanceOf>>
Objekte Klasse != Instanz <<instanceOf>>

33 Attribute/ Methoden Attribute und Methoden: Programmiert mal!

34 step over / step into / step out
Debugger Run Configuration Debug Perspective Breakpoints Variable View step over / step into / step out (Hot Code Replace)


Herunterladen ppt "Informatik Sommercamp 2012"

Ähnliche Präsentationen


Google-Anzeigen