Java - von Stephan Gross am Montag, Juli 10, 2006 18:37 - 1 Kommentar
Ist Struts tot?
Neulich wurde in einem Forum die Frage gestellt, ob das Struts-Framework tot sei. In meiner Antwort habe ich mich auf den Lebenszyklus einer Technologie konzentriert, was ich hier noch ein bisschen ausführen möchte. Dieser Artikel gliedert sich in zwei Teile:
1. Tot oder Lebendig, 2. Deja Vu mit Ajax.
Grundsätzlich gehe ich bei Software von einem Lebenszyklus aus.
A) Nachdem eine Idee durch eine technische Implementierung geboren ist, durchlebt diese ihre Kindheit, in der ganz viele Erfahrungen gesammelt werden, ganz viel zu lernen ist und man gelegentlich hinfällt.
B) Irgendwann ist eine Technik dann erwachsen.
Jetzt ist der Zeitpunkt,
– um Geld zu verdienen,
– um über eine Heirat mit einer anderen Technik (Tiles, Workflow, …) nachzudenken
– es gibt Folgetechniken (in dieser Analogie wären das dann Kinder).
C) Auch Erwachsene werden mal krank, müssen zum Arzt (Weiterentwicklung), kriegen mit dem Alter Gebrechen.
D) Erst wenn keine Entwicklung mehr stattfindet oder stattfinden kann würde ich davon reden, dass die Technik „stirbt“. Eine Weiterentwicklung wird beispielsweise dann unmöglich, wenn die zugrunde liegende Basis wegbricht.
Einige Beispiele für „tote“ Techniken: Wer nutzt heute noch ECL-Monitore? Wer Bipolar-Transistoren? Wie viele Hersteller gibt es für Motorola 6502 CPUs? Wo kriegt man ein EDO-Ram her? Wer liefert mir ein QIC-Tape?
Solange Java als Plattform, die von Struts benötigten Libraries, Servlets und JSPs noch auf aktuellen Rechnern laufen, wäre die Technik noch nicht tot.
Vorher kommt dann vielleicht noch eine Phase der Demenz, in der sich keiner mehr erinnert, wie man Struts-Anwendungen baut/pflegt, in der sich keiner mehr für Struts interessiert und keine Struts-Projekte bezahlt werden.
Sagen wir mal, Modula-2 ist in dieser „finalen“ Phase angelangt. Es gibt noch Compiler, die übersetzten Programme laufen noch und es gibt noch genügend Entwickler, die mal Modula-2 gesehen/genutzt haben.
Für produktive Systeme setze ich stärker auf die „erwachsenen“ Techniken. Von Neuerungen erwarte ich einen kurzen Feedback-Zyklus, so dass ich schnell feststellen kann, ob mir die Technik nützt, oder ob „der neue Schuh“ drückt.
Abschließend möchte ich einen Rückblick als alternativen Aspekt auf Ajax eröffnen:
In den 90er Jahren gab es ein marktbeherrschendes Unternehmen Netscape, welches kleinere, innovative Firmen aufkaufte. Eines der Unternehmen hat eine Technik angeboten (Mambo, Conga oder so ähnlich), die dem heutigen Web 2.0 sehr ähnlich ist.
Im Web habe ich einen älteren Link gefunden, in dem DataChannel’s WebBroker erwähnt wird, welches XML und HTTP gebündelt hat.
Wir haben damals auch einmal einen Rich-Client geschrieben, der in JavaScript auf dem Client aus übermittelten Daten das DOM verändert hat, statt die Seite zu reloaden.
Das hat damals aber nicht so richtig funktioniert, auch wegen Inkompatibilitäten bei den Browsern und wegen Unzulänglichkeiten bei den Browser-Implementierungen.
Heute gibt es sehr viele aktuelle Sicherheitsprobleme, bei denen Microsoft immer wieder empfiehlt, das ActiveScripting auszuschalten.
… und plötzlich funktioniert Web 2.0 nicht mehr.
Ich persönlich halte nichts vom Hype „an sich“. Andere interessieren sich mehr für die Neuheiten und probieren viele Techniken in der frühen Kindheit aus. Ich kann mich jedoch mehr für Coole Designs, fette Algorithmen, schöne Spezifikationen und interessante und gut geschriebene Bücher begeistern.
1 Kommentar
Ulf Bicker
Kommentieren
Weitere Empfehlungen:
Java - Jul 19, 2011 20:30 - 0 Kommentare
Eine (wirklich gute) Einführung in Maven
Mehr Artikel der Kategorie Softwarearchitekturen
- Decorator Pattern in Java
- Cloud Computing mit Google App Engine und Java
- JMS mit Oracle Advanced Queueing
- Buchempfehlung: Service-orientierte Architekturen mit Web Services. Konzepte – Standards – Praxis
- Einführung in SOA – Serviceorientierte Architekturen
Datenbanken, Internet Technologien - Nov 19, 2009 9:24 - 0 Kommentare
Oracle WebServices im praktischen Einsatz
More In Datenbanken
- JMS mit Oracle Advanced Queueing
- Eine kurze Einführung in db4o
- Native Kompilierung von PL/SQL-Routinen in Oracle 10g
Hallo,
die Aussage: „Grundsätzlich gehe ich bei Software von einem Lebenszyklus aus.“ finde ich einwenig schlecht getroffen.
Da man unter dem Begriff „Software Life Cycle“ in der IT allgemein etwas anderes versteht.
Die Softwareentwicklung ist eine Ingenieurdisziplin. Bei der Softwareentwicklung spricht man von Software „Lebenszyklus“. Life cycle Modellen sind abstrakten Beschreibungen von der strukturierten, methodischen Entwicklung und Änderungsprozeß, das typischerweise die Hauptstadien in der Herstellung und Wartung von lauffähige Software zeigen.
Die Entwicklungs-Modelle betrachten einen umfassenden Bereich, in welcher die Anforderungen, Entwurfsspezifikationen, Aktivitäten u.a. in betrachte werden. Bei der Definition von „life cycle“, werden auch die Benutzung und Wartung der Software betrachtet.
Ulf Bicker