Softwarekomponenter i C++ speeder Visual Basic op

Du kan optimere dine Visual Basic programmer med softwarekomponenter skrevet i C++. Jonathan Morrison forklarer i sin bog, hvordan Visual Basic programmørerne gør det selv.

C++ for Visual Basic folk

Amerikaneren Jonathan Morrison har skrevet bogen "C++ for VB Programmers", der er udgivet på forlaget Apress. I den forklarer han Visual Basic-programmører, hvordan de kan lære C++ programmering med udgangspunkt i deres erfaringer. Det kan læserne derefter bruge til at skrive Dynamic Link Library (DLL) og Component Object Model (COM) komponenter.

Bogen giver et par store programeksempler på, hvordan man programmerer disse komponenter. Derfor kan den også læses som en introduktion til at programmere komponenter, der indeholder grundlæggende funktioner til flere programmer.

Hvorfor C++ komponenter til Visual Basic

Hans argument for at skrive C++ komponenter til Visual Basic er effektivitet. Han anfører, at mange komponentbiblioteker til Visual Basic er skrevet i C og C++.

Man kan skrive ActiveX DLL komponenter med Visual Basic. Men de er bundet til ActiveX og COM miljøet, ligesom programmøren naturligvis skal arbejde med Visual Basic sprogets fordele og ulemper.

Visual Basic programmører kan i C++ skrive komponenter, som øger effektiviteten af deres programmer markant.

Komponenter i C++

C++ set ud fra Visual Basic

Morrison gennemgår systematisk de centrale forskelle på de to programmeringssprog og forklarer C++ syntax for Visual Basic folkene. Dertil bliver udviklingsmiljøet med C++ og preprocessoren behandling af filerne med kildeteksten beskrevet. Det er en af mange forskelle mellem de to programmeringsmiljøer, at C/C++ anvender preprocessor, som er en tekstfortolkning, der foretages inden compileren oversætter programmet. Dette bruger C/C++ programmører til at styre opbygningen af programmet.

Morrison behandler de klassiske forskelle på sprogene. Vi får gennemgået initialisering af variable, anvendelse af hukommelse i C++ samt pointerne, som C/C++ er så berygtet for. Et kapitel udfolder derefter konstruktionen af klasserne i C++.

Udviklingsmiljøet: ATL og COM

Efter at Morrison har forklaret forskellen mellem C++ og Visual Basic, tager han fat på programmering af komponenter. Han viser, hvordan man skriver en simpel COM-komponent - Component Object Model objekt. Når dette skal gøres i C++, forudsætter det at man anvender Active Template Library (ATL), der er et klassebibliotek til C++. Derfor giver han eksempler på, hvordan ATL bruges i programmeringen.

Morrison peger ærligt på det videre arbejde efter hans forklaringer. For efter den indledende forståelse kræver programmering af softwarekomponenter praktisk indsigt i ATL og COM. ATL er et stort bibliotek, som det tager tid at sætte sig ind i.

Bogen

Bogen

Trods titlen er bogens formål ikke at gøre Visual Basic programmører til C++ programmører. Det er ikke en lærebog i C++ programmering, og Morrison har ingen ambitioner herom. Derimod fastholder han perspektivet i Visual Basic fra start til slut.

Som et par ekstra rosiner i slutningen, giver bogen et par supplerende artikler. Den første viser skrivning af flertrådede programmer i Visual Basic (multithreading). Den anden behandler formatet for tekststrenge i Visual Basic: BSTR, der bygger på Unicode karakterer i modsætning til ANSI karakterer, som blandt andet bruges i C++. Derfor skal man være opmærksom på tekstformatet, når man kombinerer Visual basic og C++.

Bogen er pædagogisk skrevet, så den let kan læses på sofaen. Morrison gør en dyd ud af at forklare alt det, han nævner. De store centrale eksempler på programmering af komponenterne skal dog gennemarbejdes ved tastaturet og computeren. Til den del medfølger der en CD-ROM med Visual C++ 6.0 Introductory edition, således at Visual Basic programmører kan starte på eksemplerne med det samme. Desuden kan kildeteksten til eksemplerne downloades fra forlaget.

Bogen skal anbefales de Visual Basic programmører, som vil skrive komponenter i C++ som supplement til Visual Basic. Dette projekt gennemgår bogen systematisk med gode forklaringer undervejs. Hvis du derimod ønsker at skifte helt over til C++, findes der andre bøger som giver meget grundigere introduktion til sproget og forklaring af programdesign i C++ universet.

Bogen forudsætter kendskab til programmering i Visual Basic, hvorimod Morrison påtager sig at forklare C++ for læseren.

C++ for VB Programmers
Jonathan D. Morrison
Apress, 2000, distribueres af Springer-verlag
ISBN 1-8893115-76-3
550 sider. Med CD-ROM
$49,95

Læses lige nu

    Netcompany A/S

    Software Developer

    Midtjylland

    Forsvarsministeriets Materiel- og Indkøbsstyrelse

    IT-supporterelev til Lokal IT på Aalborg Kaserne

    Nordjylland

    Rambøll Management Consulting

    Senior Software Engineer

    Midtjylland

    Navnenyt fra it-Danmark

    Norriq Danmark A/S har pr. 1. september 2025 ansat Niels Bjørndal Nygaard som Digital Product Lead. Han skal især beskæftige sig med designe og implementere effektive IT-løsninger. Han har tidligere beskæftiget sig med at være digital consultant og project Manager hos Peytz & Co. Nyt job

    Niels Bjørndal Nygaard

    Norriq Danmark A/S

    Norriq Danmark A/S har pr. 1. september 2025 ansat Katrine Køpke Rasmussen som Consultant. Hun skal især beskæftige sig med sikre vækst i NORRIQS kunders forretninger gennem hendes skarpe rapporteringer. Nyt job

    Katrine Køpke Rasmussen

    Norriq Danmark A/S

    Enterprise Rent-A-Car har pr. 1. september 2025 ansat Christian Kamper Garst som Senior Key Account Manager. Han skal især beskæftige sig med at vinde markedsandele i hele Norden som led i en storstilet turnaround-strategi. Han kommer fra en stilling som Salgsdirektør hos Brøchner Hotels. Nyt job

    Christian Kamper Garst

    Enterprise Rent-A-Car

    Norriq Danmark A/S har pr. 1. oktober 2025 ansat Rasmus Stage Sørensen som Operations Director. Han kommer fra en stilling som Partner & Director, Delivery hos Impact Commerce. Han er uddannet kandidat it i communication and organization på Aarhus University. Han har tidligere beskæftiget sig med med at drive leveranceorganisationer. Nyt job

    Rasmus Stage Sørensen

    Norriq Danmark A/S