Berner Fachhochschule Technik und Informatik Fachbereich Elektro- und Kommunikationstechnik Labor für Technische Informatik Projektarbeit Informatik 4 UÄtv~ ]tv~ © 2007, BFH-TI, WBR1 Dateiname: Erstellt: Autor: Version: Projektarbeit Info4.DOC Mai 2007 Roger Weber 1.0 Projektarbeit Informatik 4 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einführung .......................................................................................................................................................1 1.1 Allgemeine Ziele..................................................................................................................................... 1 1.2 Themen ................................................................................................................................................... 1 1.3 Mögliches Vorgehen ............................................................................................................................... 1 1.4 Präsentation der Arbeit............................................................................................................................ 1 1.5 Abzugebende Unterlagen ........................................................................................................................ 1 1.6 Bewertung ............................................................................................................................................... 1 1.7 Weitere Unterlagen ................................................................................................................................. 2 2 GUI mit Swing .................................................................................................................................................3 Version 1.0, 09.05.07 Seite II Projektarbeit Informatik 4 Einführung 1 Einführung 1.1 Allgemeine Ziele Mit der vorliegenden Projektarbeit sollen folgende Ziele erreicht werden: 1. Der Stoff des Unterrichtsmoduls "Informatik 4" soll durch das Programmieren einer etwas umfangreicheren Anwendung gefestigt und vertieft werden. Insbesondere geht es darum, ein objektorientiertes Design zu erstellen und dieses anschliessend in Code umzusetzen. 2. Die Zusammenarbeit im Team soll gefördert werden. Diese Projektarbeit wird deshalb in Dreier- oder Vierergruppen durchgeführt. 1.2 Themen Sie können ein eigenes Thema wählen. Voraussetzungen sind: 1) Das Programm ist eine Java-Applikation. 2) Die Applikation verwendet ein GUI, welches sie in Swing programmieren. 1.3 Mögliches Vorgehen • • • • • • Besprechen sie das Thema bitte vor Projektstart mit mir. Machen sie sich am Anfang des Projektes einen Zeitplan und aktualisieren sie diesen laufend. Erstellen sie ein Design für ihre Software bevor sie mit dem Codieren beginnen. Aktualisieren sie das Design laufend. Implementieren sie den Code Führen sie laufend Tests durch. Dokumentieren sie die wichtigsten Tests. Führen sie während der Projektarbeit ein Journal, in welchem sie die gemachten Erkenntnisse, Probleme und Lösungen notieren. 1.4 Präsentation der Arbeit Am Schluss des Semesters erhalten sie Gelegenheit, ihre Arbeit innerhalb der Klasse zu präsentieren. Die Art der Präsentation wird während dem Unterricht innerhalb der Klasse festgelegt. 1.5 Abzugebende Unterlagen • • • Design, ca.10 Seiten A4: Projektübersicht, Klassendiagramm, Sequenzdiagramme usw. Bedienungsanleitung, allenfalls mit Installationsanleitung gut kommentierter Source-Code, Javadoc Alles in elektronischer Form, per e-Mail oder auf CD Spätester Abgabetermin ist der 10. August 2007. 1.6 Bewertung Die Projektarbeit wird bewertet. Bewertungskriterien sind: • Design • Code-Qualität • Funktionalität und Zielerreichung Version 1.0, 09.05.07 Seite 1 Projektarbeit Informatik 3 Einführung Detaillierte Angaben zu den Bewertungskriterien finden sie auf dem zusätzlichen Bewertungsblatt. In der Regel wird eine Gruppenbewertung durchgeführt. Ausnahmen: - Falls Sie dies wünschen, können Sie eine individuelle Bewertung verlangen. Dies müssen Sie mir am ersten Projekttag bekannt geben. In diesem Falle müssen Sie angeben, welche Arbeiten von wem durchgeführt wurde. - Ich behalte mir vor, Gruppenmitglieder welche sich nicht wesentlich an der Arbeit beteiligen, individuell tiefer zu bewerten als die Gruppe. 1.7 Weitere Unterlagen Weitere Angaben finden sie auf meiner Homepage unter https://prof.hti.bfh.ch/index.php?id=544 Version 1.0, 09.05.07 Seite 2 Projektarbeit Informatik 4 GUI mit Swing 2 GUI mit Swing Swing ist eine etwas modernere Bibliothek zur Programmierung von GUI’s als AWT, sie wird jodoch sehr ähnlich wie AWT programmiert. Wesentlichste Unterschiede sind: • Die Klassennamen beginnen mit einem „J“. z.B. JButton statt Button. • Eine Komponente wird nicht einfach mit „add“ auf dem Fenster zugefügt. Zuerst muss eine Methode „getContentPane“ aufgerufen werden: auf dem von ihr zurückgegebenen Container können die Komponenten mit „add“ zugefügt werden. • Anstelle der Methode „paint“ wird „paintComponent“ verwendet. • Gezeichnet wird in einem JPanel, ein Canvas gibt es in Swing nicht. Dieses Kapitel gibt ihnen eine kurze Übersicht zu einigen Swing-Klassen am Beispiel des Spiels "4Gewinnt": Class JFrame java.lang.Object java.awt.Component java.awt.Container java.awt.Window java.awt.Frame javax.swing.JFrame Class JOptionPane java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JOptionPane Class JMenuBar java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JMenuBar Version 1.0, 09.05.07 Seite 3 Projektarbeit Informatik 4 GUI mit Swing Class JButton java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.AbstractButton javax.swing.JButton Class JPanel java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JPanel Class JLabel java.lang.Object java.awt.Component java.awt.Container javax.swing.JComponent javax.swing.JLabel Einen guten Einstieg in Swing finden sie auf dem Internet unter http://www.galileocomputing.de/openbook/javainsel6 Kapitel 14. Version 1.0, 09.05.07 Seite 4