• Keine Ergebnisse gefunden

Programmieren I + II

N/A
N/A
Protected

Academic year: 2022

Aktie "Programmieren I + II"

Copied!
17
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Programmieren I + II

Werner Struckmann

Institut für Programmierung und Reaktive Systeme

Wintersemester 2012/2013 Sommersemester 2013

(2)

Was ist Informatik?

• Die Informatik ist die Wissenschaft von Aufbau, Darstellung, Speicherung,

Übertragung und Verarbeitung von Informationen. Dementsprechend befasst sich die Informatik mit allen Aspekten der Informationsverarbeitung.

• Die Informatik ist sowohl eine Grundlagenwissenschaft wie die Mathematik als auch eine Ingenieurwissenschaft.

• Die Informatik berührt in mehr oder weniger starkem Maße viele Gebiete in Industrie, Handel, Verwaltung und Wissenschaft. Die Berufschancen für Informatiker und Informatikerinnen sind vielseitig und günstig.

(3)

Was ist Informatik?

• Im Englischen heißt Informatik

Computer Science.

• Dieser Name besagt schon, dass Computer im Mittelpunkt stehen. Informatik ist aber – wie Sie im Laufe Ihres Studiums sehen werden – viel mehr.

(4)

Aufbau des Bachelorstudiengangs Informatik

• Pflichtbereich Informatik (ab 1. Semester)

• Wahlpflichtbereich Informatik (ab 2./3. Semester)

• Pflichtbereich Mathematik (ab 1. Semester)

• Wahlpflichtbereich Mathematik (ab 2. Semester)

• Nebenfach (ab 3. Semester)

• Schlüsselqualifikationen (ab 1. Semester)

• Seminar, Teamprojekt, Bachelorarbeit

(5)

Bereich 1.Semester(WS)

6 LP 6 LP 15 LP

5 LP 8 LP

5 LP 6 LP

5 LP 5 LP

5 LP

5 LP 5 LP 5 LP 5 LP

4 LP

10 LP 10 LP

5 LP 5 LP

5 LP

31

Pflichtmodule Wahlpflichtmodule

WahlpflichtrModul

Informatik:

WahlpflichtrModul

Informatik:

WahlpflichtrModul

NebenfachrModul WahlpflichtrModul

NebenfachrModul 5LP NebenfachrModul

5LP

Wissenschaftliches

30 30

5LP

2LP

Mathematik:

WahlpflichtrModul

"Schwerpunkteim Informatikstudium"

Ringvorlesung ElektrotechnischeGrundr

Informatik lagenderTechnischen

Informatik:

WahlpflichtrModul

Seminar 5LP Teamprojekt

5LP

Computernetze1 SoftwareEngineering

12LP

Betriebssysteme

Informatik:

Kompetenzr bereich Mathematik

[35LP]

LineareAlgebra Analysis

Nebenfach [14r19LP]

Mathematik:

Orientierungstage

Programmieren1

Algorithmenund Datenstrukturen

DiskreteMathematik

Schlüsselqualifikationen Arbeiten

™180LP 29 Schlüsselr qualifikationen

[10LP]

Schlüsselqualifikationen

4LP 4LP

29

MusterstudienplanBachelorstudiumInformatik(Beginn:Wintersemester)

2.Semester(SS)

Kompetenzr bereich Informatik [116r121LP]

Masterarbeit Programmieren2

EinführungindieLogik

TheoretischeInformatik1

Bachelorarbeit 5.Semester(WS) 6.Semester(SS) 3.Semester(WS) 4.Semester(SS)

Wahlmodule 31 Relationale

Datenbanksysteme1

TheoretischeInformatik2 TechnischeInformatik1+2

8LP

(6)

Anmerkungen zu den Studiengängen

Die Studiengänge unterscheiden sich im Detail. Beispiel:

• Teamprojekt:

◦ Informatik: unbenotete Studienleistung

◦ Wirtschaftsinformatik: zusammen mit Seminar das Modul Projektarbeit, Prüfung, benotet

Bei Fragen zu Ihrem Studiengang können Sie sich an Ihr Prüfungsamt, an Ihren Studiengangskoordinator bzw. Ihre Studiengangskoordinatorin oder an Ihre

Studienberatung wenden.

(7)

Programmierausbildung im Bachelorstudiengang

• Imperative und objektorientierte Programmierung:

◦ Programmieren I (Java, 1. Sem.)

◦ Programmieren II (Java, 2. Sem.)

• Softwaretechnik:

◦ Softwaretechnik I (UML, 3. Sem.)

◦ Softwareentwicklungspraktikum (Java oder andere Sprache, UML, 4. Sem.)

• Funktionale Programmierung, weiterführende Konzepte:

◦ Programmieren f. Fortgeschrittene (Haskell, Wahlpflichtveranstaltung)

(8)

Programmieren I + II

Programmieren I: 6 LP, 2+2 (+ Rechnerübungen), im Wintersemester

Inhalt: Grundzüge der imperativen und objektorientierten Programmierung, Java Programmieren II: 6 LP, 2+2 (+ Rechnerübungen), im Sommersemester Inhalt: Vertiefung der objektorientierten Programmierung, Programmierung von Datenstrukturen, Parallelprogrammierung, Grafikprogrammierung, Ausblick

Prüfungsvorleistung/Studienleistung (je nach Studiengang): Hausaufgaben Prüfung: Klausur

(9)

Programmieren I

• Einführung: Vom Algorithmus zum Programm, Lexik, Syntax, Semantik

• Erste Schritte in Java

