Blog

Alle Beiträge in der Kategorie 'Technologie'

Persistenz, Transaktionsgrenzen und Optimistische Locking-Strategie

Die erste Regel der verteilten Systeme lautet: verteile nicht die Systeme. In der Tat kann die Architektur eines monolithischen Systems auf wesentliche komplexe Fragestellungen verzichten, die in der Architektur des verteilten Systems eine entscheidende Rolle spielen. Manche funktionale Anforderungen lassen sich jedoch nur sehr schwer in einem monolithischen System realisieren, so dass eine verteilte mehrschichtige Anwendung mit einem Server und einem (Rich-) Client entsteht. Eine mögliche, nicht seltene Variante ist die Bereitstellung von Funktionalität über eine Serviceschicht, die vom Client aus benutzt wird. Der Entwurf von funktionalen Service-Schnittstellen ist ein wichtiger Schritt in der Entwicklung der Mehrschichtanwendung. Auch für den Aufbau der serviceorientierten Architektur ist die Frage des Schneidens der Services von zentraler Bedeutung. Es ist ein Balanceakt zwischen fein- und grobgranular, zustandslos und zustandbehaftet, synchron und asynchron, transaktional und fire-and-forget.

Architektur

Ein nicht-untypisches Design einer Mehrschichtapplikation ist mit einem Boundary-Control-Entity Architekturpattern beschrieben.
weiterlesen

Read it!

Zeitlose, unterhaltsame und mit hoher Informationsdichte gesegnete Bücher zum Thema Softwareentwicklung, die ich bisher gelesen habe, kann ich an zwei Händen abzählen (ja, im Dezimalsystem ;D ). Das liegt nicht daran, dass ich mich ums Lesen gedrückt hätte, sondern eher daran, dass es an Angebot mangelt. Die meisten dieser Publikationen verfügen über einen hohen Bekannheitsgrad: seien es Martin Fowlers Werke über Refactoring und Enterprise Patterns, Kent Becks „Extreme Programming“, Uncle Bob’s „Clean Code“ oder die Patterns der GoF – alle gehören mittlerweile schon fast zum Allgemeingut unseres Berufsstandes und erfreuen sich für diesen Markt ungewöhnlich hoher Auflagen.

weiterlesen

IT-Talk "Türsteher für Bohnen (JSR-303)" bei ConceptPeople

Simon Zambrovski und Oliver Ochs werden am Montag, den 7. Februar 2011 um 19:00 Uhr einen IT-Talk bei ConceptPeople halten. Das Thema ist BeanValidation.

Die Validierungs-Logik in einer Java-Enterprise-Anwendung ist meist eng an die zu validierenden Daten gekoppelt. Mit dem Bean-Validation-Standard JSR-303 muss diese Logik nur einmal implementiert werden und kann dann in einer Enterprise-Applikation an verschiedenen Stellen zum Einsatz kommen. In diesem Vortrag stellen wir exemplarisch einige Einsatzbereiche vor und beleuchten die architektonischen Herausforderungen. Dabei erläutern wir an einigen Beispielen, die wir aus der Projektpraxis extrahiert haben, wie ein domänen-spezifisches Typsystem aufgebaut werden kann und wie die Validierung der Eingabedaten sowohl in der Oberfläche als auch in der Geschäftslogik geschieht. Unsere Bespiele orientieren sich an den gängigen Frameworks Spring und EJB 3.

Den Veranstaltungsort sowie Informationen zu ConceptPeople Consulting finden Sie hier: ConceptPeople Consulting GmbH

JUnit mit Guice Test-Runnern

Das Dependency Injection Framework Google Guice kann eine große Hilfe beim Testen mit JUnit sein. Es kann als dynamische Factory sowohl Mock-Objekte als auch Alternativ-Implementierungen bereitstellen und so den Einrichtungsaufwand erheblich verringern.
Koppelt man dieses Konzept mit eigenen Test-Runnern, ist das Ziel einer Zero-Config Test-Suite zum Greifen nahe.

weiterlesen