Sie sind auf Seite 1von 26

Programmierung und Softwareentwicklung

bungen

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

Organisatorisches
Oliver Rhrdanz Softwaretechnikstudent, 3. Semester Bei Fragen: PSE Diskussionsforum im Ilias E-Mail: roehrdor@outlook.com ber Ilias an: OliverRoehrdanz Folien und Musterlsungen: werden bei Interesse zur Verfgung gestellt Tafelaufschriebe knnen fotografiert werden

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

Scheinbedingungen

Fr die meisten Orientierungsprfung

Prfung bis zum 4. bestanden haben (Schein notwendig)

Was msst ihr tun? Vorrechnen, je eine Haus- und bungsaufgaben 50% der Punkte in den Hausaufgaben erreichen Anwesend sein:

max. 2x von bungsstunde abmelden, dann Attest ntig

Einzelabgaben sind nicht zulssig

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

Abgaben und Korrektur


Welche Formate werden akzeptiert? *.zip *.pdf *.txt *.jpg / *.jpeg *.java Abgabename: PSE_2013_U_X_Sl_15_Grp_z.zip X Blattnummer Z Gruppennummer

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

Formalitten
Punktabzge: Plagiate 100% Abzug der Punkte Bei Nichtbeachtung des Styleguides (im Ilias verfgbar)

Bis zu 50% der Punkte (der jeweiligen Aufgabe)

Fehlen von Vor-, Nachname oder Martikelnummer auf einer oder mehreren Abgaben

Keine Punkte fr fehlende Person(en)

Falsche Dateiformate oder falsche benannte Abgaben Code lsst sich nicht kompilieren

Bis zu 100% der Punkte (der jeweiligen Aufgabe) Bis zu 25% der Punkte (der jeweiligen Aufgabe) Jede Zeile ist dagegen zu viel!
Programmierung und Softwareentwicklung bungen Slot 15

Die geforderte Ausgabe erfolgt nicht

Programme nicht ausreichend kommentiert

23.10.2013

Korrektur & bungsablauf


Korrektur dauert i.d.R. max. 8 Tage Korrektur wird im jeweiligen Abgabeforum eingetragen bungsablauf Besprechung der Aufgabe des letzten Hausaufgabenblatts Diskussion der aktuellen Themen der Vorlesung Lsung der Aufgaben aus dem bungsblatt Vorrechnen der Hausaufgaben an der Tafel

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 1: Allgemeines
Erklren Sie folgende Begriffe: Rechner Programm Programmiersprache Diskutieren Sie, wie man ein Java-Programm kompilieren und ausfhren kann Diskutieren Sie, was objektorientierte Programmiersprachen sind Nennen Sie grundlegend verschiedene Typen von Methoden

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 1: Allgemeines

Erklren Sie folgende Begriffe: Ein Rechner ist ein Apparat, der mit programmierbaren Rechenvorschriften Daten verarbeiten kann

Ein Programm ist eine Abfolge von Anweisungen, die vorgeben, wie ein Problem zu lsen ist. Eine Programmiersprache ist eine formale Sprache, mit der Programme geschrieben werden knnen

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 1: Allgemeines

Diskutieren Sie, wie man ein Java-Programm kompilieren und ausfhren kann

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 1: Allgemeines

Diskutieren Sie, wie man ein Java-Programm kompilieren und ausfhren kann
Kompilieren: javac PSE.java
Quelltext Quelltext PSE.java PSE.java Binrcode Binrcode PSE.class PSE.class

Ausfhren: java PSE


Binrcode Quelltext Binrcode PSE.class PSE.java PSE.class Binrcode Computer Computer PSE.class

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 1: Allgemeines

Diskutieren Sie, was objektorientierte Programmiersprachen sind

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 1: Allgemeines

Diskutieren Sie, was objektorientierte Programmiersprachen sind

