Java-Enterprise-Entwicklung

Aus Wikibooks
Wechseln zu: Navigation, Suche
Sleep.svg Dieses Buch ist verwaist. Es ist herrenlos und sucht dringend einen neuen Autor! Vielleicht kannst du etwas zum Inhalt beitragen? Wenn du dich traust, kannst du das Buch auch gern als neuer Autor übernehmen.
Es gibt eine Liste von weiteren verwaisten Büchern, vielleicht findest du dort ein Buch, welches du gern weiterschreiben willst?
Gnome-applications-office.svg Dieses Buch steht im Regal Programmierung.
Nuvola apps bookcase.svg Java Nuvola apps bookcase 1.svg Java-Enterprise-Entwicklung


  • Buchpatenschaft/Ansprechperson:

Hermann Woock

  • Sind Co-Autoren gegenwärtig erwünscht?

Zunächst möchte ich eine Grundlage schaffen. Solange möchte ich keine Co-Autoren zulassen.
Ideen sind im Diskussionsteil allerdings mehr als erwünscht.

Inhaltsverzeichnis


Zusammenfassung des Projekts [Bearbeiten]

  • Zielgruppe:

Dieses Buch ist für Entwickler und Architekten von Java-Enterprise-Anwendungen. Es richtet sich an Leute, die wissen wollen, wie eine Enterprise-Anwendung funktioniert und welche Frameworks und Bibliotheken dazu benötigt werden. Das Buch möchte dem Leser dabei helfen zu entscheiden, welche Technologien er in welcher Schicht seiner Software einsetzt, um seinen Wünschen am besten gerecht zu werden.

Der Leser sollte Erfahrung in der Java-Programmierung besitzen.

  • Lernziele:

Moderne Enterprise-Anwendungen bestehen aus vielen Megabytes. Dabei wird kein Projektteam all die dazu nötigen Zeilen Code selber schreiben. Viel davon sind Bibliotheken und Frameworks, die das Programm nutzt und die mit ihm zusammen ausgeliefert werden. Bei der Planung des Projektes muss man sich daher für eine Vielzahl von Third-Party-Produkten entscheiden. Bei der Fülle der auf dem Markt verfügbaren Projekte ist es schwierig, den Überblick zu bewahren. Insbesondere haben Teams durch einen hohen Zeitdruck nicht mehr die Zeit, sich mit all den Produkten zu beschäftigen, sich einzuarbeiten und sie zu testen.

Dieses Buch soll Java-Enterprise-Architekten und -Entwicklern, all jenen, die bei der Planung von Java-Enterprise-Projekten beteiligt sind, eine Grundlage schaffen, um aufgrund der Fülle der vielen Frameworks und Schlagwörter den richtigen Satz an Produkten zu finden, der ihnen hilft, zu einem erfolgreichen Endprodukt zu kommen. Dieses Buch stellt die gängigen Frameworks und Bibliotheken vor, die aktuell in Java-Enterprise-Anwendungen benutzt werden und vergleicht sie anhand einiger Beispielanwendungen.

  • Themenbeschreibung:

Bekanntlich sind Java-Enterprise-Anwendungen in den vergangenen Jahren immer komplexer geworden. Aus einer einfachen Datenbankanwendung im Single-User-Betrieb mit simpler Eingabemaske ist im Laufe der Jahre ein hochkompliziertes Gebilde geworden. Verteilte Anwendungen mit synchronen oder asynchronen Schnittstellen zu Legacy-Anwendungen und diversen anderen Systemen werden von einer Vielzahl Anwendern in verschiedenen Rollen bedient. Anwendern im Außendienst soll die Anwendung off- wie online zur Verfügung stehen. E-Mails sollen versendbar sein. Alle nicht funktionalen Anforderungen wie zum Beispiel Performance, Verfügbarkeit, Sicherheit, Wartbarkeit oder Erweiterbarkeit müssen erfüllt sein. Schlagworte wie Messaging, REST, JSON, AJAX, JMX, JCA, Caches, Cloud Computing, Cluster, … tauchen auf, was bedeuten sie?

In einigen Projekten stellt sich die Frage, wie man ein Team, das seit vielen Jahren vornehmlich SQL programmiert, in die Lage versetzt, ihre Datenbankzugriffe in Zukunft objektorientiert vorzunehmen, ohne dabei ihre Erfahrungen über Bord werfen zu müssen, sondern ihr Wissen weitestgehend weiter benutzen zu können. Wie kann ein Technologiewechsel möglichst reibungslos vonstatten gehen, hilft mir JPA, Hibernate oder MyBatis?

