JAVAPRO – DAS KOSTENLOSE MAGAZIN FÜR JAVA PROFIS

JETZT NEU – AUSGABE 3-2019:

Horror Serialisierung

06 NEUES IN JAVA 13
09 MASTERING THE API HELL
22 COLLECTIONS EFFEKTIVER DURCHSUCHEN MIT JAVA-8-STREAMS
37 WEB- UND DESKTOP-ANWENDUNG AUS EINER CODE-BASE
50 JAVA – ABER SICHER!
60 HORROR SERIALISIERUNG
72 NACHHALTIGE REPORT-ENTWICKLUNG MIT TDD
78 WAS DEVOPS WISSEN MÜSSEN
89 RESILIENZ DURCH ORGANIC-AGILITY

Einfach kostenlos anfordern. Lieferung erfolgt frei Haus. Nur innerhalb D. möglich.
Kein kostenpflichtiges Abo, denn die JAVAPRO kann man nicht kaufen!

Jetzt kostenlos anfordern

 

IoT-Messaging mit MQTT 5 und Java

Mit der HiveMQ-MQTT-Client-Library kann das de-facto Standardprotokoll für IoT in der neuesten Version genutzt werden. MQTT ist mittlerweile das populärste IoT-Protokoll (Google-Trends-Analyse) für die Kommunikation zwischen Geräten und Applikationen über das Internet. Einige der verschiedenen Anwendungsfälle für das schlanke und leichtgewichtige MQTT sind unter anderem: Industrie 4.0, Connected-Cars, Logistik-Mobile-Apps und leichtgewichtiges Messaging zwischen Microservices. Speziell

Die Cloud ist nicht unantastbar

Bedrohungen, denen Cloud-Umgebungen ausgesetzt sind, decken sich in vielen Punkten mit den Gefahren für Inhouse-Netze. Oft fehlt Unternehmen der Überblick über die Anzahl der Geräte im Netz, was Hackern Vorteile bietet. Dieser Artikel deckt elf Risiken im Zusammenhang mit Cloud-Computing auf und gibt konkrete Empfehlungen dazu.   1. Datenlecks Auf seine Daten achtet jeder Konzern

Das Agile-Coaching-Dojo

Exzellenz in der agilen Praxis kann nicht allein aus dem Lehrbuch kommen, sondern ist immer auch eine Frage der Weitergabe und Modellierung von Erfahrungswerten. Um einen solchen Prozess innerhalb des eigenen Unternehmens einzuführen und zu systematisieren, ist das Veranstaltungsformat Agile-Coaching-Dojo besonders geeignet. In diesem Artikel erfahren Sie mehr über seine Ziele und Philosophie sowie die

Camel-K – Leichtgewichtige Cloud-Integrations-Plattform

Im Sommer letzten Jahres startete Camel-K als eine Community-getriebene Plattform für das einfache und schnelle Deployment von Apache-Camel-Anwendungen als Cloud-Native-Serverless-Funktionen in Kubernetes oder Openshift. Das Projekt Camel-K verbindet damit die erfolgreiche Enterprise-Integration-Bibliothek Apache-Camel mit dem Serverless-Ansatz. Die in Camel geschriebenen Integrationen können damit direkt auf einer Cloud-Plattform wie Kubernetes ausgeführt werden. Was ist Apache Camel?

Containerbasierte Testautomatisierung

In Zeiten von Containern, Clustern, Build-Pipelines und DevOps ist ein hoher Grad an Automatisierung notwendig, um sich auf das Wesentliche zu konzentrieren: Das Softwareprodukt. Hierfür bietet die Open-Source- Welt eine Reihe von Werkzeugen, um vollautomatische, steuerbare und reproduzierbare Build-, Test- und Deployment-Prozesse zu realisieren. Testen von Microservices Ein Tech-Stack mit unterschiedlichsten Technologien, die Fachlichkeit in

MicroProfile für Microservices mit Java EE

Die Entwicklung von Microservices schreitet in einem rasanten Tempo voran und stellt Entwickler vor immer neue und anspruchsvollere Herausforderungen. Nach der Meinung vieler ist Java-EE nicht geeignet, die gestiegenen Ansprüche zu erfüllen. Aus diesem Grund wurde das Eclipse-MicroProfile-Projekt ins Leben gerufen. Ziel ist es, einen Standard für die Entwicklung von Microservices auf Basis von Java

Die Qual der Wahl

Wahlen in München: ca. 950.000 Wähler, 400.000 Briefwähler, 1.000 Wahllokale, Rechenfehler, 10.000 Seiten Papier. Um hier besser zu werden hat der Stadtrat der Landeshauptstadt München beschlossen die Datenerhebung in den Wahllokalen zu digitalisieren. Umgesetzt wurde dieser Beschluss in Form einer offline-fähigen Single-Page-Application und Spring-Microservices im Backend. Wahlen in einer Großstadt sind eine Herausforderung   Bei

