Donnerstag, 30. Juli 2009

Vereinheitlichung von GUIs komplexer Applikationen

In vielen komplexeren Projekten hat man das Problem das verschiedene Leute GUI-Teile implementieren. Das führt in vielen Fällen zu einer inkonsistenten GUIs. Dieses Problem kann man auf verschiedenen Wegen angehen. Der Weg 1 wäre einen eigenen Style Guide zu entwickeln und umzusetzen. Dieser Weg erzeugt sehr gute Resultate ist aber aufwendig. Bei der Umsetzung in Java hat man zusätzlich das Problem, dass einige Anforderungen des Style Guides in den Java-Klassen selbst umgesetzt werden müssen andere Dinge hingegen eine Anpassung des Look and Feels (L&F) erfordern.
Der 2. Weg ist pragmatischer und wesentlich einfacher und schneller umzusetzen, dafür sind die Resultate nicht ganz so gut, stellen aber in den meisten Fällen eine wesentlich Verbesserung gegenüber der Ausgangssituation dar. Folgende Regeln sind dafür umzusetzen:
  • Verwendung möglichst wenigen Layout Manager z.B. BoxLayout, wenn komplizierter ist und sonst BorderLayout bzw. FlowLayout für Button-Reihen
  • Einen Entwickler montiert bzw. überarbeitet der alle Oberflächen
  • Convenience Methoden z.B. wenn man Textabschnitte bold setzt
  • Minimale und sehr einfache Klassen die alle Entwickler nutzen z.B. für Fenster, dort sind dann Font, Rahmen und Layoutmanager werden schon richtig gesetzt
  • Kreuzprüfung der GUI-Teile, d.h. die Entwickler testen die GUI-Teile die von anderen Entwicklern erstellt wurden
Diese Punkte garantieren kein einheitliches L&F der Oberflächen aber sie wirken Wunder und kosten fast nix. Ein weiterer wichtiger Punkt wenn es um das Interface zwischen Maschine und Mensch geht ist die Usability. Aus meiner Sicht ist es wichtig nicht nur in den Evaluationsphase Usability-Tests einzusetzen sondern schon in der Konzeptionsphase. Usability sollte den Entwicklungsprozess begleiten. Hier der Link zur bekanntesten Usability-Web-Seite. ES lohnt sich immer auf dieser Seite zu stöbern.

Freitag, 10. Juli 2009

Noch so ein Programmierer-Blog

Scheinbar gibt es noch ähnlich angelegte Blogs, wie diesen Blog. Schaut mal rein.

Buch zum Logging

Logging ist wenig beachteter Teil von vielen Projekten. Oft wird wenig Zeit in das Logging investiert, weil es kein zentrales Feature der Software ist. Dem entsprechend gut funktioniert es auch. Zur Zeit werden primär drei verschiedene Logging-APIs eingesetzt, log4j, commons-logging und das Logging des JDK (Bestandteil seit dem JDK 1.4). Mein persönlicher Favoriet log4j war aus meiner Sicht lange Zeit nicht allzu gut dokumentiert, vor allem nicht die Möglichkeit der XML-Konfiguration. Aus diesem Grund habe ich mir auch folgendes Buch gekauft. In ihm wird nicht nur log4j erläutert sondern auch das Logging-API des JDK. Aus meiner Sicht könnte es noch weiter in die Tiefe gehen obwohl es schon ein paar Spezialitäten anreisst. Es bietet allgemein ein recht guten Einstieg ins Logging für Programmierer die nicht nur den Logging-Code aus einem alten Projekt kopieren.

Bücherregal

Ich werde hier in loser Folge einige Bücher empfehlen die ich für meine Arbeit nutze. Den Anfang machte gestern ein Buch zu Tomcat.

Donnerstag, 9. Juli 2009

Tomcat Buch

Dieses Buch ist ein gutes Nachschlagewerk, wenn man mit der Entwicklung von Webapps vertraut ist und Spezialitäten des Apache Tomcat nutzen will. Vor allem für komplexere Web-Projekte jenseits von Spring ist es zu empfehlen als auch für Administratoren. Schon das Vorgängerbuch ist empfehlenswert.

c2in7y8qwm

c2in7y8qwm

Blog: Java ist auch nur eine Insel

Die meisten Programmierer werden das Buch "Java ist auch nur Insel" (Open Book) aus dem Galileo-Verlag kennen und als gutes, schnelles Nachschlagewerk schätzen. Der Autor des Buches, Christian Ullenboom , schreibt nicht nur Bücher, sondern auch noch einen interessanten Blog mit Tipps zum Thema Java.