Wieder andere Projekte leben von der Innovation und fragen sich, ob eine Umsetzung als Cloud-Anwendungen oder mit einer NoSQL-Datenbank ihnen den nötigen Vorsprung vor ihrer Konkurrenz verschafft. Hilft MDA, SOA oder RIA, oder sind diese Techniken schon wieder out, der Hype verflogen?

Es gibt Anwendungen, die nur verkauft werden können, wenn sie gut aussehen, ergonomisch bedienbar sind, ein zeitgemäßes Look & Feel besitzen, und ein angemessenes User Experience gewährleisten. RIA mit HTML5, Silverlight, Adobe Flex oder Java FX. Was ist die richtige Lösung?

EJB3 oder Spring, mit oder ohne Annotationen. Immer mehr Technologien fließen in die Arbeit mit ein, so dass niemand, der Java-Enterprise-Anwendungen schreibt, am grünen Tisch beginnen kann. Zum einen fehlt ihm die Zeit und zum anderen die erforderlichen Fähigkeiten in der Vielzahl der nötigen Bereiche. Er möchte sich am liebsten nur mit der Implementierung seiner Fachlogik, also dem Teil der Software beschäftigen, mit der er sein Geld verdient. Die technischen Details möchte er erprobten Frameworks überlassen. Um aber die richtige Wahl der Komponenten für seine spezielle Anwendung zu wählen, um damit den Wünschen seiner Kunden gerecht zu werden, benötigt er einen fundierten Überblick über entsprechende Architekturen, Technologien und Frameworks. Da ihm aber der Alltag nicht viel Zeit lässt, sich ständig in die neusten Themen einzuarbeiten, möchte dieses Buch dem Leser dabei helfen, sich leicht, flexibel und praxisbezogen in die Themen einzuarbeiten, um so auf den neusten Stand der Technik zu kommen.

Anhand einer fertigen Beispielanwendung werden die Schlüsselbegriffe in den wichtigsten Bereichen erläutert. Der Leser hat die Möglichkeit, das neu erworbene Wissen an der Anwendung auszuprobieren. Dabei bleibt es ihm überlassen, wie tief er in die Materie einsteigen möchte. Um sich einen ersten Eindruck zu verschaffen, kann er die einzelnen Frameworks gegeneinander austauschen, um zu sehen, welchen Einfluss das auf die Anwendung hat. Interessieren ihn die Details der Umsetzung, kann er die einzelnen Module verändern und erweitern und so selber experimentieren. Das Buch beschreibt jeweils die 20 % der diversen Frameworks, mit denen sich 80 % des im Alltags gewünschten Ergebnisses erzielen lassen und ermöglicht so einen schnellen und guten Zugang zu den Themen. Von dort sollte es dem Leser leicht fallen, sich mit weiterer Fachliteratur tiefer in Spezialfälle einzuarbeiten. Zusätzlich erfährt der Leser, wie sich diese Werkzeuge in der Praxis bewähren, ihre Vor- und Nachteile und, wo man sie am besten einsetzt.

Die Beispielanwendung beschreibt die fiktive Software eines Verkehrsunternehmens des ÖPNV. Die Software ist bei Kenai herunterladbar. Aus Spaß an der Freude wird auch Hardware in die Anwendung mit eingebaut. Der Zusammenbau und der Anschluss wird ebenso im Buch beschrieben.

  • Aufbau des Buches:

Der Aufbau des Buches beschreibt am Stück die Grundlagen und geht dann in ein stark verlinktes Glossar über, das weitere Begriffe beschreibt. Dort sind unter anderem auch die einzelnen Frameworks beschrieben. Der Leser kann sich so leicht die Passagen aus dem Glossar heraussuchen, die ihn interessieren. Will er Themen vertiefen, kann er den Links folgen.

Aufbau einer Enterprise-Anwendung [Bearbeiten]

Weiterführende Konzepte einer Enterprise-Anwendung [Bearbeiten]

Der Entwicklungsprozess [Bearbeiten]

Best Practice [Bearbeiten]

Installation der Beispielanwendungen [Bearbeiten]

Glossar [Bearbeiten]