Java Magazine

Reactive Programming

Reactive Programming is meer dan alleen een buzzword geworden en het feit dat Pivotal het Spring Framework Reactive gaat maken, zegt daarin meer dan genoeg. Omdat die omwenteling niet over één nacht ijs gaat, heeft Pivotal een eerste project omgezet naar het Reactive paradigma: Spring Web. Met de komst van Spring WebFlux, dat een GA krijgt in het tweede kwartaal van 2017, wordt Reactive Programming belangrijker dan ooit. In dit artikel willen we alvast een tipje van de sluier voor jullie oplichten op basis van onze ervaringen met de SNAPSHOTs en Milestones.

Read More »

Als het maar veilig is!

Elke ontwikkelaar loopt er vroeg of laat tegenaan: cryptografie. Bij de gedachte aan keyformaten, PKCS, SHA-256 en certificaten slaat menige ontwikkelaar de schrik om het hart. Gelukkig biedt het Java platform uitstekende abstracties hiervoor, maar het ontslaat je er niet van te begrijpen wat het precies is.

Read More »

Het geheim van succesvolle teams

Software development is een serieuze zaak en in de regel een teaminspanning. De op zichzelf werkende ‘zolderprogrammeur’ is meer en meer iets uit het verleden. Toch is samenwerken makkelijker gezegd dan gedaan. Java-veteraan Sven Peters verklapt het geheime recept voor succesvolle teams.

Read More »

Groovy testen met het Spock framework

In dit artikel maken we kennis met het Spock test framework. Na het bespreken van de core features van het framework, beschrijf ik de syntax en het data driven testen. Als laatste bespreek ik de configuratie om de testen goed te laten draaien in een Maven gebaseerde build configuratie. Dit is nodig om zaken, zoals code coverage en het uitvoeren van testen door middel van Maven goed te laten verlopen. Alle gebruikte code is beschikbaar in een github repository, zodat je hier meteen mee aan de slag kan.

Read More »

REST-assured

Bij het realiseren van een microservices architectuur is één van de uitdagingen het doortesten van één of meerdere services. Zoals menig developer weleens ervaren heeft, is het opzetten van integratietesten niet triviaal. Dergelijke testen vergen vaak complexe mocking, veel setup en boilerplate code en dit gaat ten koste van executiesnelheid en gemak. Veel frameworks hebben in het verleden vereenvoudigingen geboden, maar nu is er REST-assured! In combinatie met WireMock wordt in dit artikel getoond dat het schrijven van integratietesten weer fun kan zijn!

Read More »

Codetransformatie

Bewust of onbewust maakt elke Java ontwikkelaar gebruik van compile time analyse en transformatie van broncode en bytecode. We laten bijvoorbeeld onze IDE code voor ons genereren en gebruiken tools als Findbugs voor het opsporen van fouten. Het zelf bouwen van code-analyse en generatietools kan best complex zijn. De Java Reflection API biedt ons de mogelijkheid tot bijvoorbeeld-code analyse. Deze staat echter geen transformatie toe. Gelukkig is er Spoon!

Read More »

Let’s get secure!

Heb je een website die HTTPS connecties aanbiedt aan je bezoekers? Maak je gebruik van HTTPS als je inlogt of als je gegevens verstuurt? Heb je HTTPS eigenlijk nodig? Ook voor je eigen blogje op je eigen server? Voor de meesten van ons is het antwoord op deze vragen duidelijk ‘Ja!’. Sommigen zullen ook al ervaren hebben dat dit nog niet zo gemakkelijk is te realiseren...

Read More »

Go, get started!

Go is een door Google ontwikkelde programmeertaal gericht op expressiviteit, schaalbaarheid en productiviteit. Go bestaat zo’n 7 jaar, is volledig open source, snel, statisch getypeerd, ontworpen voor concurrency en voorzien van garbage-collection. Mede hierdoor neemt de adoptie van Go snel toe. Grote open source projecten en services zoals Docker, Prometheus and Kubernetes en Soundcloud zijn geschreven in Go en organisaties passen Go steeds vaker toe binnen hun eigen projecten. In dit artikel laten we je kennismaken met Go.

Read More »

Spark of Life

In het Java Magazine van april 2015 heeft Bas in een artikel toegelicht hoe Evolutionaire Algoritmen oplossingen kunnen vinden voor lastige problemen (zie www.nljug.org/databasejava/evolutionaire-algoritmen/). Met behulp van een implementatie in Java werd het Traveling Salesman Problem gebruikt om aan te tonen hoe effectief en efficiënt Evolutionaire Algoritmen zijn in het vinden van (sub)optimale routes voor dit ogenschijnlijk simpele probleem. Na het lezen van dit artikel dacht Niels (terecht): dit kan beter… met Spark!

Read More »

Pipeline as code

Continuous Delivery pipelines met Jenkins 2 In de afgelopen 10 jaar heeft Jenkins zich ontpopt tot de standaard tool voor automatisering in software development. Dit jaar is de eerste grote Jenkins release sinds tijden uitgekomen: Jenkins 2.0. In dit artikel lees je wat er nieuw is. Op JavaOne vertelde Kohsuke Kawaguchi, de maker van Jenkins, dat er meer dan 120.000 …

Read More »