Jens WellerFolie: 1 20.10.2004 Projektseminar Java Wintersemester 2004/2005

Preview:

Citation preview

Jens WellerFolie: 120.10.2004

Projektseminar Java

Projektseminar Java

Wintersemester 2004/2005

Jens WellerFolie: 220.10.2004

Projektseminar Java

Gliederung

• Organisatorisches• Vortragstechnik• Code Conventions• Wissenschaftliches Arbeiten

Jens WellerFolie: 320.10.2004

Projektseminar Java

Projektseminar Java

Organisatorisches

Jens WellerFolie: 420.10.2004

Projektseminar Java

Kontakt

• weller@wise.wiwi.tu-dresden.de• http://wiseweb.wiwi.tu-dresden.de/

Jens WellerFolie: 520.10.2004

Projektseminar Java

Ziele der Lehrveranstaltung

• Moderne Softwareentwicklung erlernen

• Abstraktionsvermögen schulen• Teamfähigkeit trainieren• OO-Paradigma vertiefen• Neue Technologien erlernen• Programmiertechniken in Java

festigen und vertiefen

Jens WellerFolie: 620.10.2004

Projektseminar Java

Gegenstand der Veranstaltung

• 4 Gewinnt• Spiel verteilt

übers Netz• Zuschauen bei

Partien möglich

Jens WellerFolie: 720.10.2004

Projektseminar Java

Zeitplanung

Einführung Wochenend-seminar

Analyse/Entwurf

Implemen-tierung

20.10. : Einführung und Ausgabe der Vortragsthemen13./14.11.: Wochenendseminar in Meißen24.11.; 1.12.; 8.12: Erarbeitung der Analyse und des Entwurfs des Spiels

Ab 15.12. Implementierung in Java

Jens WellerFolie: 820.10.2004

Projektseminar Java

Projektseminar Java

Vortragstechnik

Jens WellerFolie: 920.10.2004

Projektseminar Java

Wie man es nicht macht...

• Vortragszeit (min) / 2 +/- 2 = Anzahl der Folien• Auf jeder Folien 7 +/- 2 Gedanken (Stichpunkte)• Grafiken zur Unterstützung verwenden• Sparsam mit Effekten umgehen

Jens WellerFolie: 1020.10.2004

Projektseminar Java

AIDA - Prinzip

Grundregel für erfolgreiche Präsentationen– Aufmerksamkeit (Attention)– Interesse (Interest)– Dringender Wunsch (Desire)– Aktion, Handlung (Action)

Jens WellerFolie: 1120.10.2004

Projektseminar Java

VortragsvorbereitungAnalyse

Strukturierung

Visualisierung

Probe

Ziele definierenWünsche und Ziele der Zuhörer analysieren

Gliederung erarbeiten Daten und Informationen zusammentragenDatenmenge an Erfordernisse anpassenInformationen in Muss/Soll/Kann unterteilenGliederung überarbeiten

Räumlichkeiten besichtigenMedien auswählenInformationen visualisierenTeilnehmerunterlagen erstellen

Probevortrag durchführenmögliche Fragen und Probleme klärenVortrag entsprechend anpassen

Jens WellerFolie: 1220.10.2004

Projektseminar Java

Vortragsgliederung

• Eröffnung ca. 10 % der Zeit

• Hauptteil ca. 75 % der Zeit

• Schluss ca. 15 % der Zeit

Jens WellerFolie: 1320.10.2004

Projektseminar Java

Eröffnung

• Begrüßung (Grußformel vorher überlegen)• Definition und Beschreibung des Themas• Darstellung der Zielsetzung• Erklärung, warum dies für den Zuhörer

wichtig oder sinnvoll ist• Anfang finden, der Interesse und

Erwartungen bei den Zuhörern weckt• Bekanntgabe des „Fahrplanes“

(Hauptgliederungspunkte, zeitlicher Ablauf)

Jens WellerFolie: 1420.10.2004

Projektseminar Java

Hauptteil

• Gliederung des Konzeptes in Haupt- und Unterpunkte

• Systematische Vorstellung des Themas

• Logischer Aufbau der Argumentation• Kurze Zusammenfassung am Ende

des Hauptteils• Interesse der Teilnehmer am Thema

halten

Jens WellerFolie: 1520.10.2004

Projektseminar Java

Schluss

• Gesamtzusammenfassung• Schlussfolgerungen• Schlussappell• Empfehlungen• Bedanken beim Publikum,

Grußformel zum Schluss

Jens WellerFolie: 1620.10.2004

Projektseminar Java

Projektseminar Java

Code Conventions

Jens WellerFolie: 1720.10.2004

Projektseminar Java

Code Conventions

• Einleitung• Standards vs. Suggestions• Namenskonventionen• Organisatorische Aspekte

Jens WellerFolie: 1820.10.2004

Projektseminar Java

Einführung• 80 % der Softwarekosten sind

Wartungskosten• Software wird nicht nur vom

ursprünglichen Programmierer selbst gewartet

• gute Lesbarkeit erforderlich• Fehlerwahrscheinlichkeit senken JEDER muss sich daran halten!

Jens WellerFolie: 1920.10.2004

Projektseminar Java

Lesbarkeit

