De VO-ers konden op deze zonnige vrijdag genieten van een hele dag VO tracks. Allereerst werden twee sessies gevuld met de zogeheten masterclass. Enkele ontwikkelaars hadden code ingestuurd om te worden gereviewed door Frans de Wit.. Dat is een klus die je wel aan Frans over kunt laten. Allereerst behandelde hij een stukje code die Dick van Kooten had ingestuurd. Het betrof een method op de window class die de achtergrondkleuren van controls moest regelen. De code crashte volgens Dick op een enkele Windows98 machine.
Frans kon de pijnpunten uit de code halen en liet ook zien hoe met een Object-geOrienteerde benadering de code een stuk beter leesbaar en onderhoudbaar kon worden geschrevem.
Verder volgde hieruit een interessante discussie over of en hoe je middels delegation kunt voorkomen dat je methods direct op de window- of de controlclass schrijft.
Dit laatste is zeker een nieuwe sessie waard.
Erik Visser had ter beoordeling een sample met zijn polygon class ingezonden. Daarin viel Frans op dat er een strong typed fMax functie was geschreven. (Overeenkomstig de VO Max() function). Dit was gedaan in de veronderstelling dat een functie die strong typed floats als parameters bevat sneller is dan een die usuals heeft. Deze aanname bleek geheel ten onrechte. Een eenvoudige test gaf aan dat de Max functie van VO toch een 25% sneller was.
Nog aardiger was dat Frans ook nog even een IIF() had getest.
IIF( x > y, x, y ) .
Deze oplossing bleek de snelste van allemaal, 3 tot 4 keer sneller dan de Max() functie.
Belangrijke les hieruit is natuurlijk dat je niet zomaar iets moet aannemen, maar waar mogelijk moet testen.
Verder gaf Frans tips en opmerkingen over notatie en documentatie van de code
Voorafgaand aan de sessie van Robert over de toekomst van VO stelde Erik Visser zich voor als nieuwe voorzitter van de VO-Developers Network opvolger van Ed Richard. Ed emigreert naar Australië en werd zeer hartelijk bedankt voor zijn inzet voor de VO gemeenschap.
Erik vertelde over de plannen van het komende jaar. Meer hierover in de komende nieuwsbrief en binnenkort op de SDN site
Robert van der Hulst gaf als lid van het VO-DevTeam in zijn sessie de plannen weer van Grafx met VO 32 en VO.NET. Er komt een VO 2.8 versie. Een release datum is niet gesteld, maar ik verwacht deze niet binnen een half jaar. Deze VO 2.8 versie zal naast fixes en verbeteringen ook een heleboel nieuwe features bevatten, waaronder bijv. Interfaces en een andere sourcecode editor/debugger. Code generation zal template (XML) based worden
Op het VO.NET vlak wordt flinke vooruitgang geboekt. Gepland staat een eerste commerciële release aan het eind van dit jaar. VO.NET zal dan volledig geïntegreerd zijn met Visual Studio 2005. Op dit vlak en gezien de zeer voorspoedige ontwikkelingen zal het probleem eerder zijn dan VS2005 niet tijdig genoeg gereed is dan dat het zal liggen aan VO.NET zijde.
De deelnemers aan het VOPS plan krijgen ongeveer maandelijks nieuwe versies van zowel VO32 als VO.Net en kunnen zo de ontwikkelingen op de voet volgen. Daarnaast nodigde Robert de VOPS-ers nadrukkelijk uit om mee te discussiëren over taalelementen van VO.NET. Zo zal in de huidige opzet niet voorzien in de mogelijkheid om zelf aanvullingen op de Control en de window class te schrijven. Dit wordt door verschillende mensen als de belangrijke feature van VO gezien en zij zullen dit aankaarten op het VOPS forum.
De laatste sessie gaf Ed Richard de mogelijkheden aan die er nu al zijn in VO.NET.
Want iedereen kan wel zeggen dat er vooruitgang wordt geboekt, dat willen we natuurlijk zelf ook graag zien. Ed heeft een aantal voorbeelden gegeven van hoe nu reeds kan worden gecompileerd en gedebugged met Visual Studio. Verschillende PRG’s tonen aan dat nu reeds het .NET framework geheel ter beschikking staat en dat eigen functies en classes kunnen worden gedefinieerd. Zo liet Ed zien hoe je een object kunt serializen naar een XML file en omgekeerd een XML file kunt inlezen en casten naar een object.
De voorbeelden van Ed’s sessie (en nog enkele meer) staan elders op de SDN site.