API-Design – Do’s and Don’ts

Im Zeitalter der Modularisierung von Software kommt kein Java-Entwickler daran vorbei, früher oder später ein Application-Programming-Interface (API) zu definieren oder zu erweitern. Der Entwurf eines guten API erfordert keine Kenntnisse in schwarzer Magie. Werden einige wenige Konventionen befolgt, erhöht das die Qualität der Schnittstelle deutlich. Was sind die Qualitätsmerkmale eines API? Eine Schnittstelle muss zuallererst

Neues in Java 13

Java-Release 13 ist für September 2019 geplant. Es ist bereits das dritte Major-Release nach der Bekanntgabe des neuen Lizenzmodells und Release-Zyklus im September 2018. Einige Features sind vielversprechend. Für Entwickler halten sich die neuen Features jedoch in Grenzen. Zu den Neuigkeiten von Java 13 gehören 5 Features, welche in Form von JDK-Enhancement-Proposal (JEP) beschrieben sind.

Huawei: Harmony-OS ersetzt Android

Es ist ein Paukenschlag. Der chinesische Konzern Huawei hat auf der eigenen Entwicklerkonferenz HDC im chinesischen Shonshan Lake mit HarmonyOS nun offiziell sein eigenes Betriebssystem als Alternative zu Android vorgestellt. Huawei-Manager hatten zuletzt noch bekräftigt, das System ist nicht als Android-Ersatz gedacht. Harmony OS, das in China unter dem Namen Hongmeng OS laufen soll, war

Penetrationstests von Web-Anwendungen

#JAVAPRO #Testing #Penetrationstest || Penetrationstests sind mittlerweile in vielen Unternehmen geübte Praxis, auch wenn es noch Firmen gibt, in welchen bis heute noch kein einziger Penetrationstest durchgeführt wurde. Bei diesen Tests wird die Angreiferperspektive eingenommen und ein professioneller Tester führt dabei dynamische Analysen durch. Penetrationstests können vielerlei Ziele und Methoden haben. So gibt es ganz

Agile Führung bedeutet Teamwork

#JAVAPRO #Agile #Teamwork Was wir von Robin Hood und seinen Gefährten lernen können: Agilität bringt Wandel. Silostrukturen werden aufgelöst, es herrscht höhere Transparenz, das Nutzererlebnis rückt in den Vordergrund, Führungskräfte begeben sich auf Augenhöhe mit den Mitarbeitern. Diese und weitere Aspekte der agilen Transformation rütteln gehörig an den etablierten Unternehmensstrukturen. Auf der Führungsebene wirft dies

Verzögerungskosten aufdecken erhöht die Produktivität

#JAVAPRO #Agile #Wertstromanalyse || „Wie kommt ein Projekt ein Jahr in Verzug? Ein Tag nach dem anderen.“ Das hat Fred Brooks einmal so weise gesagt. Der Lean-Gedanke und die Warteschlangentheorie bieten das Wissen an, um dieses Problem zu vermeiden. Die vorgeschlagene Abhilfemaßnahme ist, für einen ständigen Durchfluss (auch in der Entwicklung) zu sorgen, um die

Agilität und Hierarchie – ein Widerspruch?

#JAVAPRO #Agile #Strategy || Die Digitalisierung verdichtet, schafft neue Möglichkeiten und macht unser Leben einfacher. Paradoxerweise macht sie dadurch das Leben auch schneller, stressiger,  komplexer und unberechenbarer. Dieser grundlegende Wandel definiert Führung neu und erfordert neue Modelle der Zusammenarbeit. Er erfordert eine hohe Veränderungsbereitschaft, hohe Flexibilität sowie eine ausgeprägte Fähigkeit zur Selbstorganisation/-steuerung. Dieser Artikel stellt

Java-basierter MQTT-Broker HiveMQ ist OpenSource

Bei HiveMQ wissen wir, dass die OpenSource-Community ein Haupttreiber bei der Entstehung von neuen und innovativen Technologien ist. Sowohl MQTT als auch HiveMQ haben in der Vergangenheit stark von der OpenSource und Open-Standard-Community profitiert. Wir denken nun ist der Zeitpunkt gekommen einen wichtigen nächsten Schritt mit HiveMQ zu gehen und dürfen die Entstehung der HiveMQ

Agile-Strategy-Map – Die innovative Führungsmethode

Die Agile-Strategy-Map basiert auf dem Verständnis, dass Organisationen in einem komplexen Marktumfeld leben, sich stetig weiterentwickeln und sowohl die Strategie als auch operative Ziele entsprechend angepasst werden müssen. Die Agile-Strategy-Map ist sowohl eine Methode als auch eine Software, welche jede Organisation befähigt ihre Strategie zu entwickeln, Zusammenhänge zu verstehen, Zusammenarbeit zu fördern und ein aktuelles

