Archive for September, 2007

PHP 5.3 bekommt Namespaces

Saturday, September 29th, 2007

An sich erst für die Version 6 geplant aber vermutlich mit Version 5.3 beginnend erhält PHP Namespaces - zumindest wenn man diesem Blogeintrag folgt. Namespaces dienen dazu gleichnamige Identifier (Variablen, Methoden etc.) an bestimmte Namespaces zu binden und so die Probleme bei gleichnamigen Identifiern zu umgehen.

Mit der Einführung von Namespaces wird die Code-Organisation (bei großen Projekten) mit PHP vereinfacht. Auch umständliche Datei- oder Klassennamen wie

class Hauptkontext_Subkontext_Klassenname {
}

entfallen damit, da die Kontexte in Packages gepackt werden können und der Klassenname immer noch eindeutig ist.

JSON Viewer für Eclipse

Friday, September 28th, 2007

Das JSON Format (Java-Script Object Notation), ein leichtgewichtiges Format um Daten von einem Server zu einem Client (i.e. Browser) zu übertragen, welches beispielsweise gerne in AJAX-Anwendungen verwendet wird, ist von Natur aus nicht sonderlich lesbar.

Um die Lesbarkeit von JSON zu erhöhen gibt es ein Eclipse-Plugin (in einer sehr frühen Version), welches zum einen JSON in einer Baumstruktur darstellen kann. JSON kann auch als XML dargestellt und exportiert werden. Im weiteren ist es möglich die Validität von JSON Objekten zu überprüfen.

Das Plug-in steht bei Sourceforge zum Download bereit.

3D und Flex

Thursday, September 27th, 2007

Der Flashplayer unterstützt leider (noch) keine hardwarebeschleunigte 3D Darstellung. Nichts desto trotz sind für Flex und ActionScript3 3D Libraries vorhanden, die zumindest im Flashplayer 9 ordentlich performen.

Während sich Papervision3D langsam zum Standard für 3D durchsetzt, gibt es noch das in einem recht frühen Stadium befindlichen Sandy.

Für uns Anwendungsentwickler wird 3D dann erst richtig interessant, wenn 3D nicht ars per artem existiert sondern wenn sich User Interfaces 3D Effekte zu Nutze machen. Beispiele hierfür finden sich für PaperVision3D hier und hier und ein schönes Beispiel, welches Sandy nutzt findet sich hier.

Über Sinn oder Unsinn von 3D-Elementen wird noch zu diskutieren sein. Jedoch spricht m. E. nichts dagegen, einige Elemente, bspw. mehrseitige Formulare oder ähnliches, statt in einem Tabulator oder einem Akkordeon in einen 3D Würfel darzustellen.

Update: Zu den Beispielen mit PaperVision3D sind noch die vier auf dieser Seite, auch von Stephen Downs, zu ergänzen.

Neue Version des Zend Framework veröffentlicht

Thursday, September 27th, 2007

Am gestrigen Mittwoch hat Zend, die Version 1.0.2 des Zend Framework veröffentlicht. Diese Version beinhaltet nur kleinere Erweiterungen wie den Google Base Support, aber auch 93 bekannte Probleme. Eine Übersicht über alle behobenen Issues liefert der Issue-Tracker von Zend Framework.

Das Zend Framework ist ein selektiv einsetzbares Framework zur Entwicklung von Webanwendungen mit PHP und liefert Features wie MCV, Datenbankabstraktion u.v.a.m. Wir setzen das Framework in einer Reihe von Projekten mit Gewinn ein.

Das Zend Framework kann in der aktuellen Version hier herunter geladen werden.

Top Gründe für ein möglicherweise schief laufendes Projekt

Wednesday, September 26th, 2007

Die Truppe von JavaPosse hat bei Ihrem Gastspiel von der JavaZone 2007 in Oslo folgende Top Gründe für ein möglicherweise schief laufendes Projekt genannt:

  • Es dauert drei Monate um eine Checkbox im Web UI hinzuzufügen
  • Alles sieht so aus, als wäre es schneller es neu zu schreiben
  • Jeder im Projekt hat “Architekt” auf seiner Visitenkarte, aber niemand stimmt irgendwas zu
  • Gespräche fangen an mit: “…das, das ist wirklich einfach, Du musst lediglich…” und es folgt eine halbe Stunde Erklärungen
  • Man richtet sein Leben nach dem “Build” aus
  • Das GUI wird in AWT geschrieben …oder HTML 3.2
  • Das Projekt ist ein hausgemachtes Webframework
  • Irgendjemand hat fünf Stunden Meetings zu Deiner Arbeit addiert, weil die Projektzeit aus dem Rahmen läuft.
  • Der Typ, der Dich trainieren sollte, wirft einen Ordner mit Notizen auf Dich und rennt schadenfroh kichernd weg
  • Die Zeilen an XML übertreffen die Zeilen an Javacode um das zehnfache
  • Du fragst nach Unittests und erntest nur leere Blicke oder ein “Ja, das sollten wir wirklich tun”