Java Magazine 2 2019
Total Page:16
File Type:pdf, Size:1020Kb
Nummer 2 - 2019 MAGAZINE Onafhankelijk tijdschrift voor de Java-professional Een duik in Java events met de beste sprekers Scherp je veiligheid aan met Keystroke Dynamics Python voor Java developers? Word zelf een spreker Inclusief op meetups en events! vooruitblik J-spring 2019 TEQnation programmaboekje en plattegrond Features Java 12: upgraden Interview met Verslag: Uncle Bob of niet? Venkat Subramaniam in Nederland 01 COVER.indd 1 23-04-19 09:30 Powered by Foto: Frans van Bragt van Frans Foto: Bestel nu je tickets op: jspring.nl/tickets/ De line-up staat online! Uitgelichte sprekers Adam Bien Burr Sutter Peter Hilton Siren Hofvander Sven Peters Katherine Stanley JavaOne Director Independent CSO Lead Evangelist Software Engineer Rockstar @ Red Hat Consultant @ Docly @ K15t @ IBM Vind de volledige line-up op jspring.nl Main Sponsor Co-Sponsors Partners Adv J-Spring.indd 9 17-04-19 15:37 VOORWOORD Colofon Java Magazine 02-2019 Voorwoord Content manager: Stijn van de Blankevoort Java leeft in Nederland Eindredactie: Anne Camphuijsen-Wieleman Programmeertalen zijn constant in beweging en zo ook de aanverwan- Projectcoördinator: te technologieën. Dit zorgt ervoor dat je als developer continu je kennis Tedje van Gils up-to-date moet blijven houden. Auteurs: Koen Aerts, Jan-Hein Buhrman, Edwin Derks, Lennard Eijsackers, Gelukkig zijn er middelen om je hierbij te helpen: zo kun je tijdens eve- Erwin de Gier, Mathijs de Groot, Arno Koehler, Arjan Lamers, Joop nementen en meet-ups in één dag(deel) je kennis bijschaven Lanting, Philip Leonard, Sander Mak, Wouter Oet, Robert Scholte, in jouw vakgebied. Veelal gegeven door grootheden uit het vak. Wat dacht je bijvoorbeeld van Clean Coding en Agile meesters Uncle Bob of Koen Vervloesem, Ivo Woltring Venkat Subramaniam? Zij kwamen laatst naar Nederland om lezingen Redactiecommissie: te geven. Heb je deze meet-ups gemist? Dan kun je hier in Java Maga- Stijn van de Blankevoort, Rob Brinkman, Erwin de Gier, zine teruglezen hoe zij over verschillende onderwerpen denken. Peter Hendriks, Ben Ooms, Bas Passon, Martin Smelt, Hedzer Westra, Ivo Woltring Volgende week organiseren we TEQnation (Powered by NLJUG) in de Vormgeving: mooie locatie DeFabrique te Utrecht. Met een sterk inhoudelijk pro- Wonderworks, Haarlem gramma verwachten we de bezoekers een inspirerende dag te kunnen bieden. Sprekers van onder andere Zalando, Uber, Facebook, Spotify en Uitgever: Google zullen hier het podium betreden. Martin Smelt Traffic & Media order: Als je nog iets langer geduld hebt, kun je diep in Java duiken tijdens Marco Verhoog J-Spring 2019 in TivoliVredenburg. Dit evenement, in hartje Utrecht, Drukkerij: is exclusief voor NLJUG’ers. Hier kun je presentaties volgen van high- Senefelder Misset, Doetinchem level Java sprekers zoals Adam Bien, Burr Sutter, Peter Hilton en Siren Hofvander. Advertenties: Richelle Bussenius Lukt het je niet om hier bij te zijn of wil je nu alvast in de materie E-mail: [email protected] duiken? Dit nummer laten we je onder andere nieuwe technieken zien Telefoon: 023 752 39 22 om je veiligheid op te schroeven met Keystroke Dynamics, leer je met Fax: 023 535 96 27 Code Reviews een vriendelijke competitie te starten om je code beter Marc Post te maken en beschrijven we hoe je documentatie schrijft als code. E-mail: [email protected] Heel veel leesplezier en hopelijk tot ziens op onze evenementen! Telefoon: 023 543 00 08 Abonnementenadministratie: Wil je bijdragen aan Java Magazine? Stuur mij dan een mailtje. Tanja Ekel Stijn van de Blankevoort Lidmaatschap van de NLJUG kost € 44,50 (België € 45,50) per jaar, waarbij Java Content-/Communitymanager NLJUG Magazine gratis verschijnt. Naast het Java Magazine krijgt u gratis toegang tot de [email protected] vele NLJUG workshops en het J-Fall congres. Het NLJUG is lid van het wereldwijde netwerk van JAVA user groups. Voor meer informatie of wilt u lid worden, zie www.nljug.org. Een nieuw lidmaatschap wordt gestart met de eerst mogelijke editie voor een bepaalde duur. Het lidmaatschap zal na de eerste (betalings)periode stilzwijgend worden omgezet naar lidmaatschap van onbepaalde duur, tenzij u uiterlijk één maand voor afloop van het initiële lidmaatschap schriftelijk (per brief of mail) opzegt. Na de omzetting voor onbepaalde duur kan op ieder moment schriftelijk worden opgezegd per wettelijk voorgeschreven termijn van 3 maanden. Een lidmaatschap is alleen mogelijk in Nederland en België. Uw opzegging ontvangen wij bij voorkeur telefonisch. U kunt de Klantenservice bereiken via: 023-5364401. Verder kunt u mailen naar [email protected] of schrijven naar NLJUG BV, Ledenadministratie, Richard Holkade 8, 2033 PZ Haarlem. Verhuisberichten of bezorgklachten kunt u doorgeven via [email protected] (Klantenservice). Wij nemen je gegevens, zoals naam, adres en telefoonnummer op in een gegevensbestand. De verwerking van uw gegevens voeren wij uit conform de bepalingen in de Algemene Verordening Gegevensbescherming. De gegevens worden gebruikt voor de uitvoering van afgesloten overeenkomsten, zoals de abonnementenadministratie en, indien je daar toestemming voor hebt gegeven, om je op de hoogte te houden van interessante informatie en/of aanbiedingen. je kunt uw persoonsgegevens opvragen om inzicht te krijgen in welke gegevens wij van je hebben, deze te corrigeren of, na beëindiging van de abonnee-overeenkomst, te laten verwijderen. Stuur hiertoe een kaartje aan NLJUG BV, afd. klantenservice, Richard Holkade 8, 2033 PZ Haarlem of een e-mail naar [email protected]. JAVA MAGAZINE | 02 2019 03 VOORWOORD.indd 3 23-04-19 14:15 MASTERS OF JAVA 2019 het officieuze NK Java Programmeren De Masters of Java, georganiseerd door de NLJUG, met First8 als hoofdsponsor, is de roemruchte “funprogging contest”, die toegankelijk is voor iedere Java developer. Vorig jaar hebben Sijmen en David dat bewezen: deze twee studenten werden bekroond tot “Master of Java 2018”! Pakt jouw team dit jaar de titel? In deze wedstrijd wordt niet de API-kennis, maar de echte programmeervaardigheid getest. Schrijf je snel in en wees verzekerd van deelname! Onder de 25 eerste inschrijvers verloten we twee VIP-Pakketten met onder andere een hotel overnachting en toegang tot het exclusieve speakers diner. Ga jij dit jaar de strijd aan met je collega’s? Een team bestaat uit maximaal twee developers. Het team dat aan het einde van de dag de meeste punten heeft, mag zich “Master of Java 2019” noemen. Er zal naast eeuwige roem natuurlijk gestreden worden voor mooie en spectaculaire prijzen! EEN NLJUG EVENT Datum: woensdag 30 oktober 2019 Tijd: 12.00 – 18.00 uur Locatie: Pathé bioscoop, Ede Voor wie: Iedere Java developer Ook dit jaar maakt First8 weer zes uitdagende opdrachten voor jullie. De collega’s van First8 werken met enthousiasme, bevlogenheid en passie aan deze en andere gave opdrachten. Iets voor jou? We maken graag kennis met je. www.first8.nl Aanmelden: nljug.org/masters-of-java-2019 00-00 Masters of Java 2019 V2.indd 12 18-04-19 11:58 INHOUDSOPGAVE 06 KEYSTROKE DYNAMICS 10 BLOCKCHAIN POWERED CODE REVIEWS Trust, decentralization and security 14 DOCS-AS-CODE Hoe word ik een bekende spreker? Een verfrissende kijk De Java-wereld staat bekend om zijn open source gedachte en het op documentatie 24 denken in communities. Een belangrijk uitgangspunt is dan ook het delen van kennis delen met anderen. Van nature vinden we het allemaal 19 COLUMN JOOP spannend om voor een groep te spreken. Zeker als het publiek dan ook nog eens 20 INTERVIEW veel van het onderwerp weet en juist die vraag stelt waar jij geen antwoord op VENKAT SUBRAMANIAM hebt. Dit artikel geeft je tips en trucs en beschrijft hoe je in kleine stappen een goede spreker kunt worden. 24 HOE WORD IK EEN BEKENDE SPREKER? Claim jouw plaats in de spotlights 28 GLASSFISH In een nieuwe vijver Java 12 – 8 nieuwe features 30 PYTHON VOOR JAVA 40 Voor Java 12 zijn 8 nieuwe Met voorbeelden! features (JEP’s) geïmplementeerd. In dit DEVELOPER SURVEY artikel zullen deze features beschreven 34 worden. Laten we kijken of er in versie 36 J-SPRING VOORUITBLIKKEN 12 features zitten die het interessant maken om te upgraden. 40 JAVA 12 8 nieuwe features 42 SPRING FU Spring Fu – de weg De weg naar declaratieve naar declaratieve Spring Applicaties 42 Spring Applicaties 46 SPRING WEBFLUX Het Spring Framework is al ruim 17 jaar Event driven microservices een begrip op de JVM. Oorspronkelijk met Spring Webflux begonnen als een inversion of control container en door de jaren heen 50 UNCLE BOB EVENT uitgegroeid tot een populair full- In Utrecht en Apeldoorn featured framework voor (web)applicatie 52 COLUMN MAVEN ontwikkeling. Met Spring Fu dient zich een volgende evolutie aan: declaratieve configuratie op basis van een fluent API. 55 BESTUURSCOLUMN SCHRIJVEN VOOR JAVA MAGAZINE? Ben je een enthousiast lid van NLJUG en zou je graag willen bijdragen aan Java Magazine? Of ben je werkzaam in de IT en zou je vanuit je functie graag je kennis willen delen met de NLJUG-community? Dat kan! Neem contact op met de redactie, leg uit op welk gebied je expertise ligt en over welk onderwerp je graag zou willen schrijven. Direct artikelen inleveren mag ook. Mail naar [email protected] en wij nemen zo spoedig mogelijk contact met je op. JAVA MAGAZINE | 02 2019 05 INHOUD.indd 5 23-04-19 13:02 06 Keystroke Dynamics Authenticatie gebaseerd op menselijk gedrag Om een veilige applicatie te bouwen worden vaak 2 of meer authenticatie mechanismen gecombineerd. Vaak is dit voor een webapplicatie een combinatie van authenticatie met gebruikersnaam en wachtwoord plus een token gegenereerd vanaf een mobiele telefoon. Dit is natuurlijk niet het meest gebruiksvriendelijke proces. Mobiele applicaties hebben het voor- deel van out-of-the-box fingerprint authenticatie of gezichtsherkenning, maar dit kunnen we niet gebruiken voor web-applicaties. In dit artikel introduceer ik de concepten achter keystroke dynamics – een gebruikers-gedrag gebaseerd authenticatie mechanisme – en laat ik zien hoe je dit kan toepassen in een web-applicatie.