Publications‎ > ‎Software reviews‎ > ‎

Programmeren nieuwe stijl

Via de uitgebreide Library Viewer, die gebaseerd is op de HTMP Help control, heb je toegang tot alle Microsoft Developer Network (MSDN) informatie. Met Visual Studio 6.0 levert Microsoft een alles-in-één omgeving voor het ontwikkelen volgens de Windows Distributed interNet Applications (DNA) strategie, het op COM gebaseerde raamwerk voor het ontwikkelen van bedrijfsoplossingen waarin gebruik wordt gemaakt van een combinatie van internet- en client/server technologieën.

De belangrijkste onderdelen binnen deze suite van programmeeromgevingen zijn Visual C++ 6.0, Visual Basic 6.0, Visual J++ 6.0, Visual FoxPro 6.0 en Visual InterDev 6.0. In deze eerste aflevering staat Visual C++ 6.0 in het voetlicht. Benieuwd wat het Microsoft Visual C++ ontwikkelteam heeft uitgevoerd sinds versie 5.0, waar je in PCM 6/97 een bespreking over kon lezen?

Microsoft Visual Studio 6.0



Kernachtig

In de sterk uitgebreide ATL Object Wizard kun je COM objecten in vrijwel iedere smaak aanmaken. Microsoft Visual C++ 6.0 is het fundament van de Visual Studio 6.0 ontwikkelomgeving. Eenvoudig gezegd bestaat het ontwikkelen van Windows DNA toepassingen voor een aanzienlijk deel uit het verbinden van COM onderdelen, waarin het Component Object Model de object-geörienteerde, taalonafhankelijke infrastructuur verschaft. Visual C++ is al jaren hét gereedschap bij uitstek om deze bouwstenen te ontwikkelen. Als programmeur heb je namelijk in hoge mate controle over het gecompileerde resultaat, simpelweg omdat het ontwikkelproces zich op een relatief laag niveau afspeelt. Visual C++ wordt weliswaar geleverd met zowel de Microsoft Foundation Classes (MFC) 6.0 bibliotheek als de Active Template Library (ATL) 3.0 sjablonen om het coderen aanzienlijk te vereenvoudigen, maar het ‘visual’ voorvoegsel in de produktnaam duidt hier niet op een 4GL-omgeving, zoals dat bijvoorbeeld wel voor Visual Basic geldt.

In drievoud

Microsoft Visual C++ 6.0 is beschikbaar in een Standard, Professional en Enterprise Edition. De Standard Edition biedt grotendeels dezelfde mogelijkheden als de Professional Edition, maar gezien het onbreken van de mogelijkheid om de compiler-code te kunnen optimaliseren en het niet statisch kunnen linken met de Microsoft Foundation Classes (MFC) bibliotheek in deze editie is het echter raadzaam om minimaal de Professional Edition aan te schaffen.

De Enterprise Edition bevat uitbreidingen voor het ontwikkelen van intranet en internet client/server toepassingen, zoals bijvoorbeeld het geïntegreerd debuggen van procedures in SQL Server, extra componenten en andere hulpgereedschappen.

Hulpvaardig

Zoeken naar specifieke informatie in de 1,1 GB informatie is eenvoudig. Bovendien worden de treffers weergegeven op de gevonden pagina. Over de online-documentatie valt bij iedere nieuwe versie van Visual C++ wel weer het één en ander te melden. Ook deze keer is het weer raak. De afgelopen jaren kon Visual C++ zich be roemen op het geïntegreerde hulpsysteem, maar vanaf nu kiest Microsoft voor een zelfstandig systeem dat gebaseerd is op HTML Help, net als in bijvoorbeeld Internet Explorer 4. Vanuit Microsoft Developer Network (MSDN) Library Help heb je op zeer gebruikersvriendelijke wijze toegang tot maar liefst 1,1 GB aan informatie, documentatie en voorbeeldcode! In de laatste categorie verdient overigens de ActiveX Control Container een speciale vermelding. De nieuwe versie van dit testprogramma voor ActiveX controls is niet alleen volledig herzien, maar bovendien is nu tevens de volledige broncode beschikbaar.

Gevoelig

IntelliSense in C++: na het typen van de pijl- of puntoperator verschijnt de Automatic Statement Completion listbox met de functies die bij het actieve object horen. Nieuw in de Visual Studio omgeving is een uitgebreide implementatie van Microsoft’s IntelliSense technologie. Automatic Statement Completion toont de lijst met bijbehorende eigenschappen en methoden voor een klasse zodra je de punt-operator typt. Deze functionaliteit is niet alleen beschikbaar voor de standaard MFC klassen en ATL sjablonen, maar werkt bovendien in veel gevallen ook bij je eigen code. En dan te bedenken dat concurrent Inprise bij de lancering van Borland C++ Builder 3.0 nog meldde dat deze functionaliteit praktisch gezien niet haalbaar was vanwege de inherente complexiteit van C++!

Een andere IntelliSense onderdeel is het contextgevoelige tipvenstertje dat zowel parameter informatie, bijbehorende code commentaren als datatype informatie kan verschaffen over het variabele die zich onder de cursor bevindt.

