Startpagina   Partners   Training   Hulpmiddelen   Artikelen   Columns   Boeken   Courseware 
Bob Swart (aka Dr.Bob)
Dr.Bob's Boekbesprekingen (3)

Boeken over Delphi 2.0 - wordt verwacht...
In deze column zal ik een tweetal boeken over Delphi uitgebreid de revue laten passeren, in afwachting van de golf boeken specifiek over Delphi 2.0. Het betreft deze keer boeken voor wat meer gevorderde gebruikers van Delphi, en boeken die vaak al iets over Windows 95 of de 32-bits versie van Delphi vertellen, zonder daar overigens heel diep op in te gaan, overigens.

Foundations of Delphi Development for Windows 95
Alhoewel de titel anders doet vermoeden gaat Foundations of Delphi Development for Windows 95 nog steeds voornamelijk over 16-bits Delphi 1.0, en niet over de pasgeleden uitgekomen 32-bits versie Delphi 2.0 (die natuurlijk beter voor Windows 95 geschikt is). De meeste scherm afdrukken zijn gemaakt met Windows 95, alhoewel enkele onder Windows 3.x zijn gemaakt. Alle voorbeelden zijn gemaakt met de 16-bits versie van Delphi en draaien onder elke versie van Windows (hoger dan 3.0 dan).

Het boek bestaat uit vier delen, die gezamenlijk de 'foundation' moeten vormen om van een beginnend Delphi gebruiker een ervaren Delphi programmeur te maken. Het eerste deel is de introduktie; hierin leert de lezer hoe de Delphi (RAD) omgeving te gebruiken is, en enkele eenvoudige programmas te maken zijn. De lezers die zelf al kleine toepassingen hebben geschreven kunnen dit deel eventueel overslaan.
Het tweede deel gaat over het 'User Interface' en kan gezien worden als 'brug' tussen de beginners en de wat meer gevorderde gebrukers. In dit deel komen onderwerpen aan de orde als de Visual Component Library, componenten, en de aspecten om een toepassing er van de buitenkant goed uit te laten zien.
Het derde deel gaat over de toepassingen zelf ('Application') en gaat in op gevorderde onderwerpen zoals het printen, printen van graphics, gebruik van MDI, DDE en OLE, en het programmeren van database toepassingen.
Het vierde deel gaat onder andere in op gevorderde technieken die de inmiddels ervaren Delphi programmeur in staat stellen om de Delphi ontwikkelomgeving zelf uit te breiden: nieuwe componenten schrijven en toevoegen aan het bestaande component palette, components in DLLs stoppen en gebruiken, het toepassen van exception handling in Delphi toepassingen en tot slot een kleine preview op de 'echte' 32-bits versie van Delphi die binnenkort voor Windows 95 uit zal komen. Deze laatste preview bestaat uit een checklist van een aantal pagina's met eigenschappen en funkties die we in deze volgende versie van Delphi 2.0 terug zullen vinden, om de lezer zodoende al wat voor te bereiden op de zaken die komen gaan.

Het aardige van het boek is dat de delen vrij los van elkaar staan. Hierdoor is het boek bijvoorbeeld ook interessant voor een 'ervaren' Delphi programmeur die slechts in deel vier geinteresseerd is. Afhankelijk van het niveau kan de lezer in het gewenste deel 'instappen' en verder lezen tot het eind. De opbouw van de hoofdstukken is overzichtelijk, met op het eind een samenvatting en nog enkele tips en mogelijke projecten die de lezer kan uitproberen (met de zojuist geleerde kennis in het achterhoofd). Het boek is echter niet veel beter dan de boeken die we vorige week bekeken (zoals Mastering Delphi), terwijl deze laatste boeken inmiddels aan een volgende editie toe zijn...

Het boek bevat een CD-ROM met daarop zoals gebruikelijk de broncode van alle voorbeelden en projecten in het boek. Tevens staat op de CD-ROM een hypertext versie van het boek zelf, enkele kleine demo applicaties, en een kopie van de VCL (Visual Component Library) reference manual in Adobe Acrobat formaat (ook te vinden op CompuServe en internet, maar door zijn omvang van bijna 5 Mb vaak moeizaam te downloaded).

Developing Custom Delphi Components
Developing Custom Delphi Components van Ray Konopka is anders dan de andere Delphi boeken. Het betreft hier een boek voor gevorderde dat niet zo zeer over Delphi in het algemeen gaat, maar over een specifiek aspect van Delphi, namelijk het bouwen van Componenten voor Delphi. Na de stroom algemene boeken lijkt de markt hier het meest voor open te liggen; specialistische boeken over slechts één of twee onderwerpen, maar dan wel helemaal de diepte in. Ik verwacht op die manier ook nog wel een aantal boeken die specifiek op Client/Server aspecten van Delphi ingaan, of juist op de mogelijkheid om de Delphi IDE uit te breiden met eigen Experts en een ingebouwd Versie Beheer Systeem. Maar hierover later.