• Grundlagen der Sprache:

Datentypen, Ausdrücke und Anweisungen, imperative Programmierung

• Objektorientierte Programmierung:

Klassen, Objekte, Attribute, Methoden, Vererbung, Schnittstellen, statische Attribute und Methoden, Variablentypen, Polymorphismus, Beziehungen zwischen Klassen/Objekten

• Rekursive Methoden, ein Blick auf funktionale Programmierung

• Zuverlässigkeit von Programmen: Ausnahmebehandlung, Verifikation, Test

• Methoden zur Ein- und Ausgabe

• Ergänzungen und Fallstudien

(10)

Programmieren II

• Weitere Sprachkonzepte von Java:

lokale, anonyme Klassen, Wrapper-Klassen, spezielle String-Klassen, Aufzählungstypen, Packages, Annotationen

• Java und Datenstrukturen:

generische Datentypen, Listen, Keller, Schlangen, Bäume, Graphen,

Suchen u. Sortieren, Hash-Verfahren, Java Collections Framework (JCF)

• Parallelprogrammierung in Java, das Concurrent-Paket

• Grafikprogrammierung, Java Foundation Classes (JFC), AWT- und Swing-Klassen

• Ausblick: Entwurfsmuster, Paradigmen und Sprachen, Software Engineering

• Ergänzungen und Fallstudien

(11)

Algorithmen und Datenstrukturen

Die Gegenstände der Veranstaltung

Algorithmen und Datenstrukturen,

die in dieser Vorlesung benötigt werden, werden – soweit erforderlich – wiederholt/zusammengefasst.

(12)

Lesen

Das Buch als Betriebssystem ist noch lange nicht am Ende.

(Hans Magnus Enzensberger: Album. Suhrkamp, 2010)

(13)

Allgemeine Literatur

Ausführliche Empfehlungen finden Sie in der kommentierten Literaturliste.

• Peter Rechenberg, Gustav Pomberger: Informatik-Handbuch 4., aktualisierte und erweiterte Auflage, 2006, Hanser Verlag, München, Wien.

• Meyers Lexikonredaktion: Duden Informatik. 4. Auflage, 2006, Dudenverlag, Mannheim.

• Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, Clifford Stein:

Algorithmen – Eine Einführung. 3. überarbeitete und erweiterte Auflage, 2010, Oldenbourg Verlag, München.

(14)

Literatur zu Java

• Reinhard Schiedermeier: Programmieren mit Java.

2. aktualisierte Auflage, 2010, Pearson Studium, München.

• Robert Sedgewick, Kevin Wayne: Einführung in die Programmierung mit Java.

1. Auflage, 2011, Pearson, München.

• Dietmar Ratz [u. a.]: Grundkurs Programmieren in Java.

6. aktualisierte und erweiterte Auflage, 2011, Carl Hanser Verlag, München Wien.

Beachten Sie, dass es verschiedene Java-Versionen gibt.

(15)

Literatur zur Veranstaltung

Programmieren und Software Engineering – Begleitmaterial für die gleichnamigen Veranstaltungen an der Technischen Universität Braunschweig. Zusammengestellt von Ina Schaefer und Werner Struckmann, Pearson Custom Publishing, 2012, München, Harlow.

• Werner Struckmann, Dietmar Wätjen: Mathematik für Informatiker. 2007, Spektrum Akademischer Verlag, Heidelberg.

(16)

Literatur vom RRZN

Regionales Rechenzentrum für Niedersachsen, Leibniz Universität Hannover.

Java, 1. und 2. Band

Grundlagen der Programmierung

Unix – Eine Einführung in die Benutzung

Linux – Nutzung mit der grafischen Oberfläche KDE

Diese Bücher sind im Gauß-IT-Zentrum der TU erhältlich.

(17)

Zum Inhalt der Folien

Die Folien beinhalten nicht die gesamte Vorlesung.

Schreiben Sie nicht das auf, was auf den Folien steht, sondern das, was dazu gesagt oder angeschrieben wird.

Referenzen

ÄHNLICHE DOKUMENTE

Die Methode remove(int n) soll das Element an Position n der aktuellen Liste löschen.. Die Methode get(int n) soll das Element an Position n der aktuellen

b) Testen Sie Ihre Implementierung, indem Sie eine Klasse LinkedListStackTest anle- gen, mit der alle Methoden des Interfaces für die Datentypen Integer und Character mit JUnit

Halten Sie sich bei der Programmierung an die in der Vorlesung vorgestellten Richtlini- en zur Formatierung von Java-Programmen. Auf der Internetseite zu dieser Veranstal- tung

Ein Kakuro-Rätsel besteht aus einer rechteckigen, nicht notwendigerweise quadratischen Matrix aus schwarzen, grauen und weißen Feldern. Die schwarzen Felder bleiben leer. Die

Pflichtaufgabe 78: Die erste Pflichtaufgabe dieses Semesters war es, eine csv- Datei, die Adressen enthält, einzulesen, sortiert in einer verketteten Liste zu speichern und aus-

c) Schreiben Sie eine Methode int anzahl(), die die Anzahl der nichtleeren Knoten des aktuellen Baums liefert. Durch die Berechnung darf der Baum nicht verändert werden.. d)

München: Hanser Verlag, 2000 [10] Regionales Rechenzentrum für Niedersachsen RRZN (Hrsg.): Java 6 (1. Hannover: Regionales Rechenzentrum für Niedersachsen

Eine Klasse beschreibt die Struktur und das Verhalten einer Menge gleichartiger