Selbstorganisation in agilen Teams

#JAVAPRO #Agile #Teams #Selbstorganisation || In vielen Schriften zum Thema Agilität heißt es, das Besondere an agilen Teams sei u.a. deren Fähigkeit und Möglichkeit zur Selbstorganisation. Das klingt meist so, als ob die Teams vor der Agilisierung nicht selbstorganisierend gewesen wären. Doch Selbstorganisation findet ständig statt – in allen Teams! Sich selbst organisierende Systeme Ein

Office – datenschutzkonform ?

Wer schon einmal Windows 10 installiert hat und dabei nicht auf Express-Einstellungen klickte, kennt die sogenannten Datenschutzeinstellungen. Hier steht dem Nutzer anscheinend das Recht zu, die von Windows angefertigte Datensammlungen zu kontrollieren. „Position, „Diagnose“, „Relevante Werbeanzeigen“, „Spracherkennung“ und „Individuelle Benutzererfahrung mit Diagnosedaten“ heißen die fünf Schieberegler. Auffallend: Der „Diagnose“-Regler lässt sich nicht deaktivieren, sondern nur

Machine Learning – eine Challenge für Architekten

#JAVAPRO #MachineLearning || Aufgrund vielfältiger potenzieller Geschäftschancen, die Machine-Learning bietet,starten viele Unternehmen Initiativen für datengetriebene Innovationen. Dabei gründen sie Analytics-Teams, schreiben neue Stellen für Data-Scientists aus, bauen intern Knowhow auf und fordern von der IT-Organisation eine Infrastruktur für heavy Data-Engineering & Processing samt Bereitstellung einer Analytics-Toolbox ein. Für IT-Architekten warten hier spannende Herausforderungen, u.a. bei

Warum wir Blockchain (nicht) brauchen

 #JAVAPRO #Kryptowährung #Blockchain || Bitcoin-Bashing, Blockchain-Bashing usw. sind heutzutage erlaubt. Viele Kryptowährungen haben 2018 80% ihres Wertes verloren. Selbst McKinsey wagt sich nun aus der Deckung. Nachdem sie 2017 noch gesagt haben, dass kreative Unternehmen von Blockchain profitieren könnten, revidieren sie ihre Aussagen Anfang 2019 wieder. Als 2018 das Buch „Und es wurde… Krypto“ auf

Cross-Platform-Development mit RapidClipse 4

#JAVAPRO #RapidClipse #Eclipse #Vaadin #Java11 Knapp zwei Jahre sind seit dem letzten Major Release RapidClipse 3.0 vergangen. Jetzt ist die neue Version 4.0 verfügbar. Hauptgrund für die lange Wartezeit waren gravierende Änderungen bei den Release-Zyklen von Java und Eclipse sowie der Wechsel auf eine neue UI-Basistechnologie bei Vaadin, was zu erheblichen Unklarheiten geführt hat. Mittlerweile

Flow-Design – Xtend Your Horizon – Teil 3

#JAVAPRO #Architecture #IODA #FlowDesign Der Flow-Design-Ansatz ist so fundamental wie der objektorientierte oder der funktionale, sodass sich die Umsetzung als eigenständiges Sprachkonstrukt geradezu aufdrängt. Doch es muss nicht gleich eine eigene Programmiersprache sein. In Xtend lassen sich über interne DSLs Spracherweiterungen hinzufügen. Der 3. Teil unserer Serie zeigt, wie eine konkrete interne DSL für Flow-Design

Cloud-Computing in der Industrie

 #JAVAPRO #Cloud #IoT || Die Cloud-Computing-Technologie ist die heutige Basis für das Internet-of-Things (IoT) bzw. für Industrie 4.0. Das Internet der Dinge basiert auf einer Reihe von grundlegenden Technologien, wobei Cloud-Computing eines der zentralen Elemente ist und als Plattform für die Anwendungsbereitstellung, Verbindung von Geräten und Sammlung bzw. Aggregation von Daten in Echtzeit dient. Cloud

5 Aspekte über reaktive Programmierung in Java

#JAVAPRO #ReaktiveProgrammierung || Niedrige Antwortzeiten sind ein zentrales nichtfunktionales Feature modernerWeb-Anwendungen. Neben Caching, effizienter Programmierung und moderner Hardware ist die Verwendung reaktiver Bibliotheken eines der vielversprechendsten Konzepte um niedrige Antwortzeiten in einer Web-Anwendung sicherzustellen. In diesem Artikel werden fünf Aspekte herausgestellt, die man bei der Verwendung des reaktiven Patterns berücksichtigen sollte. Das Standard-Threading-Modell bei der