Archief voor oktober, 2008

Statisch testen? Doen!

28 oktober 2008

In een eerder artikel heb ik al enkele tips gegeven om betere unit testen te schrijven. Naast unit testen heeft een developer ook nog een andere vorm van testen tot zijn beschikking. Die van de statische analyse. Deze vorm van testen wordt in mijn ogen nog te weinig benut om veelgemaakte fouten uit je software te halen. Een voorbeeld:
Lees verder >>

In een eerder artikel heb ik al enkele tips gegeven om betere unit testen te schrijven. Naast unit testen heeft een developer ook nog een andere vorm van testen tot zijn beschikking. Die van de statische analyse. Deze vorm van testen wordt in mijn ogen nog te weinig benut om veelgemaakte fouten uit je software te halen. Een voorbeeld:
Lees verder >>

Modelgedreven ontwikkelstraat in .NET (2): Associaties

28 oktober 2008

Als in mijn vorige post gedemonstreerd kunnen we makkelijk attributen (ofwel properties) genereren op basis van een gegeven model. Dat is echter maar één van de basisaspecten van ons model. In deze post wil ik graag ingaan op de transformatie van gemodelleerde associaties naar code.
Lees verder >>

Als in mijn vorige post gedemonstreerd kunnen we makkelijk attributen (ofwel properties) genereren op basis van een gegeven model. Dat is echter maar één van de basisaspecten van ons model. In deze post wil ik graag ingaan op de transformatie van gemodelleerde associaties naar code.
Lees verder >>

Modelgedreven ontwikkelstraat in .NET (1): Model

25 oktober 2008

Zoals door mij in een eerdere post aangegeven begin ik bij deze met een serie posts over een modelgedreven ontwikkelstraat in .NET. Ik spreek van ontwikkelstraat maar bedoel hier eigenlijk alleen de client-side tooling binnen visual studio met eventuele extensions in de vorm van een met behulp van DSL Tools gemaakte UML Class diagram kloon.
Lees verder >>

Zoals door mij in een eerdere post aangegeven begin ik bij deze met een serie posts over een modelgedreven ontwikkelstraat in .NET. Ik spreek van ontwikkelstraat maar bedoel hier eigenlijk alleen de client-side tooling binnen visual studio met eventuele extensions in de vorm van een met behulp van DSL Tools gemaakte UML Class diagram kloon.
Lees verder >>

Java Virtual Machine schakelopties

20 oktober 2008

De Sun JVM (Java Virtual Machine) kent een enorme lijst van schakel opties. Deze opties beïnvloedden het gedrag en performance van de JVM. Een paar interessante opties som ik hier op.

Ontkoppeling

19 oktober 2008

Dijkstra heeft ons jaren terug al verteld dat we koppeling in onze software laag moeten houden maar zaken die bijelkaarhoren moeten groeperen (high cohesion). Dit komt kort gezegd neer op goede indeling van verschillende onderdelen van software zodat onderdelen beter onafhankelijk van elkaar kunnen worden ontwikkeld en onderhouden. We zien dit bijvoorbeeld in object georienteerde talen terugkomen onder de noemer ‘encapsulatie’. Als we naar architectuurstijlen kijken zien we dat we component gebaseerd ofwel gelaagd kunnen werken om zo logische ontkoppeling van verschillende applicatieonderdelen te realiseren. Ik zou graag echter twee zaken omtrent ontkoppeling willen bediscussieren in deze post.
Lees verder >>

Dijkstra heeft ons jaren terug al verteld dat we koppeling in onze software laag moeten houden maar zaken die bijelkaarhoren moeten groeperen (high cohesion). Dit komt kort gezegd neer op goede indeling van verschillende onderdelen van software zodat onderdelen beter onafhankelijk van elkaar kunnen worden ontwikkeld en onderhouden. We zien dit bijvoorbeeld in object georienteerde talen terugkomen onder de noemer ‘encapsulatie’. Als we naar architectuurstijlen kijken zien we dat we component gebaseerd ofwel gelaagd kunnen werken om zo logische ontkoppeling van verschillende applicatieonderdelen te realiseren. Ik zou graag echter twee zaken omtrent ontkoppeling willen bediscussieren in deze post.
Lees verder >>

Databinding a listbox control to an object collection

10 oktober 2008

When you databind an object collection to a listbox, the ToString() method is used to visualize the items in the listbox. Adding and removing items to the collection automatically updates the listbox, but changing the output of the ToString() method does not.
Lees verder >>

When you databind an object collection to a listbox, the ToString() method is used to visualize the items in the listbox. Adding and removing items to the collection automatically updates the listbox, but changing the output of the ToString() method does not.
Lees verder >>

Boekje: Modelgedreven Softwareontwikkeling

05 oktober 2008

De afgelopen maanden ben ik met een collega, Pieter Joost van de Sande, bezig aan een boekje over softwareontwikkelingsrecepten. Als bijproduct van deze activiteit heb ik ernaast een kort boekje gemaakt over de algehele lijn in softwareontwikkeling zoals wij dat zien.
Lees verder >>

De afgelopen maanden ben ik met een collega, Pieter Joost van de Sande, bezig aan een boekje over softwareontwikkelingsrecepten. Als bijproduct van deze activiteit heb ik ernaast een kort boekje gemaakt over de algehele lijn in softwareontwikkeling zoals wij dat zien.
Lees verder >>

Unit testen, enkele tips

03 oktober 2008

Als je de afgelopen jaren niet ergens in een grot hebt gewoond, weet je nu wel dat bij het ontwikkelen van software testen een belangrijke rol inneemt. Een van die vormen van testen is zelfs een hoeksteen van een hele beweging binnen de software ontwikkeling. Unit testen is een basis beginsel bij agile ontwikkelen.
Lees verder >>

Als je de afgelopen jaren niet ergens in een grot hebt gewoond, weet je nu wel dat bij het ontwikkelen van software testen een belangrijke rol inneemt. Een van die vormen van testen is zelfs een hoeksteen van een hele beweging binnen de software ontwikkeling. Unit testen is een basis beginsel bij agile ontwikkelen.
Lees verder >>

Implementeren is modelleren

03 oktober 2008

Net als het schrijven van de code vind modelleren plaats over de gehele duur van het project. In een eerder artikel werden twee regels beschreven die een model erg eenvoudig hielden. Dit gaf een hoop ruimte die tijdens de implementatie ingevuld moet worden. Dat is echter niet erg want goed implementeren is een vorm van modelleren.
Lees verder >>

Net als het schrijven van de code vind modelleren plaats over de gehele duur van het project. In een eerder artikel werden twee regels beschreven die een model erg eenvoudig hielden. Dit gaf een hoop ruimte die tijdens de implementatie ingevuld moet worden. Dat is echter niet erg want goed implementeren is een vorm van modelleren.
Lees verder >>

Organogram 2.0

01 oktober 2008

Ideeën komen wanneer hen dat zelf schikt*. Deze kwam gisteren, vlak voordat ik het podium op moest voor een voorstelling over Websibitionisme. Niet een ideaal moment, maar ik heb mijn best gedaan om hem te onthouden en ik geloof dat ik de redenering nog wel kan reproduceren..
Lees verder >>

Alle normale organogrammen zijn fout! Lees hier een voorstel ter verbetering..