Deze week kwam er weer een oude vertrouwde discussie langs: IoC versus Observable. Mijn collega Ralf Wolter heeft hier een tijd terug al eens een inspirerende blogpost over geschreven: Liever geen Inversion of Control.
Het argument dat deze keer naar voren kwam was dat een observable toch kennis moest hebben van het contract dat naar buiten [...]
Lees verder >>
Berichten met de tag ‘Architectuur’
IoC versus Observable revisited
02 augustus 2009Modellering: Wat besteed je uit aan een framework?
21 mei 2009
Afgelopen week had ik met een aantal collega’s een discussie over modellering. De situatie was als volgt: in een bepaalde applicatie was een (N)Hibernate mapping gedaan van een collectie met een List mapping. Dit was gedaan om NHibernate deze lijst een volgorde te kunnen laten bijhouden – en daar bleken wat onverwachte problemen mee te [...]
Lees verder >>
Lees verder >>
Test Driven Design by Contract
19 mei 2009
Laatst hoorde ik iemand beweren dat in statisch getypeerde talen Design by Contract (DbC) een superieur alternatief is voor Test Driven Design (TDD). Mijn standpunt was andersom: TDD is veel meer dan alleen unit testen en zelfs unit tests zijn niet volledig vervangbaar door DbC. Ik heb de belangrijkste argumenten in de discussie nog eens bij [...]
Lees verder >>
Lees verder >>
Software platform migratie patronen
03 januari 2009
Sogyo heeft inmiddels over de jaren diverse migratietrajecten begeleid voor klanten die zelf software bouwen. Denk hierbij aan migratie van applicaties ontwikkeld in Delphi, Visual Basic (6 of eerder) of Microsoft Access (in combinatie met VBA) naar een modern ontwikkelplatform als Microsoft .NET of een Java gebaseerd platform.
Er wordt vaak gekozen om op een bepaald [...]
Lees verder >>
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.
Allereerst, wat zijn associaties eigenlijk? In feite zou je als je [...]
Lees verder >>
Lees verder >>
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 [...]
Lees verder >>
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:
If you get an API right, code will read like prose.
AKPC_IDS += "421,";
Lees verder >>
Lees verder >>
Groene Software?
21 augustus 2008
Getriggerd door de laatste call for papers voor het MSDN Magazine ben ik aan het nadenken geslagen over het vergroenen van (maatwerk) software.
Is bijvoorbeeld SaaS groener dan good-old client/server in een LAN? Hier denkt men van wel. En hoe kan het nog beter? Is bijvoorbeeld point-to-point werken niet nog veel efficienter? Van veel servers naar [...]
Lees verder >>
Lees verder >>
Algoritmiek
28 juli 2008
Algoritmiek is het ontwerpen van (efficiente) algoritmen. In deze tijd van buzzwords, patterns en frameworks zouden we bijna vergeten dat dit de basis van het werk van een programmeur is.
Een algoritme is een sequentie van instructies die gevolgd moeten worden om een bepaald doel te bereiken. Dit is dus breder dan instructies voor processoren; ook [...]
Lees verder >>
Lees verder >>
Object Identity
06 juli 2008
Iets dat in de meeste platformen heden ten dage op het eerste gezicht goed geregeld is is het concept van object identity. In feite is dit onder water de pointer die we toewijzen (reference) aan bijvoorbeeld variabelen in onze code. Een object bevindt zich op een bepaalde plaats in het geheugen en dat is daarmee [...]
Lees verder >>
Lees verder >>