Objektorientierte Sprachen: sind Hochsprachen (abstrakter als Assembler oder Maschinencode) untersttzen Klassen und somit die Organisationsstruktur der objektorientieren Programmierung Bspw. C++, C#, Java, Eiffel, Simula, ...

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 1: Allgemeines

Nennen Sie grundlegend verschiedene Typen von Methoden

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 1: Allgemeines

Nennen Sie grundlegend verschiedene Typen von Methoden

Es gibt, Kommandos (commands) und Abfragen (queries). Beispielsweise getter- und setter-Methoden. setter-Methoden tun etwas, ndern idR. den Wert von Attributen getter-Methoden liefern nur ein Ergebnis zurck ohne etwas zu ndern

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 2: Reale Klassen und Objekte
Stuttgart ist der Mittelpunkt einer wirtschaftlich, dynamischen Region mit hohem Verkehrsaufkommen, in der Mobilitt als wichtiger Standortfaktor erlebt wird. Stuttgart besitzt eines der effizientesten Nahverkehrsnetze in Deutschland. Dazu gehrt einerseits das moderne Stadtbahnnetz, bei dem die Straenbahnlinien in der Innenstadt in den Untergrund verlegt wurden. Stuttgart verfgt ber eine hervorragende Verkehrsinfrastruktur. Die Landeshauptstadt ist per Bahn, Flugzeug und Strae an alle wichtigen Metropolen und Wirtschaftsrume in Europa angebunden. In Stuttgart gibt es viele verschiedene Verkehrsmittel, wie die Bahnen, die Stadtbahn (U-Bahn und S-Bahn), die Busse, und ein Flughafen. Es gibt auch andere Verkehrsmittel. Stuttgart ist wirklich eine schne Stadt, auch annehmbar gro und es gibt viele Mglichkeiten seine Zeit zu verbringen. Stuttgart gefllt mir sehr gut, und Ihnen?
23.10.2013 Programmierung und Softwareentwicklung bungen

[Quelle: http://www.stuttgart.de] Slot 15

1. bungsblatt
Aufgabe 2: Reale Klassen und Objekte Diskutieren und nennen Sie die realen Klassen und Objekte anhand der Stuttgarter Verkehrsmittel. Geben Sie jeder Klasse einen aussagekrftigen Namen, den andere Entwickler verstehen knnen Nennen Sie fr jede Klasse mgliche Attribute und Methoden. Geben Sie jedem Attribut und jeder Methode einen aussagekrftigen Namen, den andere Entwickler verstehen knnen

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 2: Reale Klassen und Objekte

Diskutieren und nennen Sie die realen Klassen und Objekte anhand der Stuttgarter Verkehrsmittel. Geben Sie jeder Klasse einen aussagekrftigen Namen, den andere Entwickler verstehen knnen

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 2: Reale Klassen und Objekte

Diskutieren und nennen Sie die realen Klassen und Objekte anhand der Stuttgarter Verkehrsmittel. Geben Sie jeder Klasse einen aussagekrftigen Namen, den andere Entwickler verstehen knnen

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 2: Reale Klassen und Objekte

Nennen Sie fr jede Klasse mgliche Attribute und Methoden. Geben Sie jedem Attribut und jeder Methode einen aussagekrftigen Namen, den andere Entwickler verstehen knnen

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 2: Reale Klassen und Objekte

Nennen Sie fr jede Klasse mgliche Attribute und Methoden. Geben Sie jedem Attribut und jeder Methode einen aussagekrftigen Namen, den andere Entwickler verstehen knnen

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 3: Java Code Conventions Kommentare helfen beim Lesen und Verstehen des Codes. Schlecht angeordnete Kommentare knnen aber auch genau das Gegenteil bewirken. In Java gibt es zwei Arten von Kommentaren: Implementierungskommentare und Javadoc-Kommentare. Diskutieren Sie, wie man ein Java-Programm kommentieren kann.

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. bungsblatt
Aufgabe 3: Java Code Conventions

Implementierungskommentare: Beginnen mit // oder stehen in /* .. */ Kommentare werden nicht exportiert und sind nur in der Quellcodedatei einhalten Javadoc-Kommentare: Spezielle Kommentare die in /** */ stehen, knnen automatisch in HTMLDokumentation umgewandelt werden Genug Informationen bieten um Methoden ohne Codeeinsicht nutzen zu knnen

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. Hausaufgabenblatt
Abgabe bis: 01.11.2013 18:00 Das Institut fr Softwaretechnologie (ISTE) will als Anwendung einen kostenlosen Medienspieler fr Computer, z. B, Mac oder PC und Smartphone, z. B, iPhone 5 oder Galaxy S4 bauen und entwickeln. Diese Anwendung soll hnlich wie das iTunes Programm von Apple aufgebaut sein. Diese Anwendung heit ISTEMediaAnwendung. Die ISTEMedia-Anwendung soll einen Mediaplayer beinhalten, mit dem man digitale Musik, Videos und Filme auf dem Computer verwalten und abspielen kann. Mit der ISTEMedia-Anwendung kann man vor allem Musik, Filme und Videos auf seinem PC ansehen, hren, sortieren, gruppieren usw.
a) Machen Sie sich fr diesen Ausschnitt klar: Welche Klassen und Objekte existieren? (Nennen Sie mindestens vier Klassen und vier Objekte.) b) Identifizieren Sie nur fr drei Klassen in Aufgabe (a) mgliche Attribute (mindestens 3 wichtige Attribute) und Methoden (mindesten 3 wichtige Methoden). Geben Sie jedem Attribut und jeder Methode einen aussagekrftigen Namen, den andere Entwickler verstehen knnen. c) Erstellen Sie nur fr drei Klassen in Aufgabe (b) jeweils zwei verschiedene Objekte und geben Sie deren Attribute Werte. d) Was ist der Unterschied zwischen einer Klasse in der realen Welt und einem Objekt in der realen Welt? Begrnden Sie Ihre Antwort und geben Sie je ein reales Beispiel.