Ray Konopka laat in Developing Custom Delphi Components alle aspekten van het componentbouwen aan de orde komen. Het boek bestaat hiertoe uit vier delen. Het eerste deel gaat over 'Component Basics', en hierin wordt de Delphi VCL componentgepositioneerd ten opzichte van VBX en OCXen. Ook wordt gekeken naar de reden om uberhaubt componenten te ontwikkelen (onder meer functionaliteit, herbruikbaarheid, productiviteit en consistentie komen aan de orde). In het tweede hoofdstuk wordt Delphi's nieuwe object model (met classes) uit de doeken gedaan, gevolgd door een hoofdstuk over properties. Hoofdstuk vier sluit het eerste deel af met een behandeling over exceptions. Door al in een vroegtijdig stadium met exceptions te werken leerts de componentbouwer om deze diep in de componenten in te bouwen, en niet later als sausje toe te voegen. Hierdoor krijgen we robuste componenten die "tegen een stootje" kunnen.
Het tweede deel 'The Delphi Component Architecture' gaat diep in op de Visual Component Library (VCL) die bij Delphi zit. Het is handig, maar niet noodzakelijk, om bij het lezen van dit deel de VCL source code bij de hand te hebben om ook zelf eens (aan de hand) op ontdekkingstocht te gaan. We kunnen veel leren door te kijken hoe Borland zelf zijn component framework in elkaar heeft gezet. Na de VCL gaan het boek vervolgens in op het schrijven van eigen components, met als voorbeeld uitbreidingen op de VCL components (zoals een nieuwe panel, een 3d-label of een listbox met tabstops).
Het derde deel 'Developing Components' begint op het moment dat we eindelijk toe zijn aan het echte complexere werk: het maken van eigen components. We zien nu hoe we 'graphical' component kunnen maken zoals een voortgangsbalk (die je vaak tijdens installatie ziet) en een statusbalk. Ook leren we in hoofdstuk 10 hoe we eigen componenten van de grond af aan kunnen opbouwen (dus niet meer gebasseerd op bestaande VCL componenten), en hoe we DLL 'wrappers' (om BWCC) kunnen schrijven. Andere soorten componenten die we leren schrijven zijn dialogen, onzichtbare (non-visual) en data-aware componenten. Met name de laatste is een eigen hoofdstuk waard, en na dit deel zijn we dan ook volwaardige component bouwers waarna de lezer in staat zou moeten zijn zijn eigen verzameling Delphi componenten te schijven.
Het vierde deel 'Advanced Techniques' gaat dan ook in op gevorderde technieken voor de componenten bouwer. Zelfs iemand die al component had gebouwd voordat die aan dit boek begon te lezen zal hier nog wel enkele interessante hoofdstukken in terugvinden, zoals het schrijven van data-aware business components, maar ook property en component editors (voor design time), het debuggen van components en het schrijven van de component on-line helpfile komen in dit deel aan de orde.

De appendix bevat een stuk over Delphi32 (de in middels uitgekomen 32-bits versie Delphi 2.0), een overzicht van de standaard exception hierarchie, de VCL source code declaratie overzicht en een lisjt met wat er allemaal op de CD-ROM zit (de source code van het boek en enkele andere handige components).

Wie er achter is dat werken met Delphi leuk is, maar dat het nog veel leuker is om eigen Delphi componenten te schrijven kan met dit boek niet stuk. Bij mij staat Developing Custom Delphi Components naast Delphi How-To, op de meest favoriete plek en direkt onder handbereik.

Conclusie
Bestaande boeken over Delphi 1.0 waren meestal veel met elkaar te vergelijken, waardoor de onderlinge verschillen vaak klein waren (zie vorige keer waarin we op een stuk of vijf redelijk gevorderde boeken kwamen die allen ongeveer hetzelfde inhoud hadden en vergelijkbaar oordeel kregen). Nieuwe boeken die vlak voor Delphi 2.0 uitkwamen moesten zich dus onderscheiden. Een manier was door al in te gaan op Delphi 2.0, of in ieder geval deze indruk te wekken (met de term 'Windows 95' in de titel). Een andere manier om op te vallen is door het boek kwa inhoud te specialiseren, zoals het boek Developing Custom Delphi Component goed is gelukt. Dit boek is door zijn specialistische, doch Delphi versie onafhankelijke inhoud goed bruikbaar voor de huidige Delphi 1.0 en de toekomstige Delphi 2.0 gebruikers. Juist door de specialistische inhoud verwacht ik dat dit boek over een jaar nog te krijgen zal zijn, terwijl het boek van Tom Swan dan al lang niet meer interessant is (tenzij er nog een vervolg-editie op komt die écht over Delphi 2.0 en Windows 95 gaat).

Delphi 2.0
Tegen de tijd dat u dit stuk leest zal de 32-bits versie van Delphi (versie 2.0) inmiddels uit zijn gekomen. Vlak hierna verwacht ik ook enkele boeken specifiek over deze nieuwe 32-bits versie, en dat zal dan ook het onderwerp zijn van de volgende keer: boeken over Delphi 2.0. Het was eigenlijk al een beetje aangekondigd voor deze keer, maar de uitgevers laten nog een beetje op zich wachten (zoals Delphi 2.0 zelf ook heeft gedaan, overigens), dus nog twee maandjes geduld alstublieft.


Dit artikel is eerder verschenen in SDGN Magazine #36 - mei 1996
This webpage © 1999-2005 by webmaster drs. Robert E. Swart (aka - www.drbob42.com). All Rights Reserved.