Archiv für die Kategorie ‘Grundlagen der Informatik 2’

GDI-2: GUI-Editoren

Mittwoch, 16. Juli 2008

Das nächste Kapitel GUI-Grafikeditoren hat wieder eher einführenden Charakter (keine Tests, keine Aufgaben). Die Aufgabe besteht eher darin, den GUI-Editor Jigloo in Eclipse zu installieren und ein einfaches GUI-Programm, dessen Oberfläche im Schnelleinstieg manuell erstellt wurde, diesmal grafisch zusammenzuklicken.
Bei der Installations-Anleitung wird angegeben, man solle sich die ZIP-Datei des Jigloo-Plugins runterladen, ins Eclipse-Verzeichnis entpacken und Eclipse dann neu starten. Unter Eclipse Ganymede (3.4) funktioniert aber auch der Update-Mechanismus einwandfrei: Man muss nur im Menü unter Help auf Software-Updates… gehen und auf dem Reiter Available Software den Button Add Site… anklicken. Hier fügt man die Jigloo-Update-URL

http://cloudgarden1.com/update-site

hinzu und kann dann den Jigloo GUI Builder auswählen und installieren. Der Vorteil an dieser Methode ist, dass man so später auch installierte Plugins updaten kann.

GDI-2: Java-GUIs testen

Dienstag, 15. Juli 2008

Hab gerade das Kapitel Testen von GUIs durchgearbeitet. Dabei wird das Testframework Abbot verwendet, das eine Erweiterung von JUnit ist. Es wird erklärt, wie man die Abbot-JARs in ein Eclipse-Projekt einbindet, den Skript-Rekorder Costello startet und damit Benutzereingaben mitschneidet und wie man bei testgetriebener Entwicklung die Abbot-API direkt einsetzt.

Hierbei bin ich in einige Fallstricke geraten:

  • Das Abbot-Archiv der Version 1.0.1, wird in zwei Varianten zum Download angeboten: Als ZIP- oder als TGZ-Datei. Man sollte unbedingt die ZIP-Datei wählen, da in der TGZ-Datei die Datei costello.jar fehlt.
  • Bei Eclipse unter Linux ist die Standardzeichenkodierung der Sourcecodedateien UTF-8. Dies führt zu Problemen, wenn man die Beispielprojekte aus dem Kurs einbindet, da diese unter Windows erstellt wurden und dort Eclipse Cp1252 als Standardzeichenkodierung hat. Man kann aber in den Projekt- oder Dateieigenschaften die Zeichenkodierung umstellen (in der Auswahlliste ist Cp1252 nicht enthalten nur der ähnliche aber nicht identische ISO-8859-1; man muss es direkt reinschreiben)
  • Das Erzeugen eines JUnit-Tests aus einem aufgezeichneten Costello-Skript funktionierte bei mir nur mit absoluter Pfadangabe zum Skript. Den Beispielsourcecode, der nur eine relative Pfadangabe enthielt, musste ich anpassen. Die Dokumentation zum ScriptFixture-Konstruktor gibt aber nicht an, ob man nur absolute Pfade verwenden darf.

Ich finde es gut, dass dem auch in der Praxis so wichtigen Thema Testen Platz in einem eigenen kleinen Kapitel gegeben wird. Allerdings gibt es im gesamten Kapitel weder Aufgaben noch Tests. In GDI-1 wurde JUnit kurz eingeführt, dort allerdings die Version 4, die mit Annotationen arbeitet. Abbot basiert jedoch noch auf der 3er-Version, in der die einzelnen Tests nicht mit der Annotation @Test markiert werden sondern deren Methodenname mit “test” beginnen muss. Auf die Unterschiede hätte man hier vielleicht noch etwas näher eingehen können und vielleicht auch, wie man in Eclipse die eingebaute JUnit-Unterstützung verwendet.

Zwei Aufgaben GDI-2

Dienstag, 08. Juli 2008

Die ersten beiden Einsendeaufgaben von Grundlagen der Informatik 2 (GDI-2) sind korrigiert. Naja, es war auch nicht wirklich eine Herausforderung. Einmal sollte ein simples Begrüßungsfenster in Swing entwickelt werden. Die andere Aufgabe stammt aus dem Datenbankkapitel, das relativ unabhängig von den anderen ist. Hier sollte man in SQL eine Tabelle erzeugen, einen Datensatz einfügen und eine Abfrage ausführen. Gestählt durch das gerade abgeschlossene SQL-Modul war das natürlich ein Klacks ;-)

Eclipse-Tipps

Freitag, 04. Juli 2008

Im Modul Grundlagen der Informatik 2 gibt es Einführung in Eclipse. Als Ergänzung hab ich mal eine kleine Seite mit Tipps zu Eclipse angefangen. Hier sind für den Anfang die wichtigsten Tastaturkürzel beschrieben, ohne die man eigentlich gar nicht auskommt ;-)

Weiter mit GDI-2 und Mathe

Freitag, 04. Juli 2008

Mein Ziel ist es beim nächsten Klausurtermin mal zwei statt nur einer Klausur zu schreiben. Vielleicht kann ich ja dann das Tempo halten und werde tatsächlich noch vor der Rente fertig ;-)

Mathematisch-logische Grundlagen der Informatik hatte ich schon mal angefangen, aber erstmal zurückgestellt. Bearbeitungsstand war etwa ein Drittel der Aufgaben. Mittlerweile ist der Kurs überarbeit worden und es sind einige Teile optional und nicht mehr prüfungsrelevant. Daher hab ich mir das Modul nochmal neu freischalten lassen, muss dann aber die schon bestandenen Tests und Aufgaben nochmal machen/abgeben. Aber im Gegensatz zu den Programmiermodulen sind hier schon die Tests manchmal so knackig, dass man schon mal ne halbe Stunde oder so dran sitzt, bis man die Lösung hat. Sonst sind die Tests eher simple Wissensabfragen.

Die Alternative wäre gewesen, die alte Kursversion weiter zu machen aber dann auch mit allen Teilen, die in der neuen Version nicht mehr Pflicht sind.

Als Gegengewicht hab ich dann den zweiten Teil von Grundlagen der Informatik belegt. Dort geht es weiter mit Java 6 und Oberflächenprogrammierung mit Swing. Ein bisschen Datenbankprogrammierung mit JDBC und JPA rundet das ganze ab (diesmal wird Apache Derby als Datenbanksystem verwendet, das bei Java 6 auch als Java-DB standardmäßig enthalten ist). Als IDE wird diesmal Eclipse verwendet.

Dafür gibt es dann ein Kapitel mit einem Schnelleinstieg in Eclipse und es wird später auch nochmal auf Spezielthemen eingegangen. Z.B. wird im Datenbank-Kapitel erklärt, wie man das QuantumDB-Plugin installiert und damit auf den Derby-Datenbankserver zugreifen kann.