In uitvoering

Dankzij Edit And Continue kun je tijdens het debuggen verbeteringen in de code aanbrengen zonder de debugger te hoeven verlaten. De meest sensationele toevoeging aan Visual C++ komt echter pas aan het licht tijdens het debuggen. Dankzij Edit And Continue kun je namelijk wijzigingen doorvoeren in de broncode zonder de debugger te verlaten, wat de produktiviteit enorm kan verhogen. Er zijn echter nog wel een flink aantal beperkingen aan Edit And Continue. Zo kun je geen wijzigingen aanbrengen in globale of statische code en kun je definities van klassen en data types niet wijzigen, maar voor typefouten en andere suffigheden hoef je vanaf nu in ieder geval niet meer terug naar de compiler.

Bibliotheken

De relatie tussen MFC en ATL is in Visual C++ 6.0 een stuk duidelijker geworden, aangezien je nu binnen MFC projecten met behulp van een wizard ATL code kan invoegen. Niet alleen zijn deze bibliotheken dus voor een groot deel complementair, maar ook vullen ze elkaar nu aan zonder pijnlijke compilatieconflicten.

Maak je eigen Internet Explorer aan de hand van het voorbeeldprogramma MFCIE! Voor het ontwikkelen van uitgebreide toepassingen blijft het MFC raamwerk als basis de logische keuze. Nieuw is bijvoorbeeld de ondersteuning voor Active Document Containers. Selecteer in AppWizard deze optie en alle code wordt gegenereerd om je eigen Office Binder 97 van de grond te krijgen! Van de overige vernieuwingen in MFC zijn er wel opvallend veel gerelateerd aan Internet Explorer 4. Zo heb je nu beschikking over de CHtmlView klasse waarmee je eenvoudig Dynamic HTML kan gebr uiken in je applicaties. Natuurlijk ontbreken ook de lang verwachte C++-omhulsels voor de Internet Explorer 4 Common Controls niet, zoals onder meer de kalender en ip-adres control.

De ondersteuning vanuit het ClassView venster voor ATL objecten is sterk verbeterd, vooral de Implement Connection Point optie is een goede hulp. Mede dankzij de sterk verbeterde wizards is het ontwikkelen van eenvoudige COM servers en ActiveX controls met de ATL 3.0 C++ sjablonen nu een stuk aantrekkelijker geworden. Zo zijn er nu ATL wizards voor Composite Controls, Microsoft Management Console (MMC) Snap-ins, Dynamic HTML en OLE DB objecten. Bovendien kun je vanuit de reeds vertrouwde ClassView nu onder meer Windows boodschappen afhandelen, verbindingspunten genereren en interface implementaties toevoegen.

Conclusie

De Visual Studio 6.0 ontwikkelomgeving biedt gebruikers van Microsoft Visual C++ 6.0 met Edit And Continue en IntelliSense twee waardevolle vernieuwingen om het het ontwikkelproces te versnellen. Ook de MFC 6.0 bibliotheek en de ATL 3.0 sjablonen bieden weer meer functionaliteit. Bovendien zijn de bijbehorende wizards verbeterd. Als C++ programmeur met een voorliefde voor geavanceerde coderingsomgevingen kom je met Microsoft Visual C++ 6.0 dus weer volop aan je trekken.

Gegevens

Producent: Microsoft
Toepassing: Applicatie- en COMponentontwikkeling in C++
Minimale systeemeisen: Pentium 90 processor; Windows 95; 24 MB geheugen; 290 MB harde schijf-ruimte.
Straatprijzen excl. BTW: Standard Edition: Fl. 238 (BFr. 4357) / Upgrade: Fl. 136 (BFr. 2490); Professional Edition: Fl. 1336 (BFr. 24456) / Upgrade: Fl. 663 (BFr. 12137); Enterprise Editio n: Fl. 3149 (BFr. 57643) / Upgrade: Fl. 1863 (BFr. 34103)
Leverancier: Microsoft;Telefoon Nederland: +31-235689189
Telefoon België: +32-27303911

Afbeeldingen

Via de uitgebreide Library Viewer, die gebaseerd is op de HTMP Help control, heb je toegang tot alle Microsoft Developer Network (MSDN) informatie. In de sterk uitgebreide ATL Object Wizard kun je COM objecten in vrijwel iedere smaak aanmaken. Zoeken naar specifieke informatie in de 1,1 GB informatie is eenvoudig. Bovendien worden de treffers weergegeven op de gevonden pagina. IntelliSense in C++: na het typen van de pijl- of puntoperator verschijnt de Automatic Statement Completion listbox met de functies die bij het actieve object horen. Dankzij Edit And Continue kun je tijdens het debuggen verbeteringen in de code aanbrengen zonder de debugger te hoeven verlaten. Maak je eigen Internet Explorer aan de hand van het voorbeeldprogramma MFCIE! De ondersteuning vanuit het ClassView venster voor ATL objecten is sterk verbeterd, vooral de Implement Connection Point optie is een goede hulp.