Modulaire webapplicaties met OSGi

Als je niet oppast wordt een codebase snel onhandelbaar. Voor je het weet heb je honderden kilobytes aan spaghetti code. Voor webapplicaties is dat niet anders. Door applicaties op te knippen in kleinere delen, elk met een duidelijke taak en API, blijft je code beheersbaar. De OSGi specificatie beschrijft een architectuur om dit te ondersteunen. Dit artikel beschrijft hoe je OSGi kan gebruiken om modulaire webapplicaties te ontwikkelen.
Lees verder »

  |  Eén reactie

RIA’s @ Devoxx 2008

Van 8 tot en met 12 december was hij er weer JavaPolis, uhh Devoxx 2008. Een afgeladen programma met alle nieuwe trends en achtergrond info over alles wat direct en indirect met Java te maken heeft.

Ondergetekende had zich het doel gesteld om zijn kennis op het gebied van rich internet applicaties (RIA’s) eens bij te spijkeren. Dus op naar de sessie over JavaFX, Flex, GWT en Silverlight. Ja, zelfs Microsoft was deze keer aanwezig om de verstokte Java ontwikkelaar over te halen.

In dit artikel ga ik proberen een kort overzicht te geven van elk van de raamwerken en dan af te sluiten met waar ik zie dat elk raamwerk het meest tot zijn recht komt
Lees verder »

  |  Eén reactie

Onderhoudbaar CSS in 4 stappen

Goed, duidelijk, onderhoudbaar en overdraagbaar CSS schrijven levert nog wel eens wat problemen op. Maar al te vaak ontstaan ellenlange CSS files met enorme hoeveelheid klassedeclaraties. Als je ooit een dergelijk project mag onderhouden of aanpassen, dan ben je nog niet jarig. In dit artikel geef ik aan hoe je structuur in je CSS kan aanbrengen. Object georienteerd werken is daar één van. Weet je eindelijk waarom een “class” een “class” heet.
Lees verder »

  |  3 reacties

Devoxx 2008: JavaFX, Java 7 en scripttalen

Elk jaar rond half december reist de Europese Java-wereld af naar Antwerpen om aldaar op de hoogte te worden gebracht van de nieuwste ontwikkelingen op hun vakgebied. Dit jaar werd Devoxx voor de eerste keer georganiseerd van 8 tot en met 12 december, en was het evenement voor de tweede keer op rij volledig uitverkocht. Deze tegenstrijdigheid is te verklaren uit het feit dat Devoxx tot vorig jaar nog bekend stond onder de naam JavaPolis, maar deze naam is wegens merkenrechten-discussies gewijzigd in Devoxx. In dit artikel zal een impressie worden gegeven van de conferentie en de belangrijkste trends worden besproken.
Lees verder »

  |  Reageer

Scala

Wat is Scala?
Java is al lang niet meer de enige taal die draait op de Java Virtual Machine. Ruby draait ondertussen ook prima op de JVM net als andere dynamische script talen als Groovy, Clojure en Ioke. Ook Scala draait op de JVM. Maar Scala is net iets anders. Scala is een statisch getypeerde programmeertaal die zowel object-georiënteerd als functioneel is. Scala compileert naar Java bytecode en is daardoor interoperabel met Java. Scala wordt door sommigen wel eens aangeduid als de “Next Java”. Maar ik denk niet dat Scala Java op korte termijn zal vervangen. Maar mocht je toch nieuwsgierig zijn hoe Java er straks uit zou kunnen gaan zien dan kan je vandaag Scala proberen!
Lees verder »

  |  5 reacties

Oplossen van Constraint Satisfaction Problems

Inleiding

Onlangs heb ik J-Fall 2008 bezocht. De eerste keer dat ik dit Java congres bezoek. In alles wat kleiner dan JavaPolis maar over het algemeen erg interessant en goed georganiseerd. Naast het gebruikelijke t-shirt werpen en een mooie JavaFX demo met een Wii afstandsbediening en een projector die enthousiast werd onthaald, wil ik een onderwerp extra belichten naar aanleiding van een lezing die ik daar bezocht heb: het oplossen van Constraint Satisfaction Problems met Java [1]. In dit artikel neem ik de proef op de som door met een CSP framework te proberen een Sudoku puzzel op te lossen.
Lees verder »

  |  2 reacties

Ruby on Rails 2.2 staat voor de deur

De eerste release candidate van Ruby on Rails 2.2 is een paar dagen uit. Het kon daarom ook niet uitblijven dat er ook op het blog van Finalist wat over deze bijzondere release geschreven werd. Deze release is een van de belangrijkste releases, aangezien het twee grote tekortkomingen van Rails oplost. Het gaat dan natuurlijk over thread-safety en internationalisatie (i18n). Er zijn er natuurlijk nog veel meer nieuwe features dan de twee die ik hier uitlicht. Een complete lijst is hier te vinden.

