Jigsaw Walkthrough: Modularisierung einer Java-Anwendung

Termin

Der Vortrag findet am 12.05.2016 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Abstract

Die meisten werden schon von Project Jigsaw in Java 9 gehört haben, aber haben Sie es auch schon in Aktion gesehen? Dieser Vortrag führt anhand der Modularisierung einer Beispielanwendung vorbei an einigen Fallstricken durch die wichtigen Features.

Er wird zeigen wie man …

  • Module und ihre Abhängigkeiten definiert
  • eine Anwendung und ihre Abhängigkeiten auf Kompatibilität untersucht
  • eine Anwendung trotz nicht-modularisierter Abhängigkeiten migriert

Mit diesem Wissen gewappnet werden Sie in der Lage sein, die Migration Ihrer Anwendung zu beurteilen oder gleich prototypisch durchzuführen.

Bio

Nicolai Parlog arbeitet als Java-Entwickler bei Disy in Karlsruhe und bloggt nebenbei zu Softwareentwicklung im Allgemeinen und Java im Speziellen. Besonders interessiert ist er an Neuerscheinungen wie Java 8 (als es noch neu war), Project Jigsaw in Java 9, Project Valhalla in Java 10/11 oder JUnit 5.

Er hat an der TU Dortmund Informatik und Mathematik studiert und anschließend drei Jahre beim Fraunhofer ISI Energiemodelle entwickelt bevor er im Herbst 2014 zu Disy wechselte.

CQRS und EventSourcing

Termin

Der Vortrag findet am 24.03.2016 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Abstract

Eine Tabelle mit drei Spalten: Das ist alles was man mit EventSourcing braucht, um einen eCommerce Shop zu entwickeln - oder ein ERM-System - oder eigentlich jede Art von Software. Statt wie üblich den Ist-Zustand zu speichern, erfasst man Domain Events: Alles was in der Anwendung passiert ist. Aus diesen Events wird zur Laufzeit der Zustand der Anwendung abgeleitet. In meinem Vortrag zeige ich, wie eine EventSourcing Architektur mit Command-Query-Responsibility-Segregation aussieht und wie man damit skalierbare, sich entwickelnde Software, maßgescheidert auf die Business Anforderungen, schreiben kann und obendrein ein exzellentes Domänenmodell erhält.

Bio

Raimo Radczewski ist Software Craftsman aus Überzeugung. Nach dem Studium der Wirtschaftsinformatik gründete er ein Startup, das sich auf Compliance Informationssysteme spezialisierte. Heute arbeitet er für Vaamo, wo er Deutschlands einfachstem RoboAdvisor für Sparinvestments entwickelt. Seit 3 Jahren setzt er auf EventSourcing, um hochwertige Software für Anwender und Entwickler gleichermaßen zu entwickeln. Für die größten Software Craftsmanship Usergroups Deutschlands in Berlin und Münster-Osnabrück-Bielefeld organisiert und moderiert er regelmäßig Workshops, Coderetreats und Open-Spaces.

TDD Workshop

Termin

Dieser Workshop findet am 25.02.2016 um 19:00 Uhr (Ende zirka 22 Uhr) bei der OIO Orientation in Objects GmbH in der Weinheimer Str. 68 in Mannheim statt (Anfahrtsbeschreibung).

Vielen Dank an die Firma OIO Orientation in Objects GmbH, die uns ihre Räumlichkeiten zur Verfügung stellt und auch für das leibliche Wohl sorgen wird.

Abstract

One disadvantage to TDD: once you see how well-designed your software can be, you really see how terrible most software is.

J.B. Rainsberger

Testgetriebene Softwareentwicklung ist doch eigentlich ein alter Hut. Fragt man aber mal in die Runde von Usergroup-Veranstaltungen, dann hat sich TDD in der Praxis bisher kaum durchgesetzt. Die Gründe dafür sind vielfältig. Aufgrund der fehlenden praktischen Übungsmöglichkeiten fehlt vielen letzten Endes die Erfahrung, wie man beispielsweise im Kontext von Enterprise-Anwendungen sinnvoll testgetrieben vorgeht.

