Archief voor september, 2008

Is maximale flexibiliteit in software wel de “holy grail”?

26 september 2008

Iedere programmeur is zich ervan bewust dat elk probleem op (ontelbaar) veel manieren is op te lossen. 2 belangrijke variabelen waar je als programmeur bewust of onbewust mee speelt zijn complexiteit en flexibiliteit. Complexe code is code die moeilijk te lezen/begrijpen is, vooral door anderen. Een flexibele applicatie kan gemakkelijk veranderingen ondergaan zonder dat er veel code veranderd hoeft te worden.
Lees verder >>

Iedere programmeur is zich ervan bewust dat elk probleem op (ontelbaar) veel manieren is op te lossen. 2 belangrijke variabelen waar je als programmeur bewust of onbewust mee speelt zijn complexiteit en flexibiliteit. Complexe code is code die moeilijk te lezen/begrijpen is, vooral door anderen. Een flexibele applicatie kan gemakkelijk veranderingen ondergaan zonder dat er veel code veranderd hoeft te worden.
Lees verder >>

Domein modelleren is niet moeilijk

26 september 2008

Er wordt vaak erg ingewikkeld gedaan over domein modelleren. Het is echter minder moeilijk dan het lijkt. De belangrijkste fouten die ik vaak tegen kom zijn modelleren op basis van informatie en modelleren op basis van diep nadenken. Goed domein modelleren gebeurt echter op basis van gedrag en op basis van relevante observaties.
Lees verder >>

Er wordt vaak erg ingewikkeld gedaan over domein modelleren. Het is echter minder moeilijk dan het lijkt. De belangrijkste fouten die ik vaak tegen kom zijn modelleren op basis van informatie en modelleren op basis van diep nadenken. Goed domein modelleren gebeurt echter op basis van gedrag en op basis van relevante observaties.
Lees verder >>

Dimmen met DSL’s

25 september 2008
Maak of definieer zo min mogelijk eigen DSL’s. Een van de belangrijkste uitdagingen in de software engineering is het vertalen van problemen omschreven in natuurlijke taal naar een zekere vorm van een model dat dit probleem simuleert en sommige aspecten ervan gedeeltelijk automatiseert. Dit betekent allereerst dat het probleemdomein doorgrond moet worden en daarnaast dat je je een bepaalde modelleertaal eigen moet maken.

Met het creëren van een specifieke taal voor sommige aspecten van dit probleem (of, erger nog, uitsluitend voor het specifieke probleem) werk je in exact de tegengestelde richting. Om deze beschijvingen te kunnen gebruiken dienen consumenten ervan ineens een hele nieuwe taal te leren! Dit komt ongeveer neer op de bouwvakker die voor elk gebouw dat hij moet maken een nieuw soort bouwtekening moet kunnen lezen. Ik vind juist het vertalen van complexe bedrijfsproblemen van specifieke omschrijvingen naar een meer generieke modelleer- of programmeertaal de kerncompetentie van de software engineer.
Lees verder >>

Maak of definieer zo min mogelijk eigen DSL’s. Een van de belangrijkste uitdagingen in de software engineering is het vertalen van problemen omschreven in natuurlijke taal naar een zekere vorm van een model dat dit probleem simuleert en sommige aspecten ervan gedeeltelijk automatiseert. Dit betekent allereerst dat het probleemdomein doorgrond moet worden en daarnaast dat je je een bepaalde modelleertaal eigen moet maken.

Met het creëren van een specifieke taal voor sommige aspecten van dit probleem (of, erger nog, uitsluitend voor het specifieke probleem) werk je in exact de tegengestelde richting. Om deze beschijvingen te kunnen gebruiken dienen consumenten ervan ineens een hele nieuwe taal te leren! Dit komt ongeveer neer op de bouwvakker die voor elk gebouw dat hij moet maken een nieuw soort bouwtekening moet kunnen lezen. Ik vind juist het vertalen van complexe bedrijfsproblemen van specifieke omschrijvingen naar een meer generieke modelleer- of programmeertaal de kerncompetentie van de software engineer.
Lees verder >>

API Design

22 september 2008

Joshua Bloch heeft een zeer mooie opsomming gemaakt van regels voor het ontwerpen van goede API. Lees zijn post op InfoQ: Bumper-Stick API Design.
Mooi voorbeeld uit zijn tekst:
Lees verder >>

Joshua Bloch heeft een zeer mooie opsomming gemaakt van regels voor het ontwerpen van goede API. Lees zijn post op InfoQ: Bumper-Stick API Design.
Mooi voorbeeld uit zijn tekst:
Lees verder >>

Uitvoerbare JAR bestanden met Maven

19 september 2008

Met Maven is het zeer eenvoudig om JAR bestanden uitvoerbaar te maken.

Dynamisch Programmeren (een uitdaging)

14 september 2008

Zo, nu deze verwarrende titel je aandacht heeft getrokken, zal ik eerst proberen die verwarring weg te nemen. Het dynamisch programmeren wat hier bedoeld wordt, heeft niets te maken met dynamische talen en ook niets met extra veel bewegen achter je toetsenbord en/of beeldscherm. Net zoals extreme programming niets te maken heeft met op bergtoppen of onder water programmeren.
Lees verder >>

Een poging om dynamisch programmeren zowel recursief als object georienteerd te implementeren, naar aanleiding van de uitdaging van André. De post sluit af met een nieuwe uitdaging aan de lezer om het model te verbeteren, waarbij naast eeuwige roem een fles wijn te verdienen valt.

Advocaat van de duiVBel

14 september 2008

Wat maakt een programmeertaal tot een Goede Programmeertaal?
Lees verder >>

Wat maakt een programmeertaal tot een Goede Programmeertaal?
Lees verder >>

Bookmarks

12 september 2008

Een overzicht van interessante websites voor Open Source software.

Settings.settings vs. App.config, the best of both worlds

11 september 2008

Bij het ontwikkelen van vrijwel elk stuk software wil je graag dat instellingen configureerbaar opgeslagen en beheerd kunnen worden. Aan de ene kant wil je naar buiten toe dat een applicatie configureerbaar is voor de eindgebruiker, bijvoorbeeld welke server er wordt gebruikt voor de databaseconnectie. Aan de andere kant wil je binnen de applicatie zelf Continue reading →

Codecamp 2008, finished

07 september 2008

Gisteren eens een zaterdag die niet in het teken stond van de Albert Heijn: vandaag was er de tweede editie van Codecamp. Een dag waarbij ik weer veel oude bekenden heb gesproken en veel nieuwe interessante mensen heb ontmoet.
Lees verder >>

Gisteren eens een zaterdag die niet in het teken stond van de Albert Heijn: vandaag was er de tweede editie van Codecamp. Een dag waarbij ik weer veel oude bekenden heb gesproken en veel nieuwe interessante mensen heb ontmoet.
Lees verder >>