Lees verder »

  |  5 reacties

Testconferentie Eurostar 2008 (dag 4)

De laatste dag op de conferentie was verrassend interessant. Ik ben naar een spreker geweest over performance testen. Omdat ik daar nauwelijks iets vanaf weet, had ik wel verwacht daar iets van op te steken. Maar daarnaast had ik besloten om naar een spreker te gaan die het zou hebben over een model van testen. Dit was een grote gok en klonk vooral erg theoretisch. Dat was het, maar wel met een zeer leerzame praktische insteek.
Lees verder »

  |  Reageer

Testconferentie Eurostar 2008 (dag 3)

Het is nu de een na laatste dag van de conferentie. Vandaag weer veel sprekers gehoord, maar er waren twee presentaties die voor mij echt leerzaam waren. De eerste ging over het aansluiten bij de wensen van de klant/werkgever. De andere over het generen van testdata.
Lees verder »

  |  Reageer

Testconferentie Eurostar 2008 (dag 2)

Vandaag heb ik veel informatie gehoord. De sprekers waar ik geweest ben, spraken over heel verschillende onderwerpen. Twee presentaties wil ik hier verder bespreken. Een over testomgevingen en een over het verbeteren van unit-testen.
Lees verder »

  |  Reageer

Testconferentie Eurostar 2008 (dag 1)

Deze week ben ik mijn kennis op het gebied van testen aan het uitbreiden. Er is namelijk een Europese testconferentie in Nederland. Elk jaar wordt deze conferentie, met de naam Eurostar, ergens in Europa georganiseerd. Dit jaar is de conferentie in Den Haag.

Lees verder »

  |  Eén reactie

Tapestry 5 en Hibernate, een gouden duo?

Tapestry 5, een component gebaseerd web framework, is al geruime tijd in ontwikkeling en werkt naar een release candidate toe. In februari 2007 had ik al eens een artikel geschreven over de preview release van Tapestry 5 (5.0.1). Ondertussen zijn we bij versie 5.0.15 wat de laatste release zou zijn voor de Release Candidate. Recentelijk heb ik een project gedaan met de 5.0.15 release en de ervaringen zijn erg positief. Met name hoe Hibernate is geïntegreerd met Tapestry 5 is onderwerp van dit artikel.
Lees verder »

  |  Reageer

Custom components in Flex

Standaard MXML componenten zijn handig maar bieden niet altijd de
functionaliteit die je zou willen. Soms is het handiger (en leuker) om eigen
componenten te ontwikkelen.

De Adobe Livedocs worden op dit punt een beetje vaag. De woorden “zoek het
zelf maar uit” lijken haast onlosmakelijk verbonden te zijn met Flex.

In dit korte blog artikel zal ik ingaan op de basis van custom UIComponent’s.
Dan zal ik voornamelijk ingaan op het maken van UIComponent’s op basis van
Actionscript 3.0. Tenslotte zal ik kort wat vertellen over CSS styling en
custom UIComponent’s.

Lees verder »

  |  2 reacties

Een nieuwe Java plug-in voor de web browser

Al met de eerste versie van Java waren er applets. Applets zijn Java applicaties die in een web browser kunnen draaien. Hoewel dit in 1995 een veelbelovende technologie leek, zijn Java applets nooit zo populair geworden als bijvoorbeeld Flash applicaties. Enerzijds is het lastiger om een goede applet te schrijven (maar niet onmogelijk). Anderzijds had de Java browser plugin een aantal beperkingen. Na vele jaren heeft Sun een antwoord op beide problemen. Namelijk JavaFX en een nieuwe Java web browser plug-in.
JavaFX is een technologie om eenvoudig Rich Internet Applications (RIA’s) te kunnen ontwikkelen. Er is op dit moment preview release beschikbaar. Maar ik wil het nu hebben over de nieuwe Java web browser plug-in.
Lees verder »

  |  2 reacties

BerkeleyDB Java Edition

Inleiding

Af en toe komt de situatie voor dat je een groot aantal key/value paren wil opslaan. Sessies aan de hand van hun sessie id, klanten met hun klantnummer, webpagina’s aan de hand van hun url, etc. Verder wil je dit ook snel en makkelijk implementeren. In dat geval is BerkeleyDB de moeite waard om eens te bekijken.

Wat is het

BerkeleyDB Java Edition is een open-source non-relationele database  geimplementeerd in java. Conceptueel werkt BerkeleyDB als een oneindig grote (gelimiterd door harde schijf ruimte), persistente HashMap. Verder is BerkeleyDB Open Source met een GNU compatible licentie.
Lees verder »

  |  3 reacties

« Eerdere artikelen ·