Zusammen mit TDD-Urgestein Johannes Link (Autor des ersten deutschsprachigen Buchs zum Thema) wollen wir uns zunächst die Grundideen in Erinnerung rufen und dann im Pair Programming ausprobieren. Es geht weniger um die neuesten Architekturstile, Bibliotheken und Programmiersprachen. Wir wollen vielmehr durch eine gemeinsame Diskussion Ansätze evaluieren, um auch bei den klassischen X-Schicht-Architekturen der Unternehmensanwendungen sowohl in der Präsentations-, als auch der Geschäftslogik- und Persistenzschicht testgetrieben vorzugehen. Die verwendeten Technologien sind dabei zweitrangig.

Eure in dieser Richtung bereits gesammelten Erfahrungen sind genauso wichtig wie beispielsweise konkrete Beispiele aus der täglichen Arbeit. Als Sprache setzen wir auf Java. Bitte bringt Euren vorkonfigurierten Rechner (Java, Maven/Gradle, IDE, ggf. initiales Projektsetup) mit, so dass wir bei der Veranstaltung direkt loslegen können. Bei inhaltlichen Fragen zum Workshop bitte an tdd-workshop@majug.de wenden.

Die Teilnehmerzahl ist begrenzt. Anmeldungen bitte per E-Mail an info@oio.de.

ReactiveX/RxJava vs. Zombies

Termin

Der Vortrag findet am 28.01.2016 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Abstract

Mit RxJava - dem Reactive Programming-Framework von Netflix - lassen sich Datenflüsse mit Komponenten programmieren, die strukturell unabhängig sind, ohne dabei auf Higher-Order-Functions wie map, reduce oder filter verzichten zu müssen. In diesem Vortrag stellt Phillip Ghadir Reactive Programming mit RxJava vor und zeigt, wie sich die Konzepte asynchrone Eventstreams und Observables verwenden lassen. Anhand der Grundidee des Computer-Spiels Plants vs. Zombies wird die Verwendung von RxJava demonstriert. Zu guter Letzt wird von dem Beispiel abstrahiert und skizziert, wie sich mit ReactiveX reaktionsfreudige Systeme bauen lassen.

Bio

Phillip Ghadir, Mitglied der Geschäftsleitung und Principal Consultant bei innoQ, beschäftigt sich mit Softwarearchitekturen im Allgemeinen und der Ausbildung von Softwarearchitekten im Besonderen. Er hat nie den Spaß an Java verloren. Aber seit Java 8 macht es noch viel mehr Spaß. Er programmiert auch gern in Ruby und Clojure. Fünf mal im Jahr kann man ihn bei einem Software Architecture Camp live erleben.

Effektiver Einsatz von Code-Reviews

Termin

Der Vortrag findet am 26.11.2015 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Vielen Dank an die Firma OIO Orientation in Objects GmbH, die anschließend die erste Getränkerunde in der Kneipe spendiert!

Abstract

Software wird zunehmend komplexer und gleichzeitig werden Release-Zyklen bis hin zu Continuous-Delivery immer kürzer. Effektive Code-Reviews sind notwendig, um in diesem Umfeld eine qualitätsgesicherte Nachverfolgbarkeit von Änderung über den gesamten Application Lifecycle zu ermöglichen. In der Session werden zunächst die technischen und organisatorischen Voraussetzungen für einen effektiveren Einsatz von Code-Reviews vorgestellt. Anschließend wird das Zusammenspiel verschiedener Tools zur nahtlosen Einbindung von Code-Reviews in den gesamten Entwicklungsprozess an Beispielen aus der Praxis gezeigt.

Bio

Thorsten Maier arbeitet bei der OIO Orientation in Objects GmbH in Mannheim. Er erschließt kontinuierlich bessere Wege, Software zu entwickeln, indem er selbst als leidenschaftlicher Java-Softwareentwickler unterwegs ist und anderen als Berater, Trainer, Autor sowie Speaker dabei hilft. Trotz seiner Begeisterung für Neues sind ihm Menschen stets wichtiger als Technologien. Sein Hauptaugenmerk liegt daher auf der Frage, wie sich modernste Technologien in gewachsene Umgebungen einbinden lassen und wann man besser auf Bestehendes zurückgreifen sollte.

Anmeldung

Bitte meldet Euch unverbindlich an, damit wir grob planen können.