Ga naar inhoud

C++


Aanbevolen berichten

C++ is gewoon een all-purpose, low-level programmeertaal waarmee bouwstenen gemaakt kunnen worden voor andere ontwikkel-omgevingen op een wat hoger niveau. C++ wordt dan ook vooral gebruikt voor het schrijven van besturings-systemen en voor libraries die weer in andere ontwikkel-omgevingen te gebruiken zijn. Het grote voordeel van C++ is dat de taal theoretisch platform-onafhankelijk is. Zolang je maar een gekwalificeerde C++ compiler hebt kun je in principe ieder C++ programma compileren voor je favoriete platform. Het probleem is echter dat in de praktijk C++ sources toch vrij specifiek voor bepaalde platforms zijn omdat ze functionaliteit moeten aanroepen van het betreffende platform. Denk hierbij aan scherm-aansturing of gewoon netwerk-verbindingen. De manier waarop dit moet gebeuren wil sterk varieren per platform, zeker omdat ieder platform weer zijn eigen libraries heeft om dit aan te sturen. Er is hier nog erg weinig gestandaardiseerd. In de praktijk wordt C++ dan ook zelden gebruikt om platform-onafhankelijke software te schrijven, hoewel dit wel af en toe gebeurt. Zo zijn er diverse conversie-tools die zich bezighouden met het converteren van data van het ene formaat naar het andere. Hierbij kan meestal gebruikt worden van de standaard-functies die C++ biedt. Als er dan met een andere ontwikkel-omgeving een mooie schil omheen gebouwd kan worden dan krijg je zo in principe een product dat op diverse platforms werkt. Maar ja, dan is het C++ product eigenlijk gewoon een module van een groter product. Vaker zul je echter tegenkomen dat C++ voor platform-specifieke doeleinden wordt gebruikt. Vooral ook omdat je met C++ eenvoudig losse modules (DLL of SO) kunt bouwen die je vervolgens weer op de een of andere manier weer aan elkaar knoopt. Omdat C++ code een enorm goede performance heeft en vaak sneller is dan welke andere programmeertaal wordt C++ dan ook vaak gebruikt voor situaties waarbij snelheid van belang is. Uiteindelijk kunnen al die C++ modules aan elkaar geknoopt worden tot 1 product, waarbij de basis van het product best in een andere programmeertaal geschreven kan zijn. Je zou bijvoorbeeld een grafische interface in VB of Delphi kunnen schrijven die in de achtergrond dus diverse C++ modules aanroept. Maar daar kan ook C++ zelf voor worden gebruikt. (En op Unix/Linux systemen wordt C++ hier erg vaak voor gebruikt.) Een belangrijk nadeel van C++ is dat het niet echt een RAD omgeving is. (Rapid Application Development.) Zowel Borland (Borland Studio) als Microsoft (Visual Studio) hebben wel compilers gemaakt voor onder Windows die goede RAD mogelijkheden bieden maar veel gebruikers kiezen toch vaker een eenvoudiger te leren programmeertaal voor deze doeleinden. Dit kan bijvoorbeeld Visual Basic of Delphi zijn, maar ook andere tools zoals PowerBuilder en nog een aantal andere, meer obscure ontwikkel-omgevingen. Vaak zie je dat de deadline deels bepaald welke omgeving wordt gebruikt. Indien er ruim de tijd is om binnen de deadline een product op te leveren wordt er vaak voor C++ gekozen. Bij projecten met een erg korte tijd tot de deadline gaat men vaker op zoek naar een RAD omgeving en dan is het vaak VB of Delphi. En soms wel een mix van diverse omgevingen. Vaak zie je in dit soort snelle projecten dat er ook zelfs in diverse scripting talen wordt gewerkt en zelfs binnen bepaalde Office producten. Wees niet verbaast dat er diverse projecten zijn die werken met MS Access en een zooi VBScripting onder Excel of Word, eventueel in combinatie met andere scripting talen en misschien zelfs Crystal Reports voor het genereren van rapporten. Je ziet bij dit soort snelle projecten vaak dat men gewoon overal losse componenten koopt en deze vervolgens aan elkaar knoopt. En waarin zijn die losse componenten vaak geschreven? Inderdaad, C++...
Link naar reactie

Om een reactie te plaatsen, moet je eerst inloggen

Gast
Reageer op dit topic

×   Geplakt als verrijkte tekst.   Herstel opmaak

  Er zijn maximaal 75 emoji toegestaan.

×   Je link werd automatisch ingevoegd.   Tonen als normale link

×   Je vorige inhoud werd hersteld.   Leeg de tekstverwerker

×   Je kunt afbeeldingen niet direct plakken. Upload of voeg afbeeldingen vanaf een URL in

×
×
  • Nieuwe aanmaken...