.

.

.

int x=2;int y=3;System.out.println("vor trim:!"+m+"!"); //Def. von //Hilfsvar. und Ausg. d. Merkmals vor Leerz. weg m=m.trim();

if (m.length()>0) ma=gi.substring(1,gi.length());else{ma=ma.trim();

if (ma.length()>0) {applicationEinstellungen.setObjectForKey(ma,m);}}

.

.

.

Jens WellerFolie: 2020.10.2004

Projektseminar Java

Fehlerwahrscheinlichkeit

switch (condition){case ABC:

statements;break;

case DEF:statements;break;

...default:

statements;break;

}

if (condition){statements;

} else {statement;

}further statements;

Jens WellerFolie: 2120.10.2004

Projektseminar Java

Standards vs. Suggestions

• Standards müssen befolgt werden• Suggestions führen zu „gutem

Code“, von Ihnen kann im Ausnahmefall abgewichen werden

Jens WellerFolie: 2220.10.2004

Projektseminar Java

Beispiel: Standard

Using Constants rather than literals can save on maintenance. For example, if you have a tax constant set up und the tax rate changes, you have only one place to change the value. The

standard is to make a literal a constant when it is used more than once.

Bsp.: Avoid Using Literals Standard

int preisA;int preisB;

...

System.out.println(preisA * 1.16d);

System.out.println(preisB * 1.16d);

int preisA;int presiB;double TAX_MULT = 1.16d;

...

System.out.println(preisA * TAX_MULT);

System.out.println(preisB * TAX_MULT);

Quelle: PRESTWOOD, M: Prestwood Coding Convention, Vers. 1.7, 1999, http://www.prestwood.com/standards/pcc/, Download 13.10.2003

Jens WellerFolie: 2320.10.2004

Projektseminar Java

Beispiel: Suggestion

Whenever possible, take the time to combine reusable code into custom methods and access those methods from multiple spots. Do this even when the custom methods must behave slightly differently in two different situations. The analysis needed to make this custom method generic will pay for itself later in reuse.

Bsp.: Avoid Copy-and-Paste Programming Suggestion

Quelle: PRESTWOOD, M: Prestwood Coding Convention, Vers. 1.7, 1999, http://www.prestwood.com/standards/pcc/, Download 13.10.2003

Jens WellerFolie: 2420.10.2004

Projektseminar Java

Namenskonventionen 1/2

• Namen sollen über Funktion des Identifiers informieren

• Sprechende Namen• So kurz wie möglich; so lang wie

nötig• Namen werden generell in

englischer Sprache vergeben

Jens WellerFolie: 2520.10.2004

Projektseminar Java

Namenskonventionen 2/2

Substantive, erster Buchstabe jedes internen Wortes groß, ganze Worte verwenden

Verben, erster Buchstabe klein, erster Buchstabe jedes internen Wortes groß

alles Großbuchstaben, interne Worte durch „_“ getrennt

class Rasterclass ImageSprite

run()getBackground()

static final int MIN_WIDTH = 4;static final int MAX_WIDTH = 999;

Identifier Type

Methods

Constants

erster Buchstabe klein, erster Buchstabe jedes internen Wortes groß, sollten nicht mit „_“ oder „$“ beginnen

int i;char c;float myWidth;

Variables

Regel der Namensgebung Beispiel

Classes

Quelle: Java Code Conventions, ftp://ftp.javasoft.com/docs/codeconv/CodeConventions.pdf, Download: 14.01.2002

Jens WellerFolie: 2620.10.2004

Projektseminar Java

Organisatorische Aspekte

• Versionierung• zentraler Ansprechpartner• zentraler Abrufpunkt

Jens WellerFolie: 2720.10.2004

Projektseminar Java

Projektseminar Java

Wissenschaftliches Arbeiten

Jens WellerFolie: 2820.10.2004

Projektseminar Java

Wissenschaftliches Arbeiten 1/2

„When students make direct use of, or quote the work of others, they are required to acknowledge the source in every instance.“([Mass02], S. 13)

Plagiarism

„Copying or paraphrasing of another person’s work, be it published or unpublished, without clearly acknowledging it, will be deemed to be dishonest. Any candidate found guilty of plagiarism will be liable to the penalties listed in Regulation 13.“([Mass02], S. 14)

Intellectual Honesty

Jens WellerFolie: 2920.10.2004

Projektseminar Java

Dishonesty in examinations

„Any candidate who is found guilty of any dishonest practice in connection with any examination [...] shall be liable to the penalties hereinafter provided.

[...] the Academic Board [...] may disqualify the candidate from sitting for any examinations for such period as it thinks fit and may, if the candidate has been credited with a pass in the examination in respect of which the charge arose, cancel such credit.“ ([Mass02], S. 13)

Wissenschaftliches Arbeiten 2/2

Jens WellerFolie: 3020.10.2004

Projektseminar Java

Massey University College of Business (Hrsg.): „College of Business – Information and Policy Handbook 2002“, In: Internet: http://business.massey.ac.nz/2002PolicyHandbk.pdf, 2002, Download: 25.4.2003

[Mass02]

Quellen

Jens WellerFolie: 3120.10.2004

Projektseminar Java

Recommended