Aufgabe 1: Einfhrung in die OOP

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. Hausaufgabenblatt
Abgabe bis: 01.11.2013 18:00

Aufgabe 2: Erstes Programm in Java


a)Schreiben Sie ein Javaprogramm, das folgende Postanschrift vom ISTE auf der Konsole ausgibt. Kompilieren und testen Sie es.
Institut fr Softwaretechnologie Universittsstrae 38 70569 Stuttgart Deutschland

b)Geben Sie das folgende Programm in Ihren Computer ein. - Fgen Sie Kommentare zum Programm hinzu (z.B. wer hat das Programm geschrieben) - Kompilieren Sie den Java Code und dokumentieren Sie die Ausgaben Ihres Programms!

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. Hausaufgabenblatt
Abgabe bis: 01.11.2013 18:00

Aufgabe 3: Kommentare in Java


Kommentare helfen beim Lesen und Verstehen des Codes. Schlecht angeordnete Kommentare knnen aber auch genau das Gegenteil bewirken. In Java gibt es zwei Arten von Kommentaren: Implementierungskommentare und Javadoc-Kommentare. Diskutieren Sie, wie man ein Java-Programm kommentieren kann.

23.10.2013

Programmierung und Softwareentwicklung bungen

Slot 15

1. Hausaufgabenblatt
Abgabe bis: 01.11.2013 18:00

Aufgabe 3: Kommentare in Java


[...] Diskutieren Sie, wie man ein Java-Programm kommentieren kann. Javadoc-Kommentare: Stehen in /** Kommentar */ und knnen durch das Javadoc-Tool in HTML Dokumentationsdateien umgewandelt werden knnen. Mssen alle Informationen zur Benutzung der Klasse beinhalten ohne den Quellcode zu sehen Implementierungskommentare Stehen in /* Kommentar */ oder beginnen mit // Code lesbarer und besser verstndlich machen
23.10.2013 Programmierung und Softwareentwicklung bungen Slot 15