Kennenlernen - Hochschule Darmstadt

Werbung
1. Einführung
Einführung in die
Programmierung (fbw)
Sommersemester 2008
Prof. Dr. Bernhard Humm
Hochschule Darmstadt, fbi
1
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Agenda
Kennenlernen
Kennenlernen
Übersicht über den Kurs
Organisation
Systementwurf
Programmiersprachen
Algorithmen
Literatur
Kennenlernen
Was ist Ihr studentischer und eventuell beruflicher Hintergrund?
Welche Computererfahrungen haben Sie?
Kennen Sie schon eine Programmiersprache?
Haben Sie schon in Java programmiert?
3
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Agenda
Kennenlernen
Übersicht
Übersicht
überüber
den den
KursKurs
Organisation
Systementwurf
Programmiersprachen
Algorithmen
Literatur
Übersicht über den Kurs
Ein Zitat zu Beginn…
Vor der Wahl,
ein theoretischer Physiker oder ein
Programmierer zu werden,
entschied ich mich für die intellektuell
anspruchsvollere Aufgabe
Edsger W. Dijkstra (1930–2002)
auf der sd&m-Konferenz in Bonn, 2001
5
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Übersicht über den Kurs
Was ich gerne vermitteln möchte
Einführung in die
Programmierung
Konzepte
Programmieren
Werkzeuge
Systementwurf
Logo
FMS Logo V 6.12.0
Programmiersprachen
BlueJ
JDK 1.6
Algorithmen u. Funktionen
Java
BlueJ V2.1.3
Kontrollstrukturen
Syntax & Semantik
Datenstrukturen
Guter Programmierstil
Erweiterte Konzepte
NetBeans IDE 6.0 BlueJ
Edition
Objekt-Orientierung
Subversion + TortoiseSVN
Praktikum, Diskussionen, Ausblicke zum Weiterdenken
6
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Übersicht über den Kurs
Übersicht über den gesamten Kurs
1. Einführung
2. Operationen
3. Variablen
4. Kontrollstrukturen
5. Klassen und Objekte
6. Konstruktoren
7. Klassenmethoden
8. Datentypen
9. Vererbung
10. Pakete
11. JDK Klassenbibliothek
12. Kontrollstrukturen in Java
7
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Agenda
Kennenlernen
Übersicht über den Kurs
Organisation
Organisation
Systementwurf
Programmiersprachen
Algorithmen
Literatur
Organisation
Vorlesung
– Wöchentlich mittwochs ab 12:00
– Folien können von meiner Homepage heruntergeladen werden: www.fbi.h-da.de/~b.humm
Praktikum
– Wöchentlich mittwochs, verschränkt mit der Vorlesung (bis 15:45)
– Aufgaben können von meiner Homepage heruntergeladen werden
– Bearbeitung der Übungsaufgaben alleine oder in Zweiergruppen
– zusätzliches Üben ist zwingend notwendig!
– Die Entwicklungsumgebung besteht aus Open Source Werkzeugen und kann und soll zu
Hause implementiert werden. Installationanleitung auf meiner Homepage
Leistungsnachweis
– Klausur in der ersten Prüfungswoche
9
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Agenda
Kennenlernen
Übersicht über den Kurs
Organisation
Systementwurf
Systementwurf
Programmiersprachen
Algorithmen
Literatur
Systementwurf
Vom Problem zum Programm
Problem
• komplex
• mehrdeutig
Analyse
Mensch
• semi-formal
• nicht vollständig
Design /
Algorithmus
• semi-formal
• nicht vollständig
Design
Programmierung
Maschine
11
Spezifikation
Compilation
Deployment
Ausführung
Programm
• präzise
• meist normiert
• unabhängig vom Prozessor
Maschinenprogramm
• primitiv
• abhängig vom Prozessor
Laufzeitumgebung
• auf konkretem Prozessor
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Systementwurf
Programmieren ist …
…ein Problem so exakt beschreiben,
dass es ein Computer lösen kann
kreative Tätigkeit
Ingenieurtätigkeit
Nur wenige Leute können gut programmieren
12
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Agenda
Kennenlernen
Übersicht über den Kurs
Organisation
Systementwurf
Programmiersprachen
Programmiersprachen
Algorithmen
Literatur
Programmiersprachen
Familien von Programmiersprachen
ALGOL, AWK, BASIC, C, COBOL,
FORTRAN, Pascal, PL/1, REXX, Cyclone
Prozedurale
Sprachen
je Prozessortyp
Assemblerund Maschinensprachen
Funktionale
Sprachen
LISP, Logo, ML, Scheme,
Haskell, OPAL, Miranda
Programmiersprachen
Auzeichnungssprachen
(z.B. HTML, XML),
Datenbanksprachen
(zum Beispiel SQL,
dBase, Clipper),
etc.
Sonstige
Sprachen und
Umgebungen
Objektorientierte
Sprachen
Logische und
regelbasierte
Sprachen
Smalltalk, Eiffel,
C++, Objective-C,
Java, C#,
Oberon, Python, Ruby
Prolog
OPS5, XSLT
14
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Agenda
Kennenlernen
Übersicht über den Kurs
Organisation
Systementwurf
Programmiersprachen
Algorithmen
Algorithmen
Literatur
Algorithmen
Algorithmen im Alltag: Kochrezepte
16
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
act Quadrat zeichnen
Algorithmen
Start (Eingabe: Länge)
Algorithmen in der Geometrie:
Zeichnen eines Quadrats
Wie würden Sie es tun?
zeichne Linie: Länge
drehe Lineal: 90°
zeichne Linie: Länge
drehe Lineal: 90°
zeichne Linie: Länge
drehe Lineal: 90°
zeichne Linie: Länge
Ende
17
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Agenda
Kennenlernen
Übersicht über den Kurs
Organisation
Systementwurf
Programmiersprachen
Algorithmen
Literatur
Literatur
Literatur
Java:
– Krüger, Guido: Handbuch der Java-Programmierung. Addison-Wesley,2002,
3. Auflage oder http://www.javabuch.de/ kostenlos im Download als HTML-Version
(Nachfolger von "Go To Java 2" und "Go To Java 2, 2. Auflage“)
– Java Tutorial für Einsteiger: http://www.gailer-net.de/tutorials/java/
– Java-Seiten von Sun: http://www.javasoft.com/
– The Java Tutorial - A practical Guide for Programmers: http://java.sun.com/series/tutorial/
– Javaworld (Online-Zeitschrift): http://www.javaworld.com/
Logo:
– FMS Logo Tutorial
– FMS Logo Online Hilfe
BlueJ:
– BlueJ Homepage: http://www.bluej.org/
19
Prof. Dr. Bernhard Humm, Hochschule Darmstadt, FB Informatik: Einführung in die Programmierung (fbw), SS 2008. 26.3.2008
Herunterladen