Bronnen voor C ++ -ontwikkelaars: objectgeoriënteerde draai aan een klassieke programmeertaal

Openbaarmaking: Uw steun helpt de site draaiende te houden! We verdienen een verwijzingsvergoeding voor sommige van de services die we op deze pagina aanbevelen.


Inleiding tot C++

Objectgericht programmeren (OOP) is een van de krachtigste tools voor softwareontwikkeling. C ++ was een van de eerste algemeen beschikbare objectgeoriënteerde talen.

Het is zeer draagbaar en wordt gebruikt in een groot aantal toepassingen. Tegenwoordig is het overal te vinden, van computergraphics tot vluchtcontrollers.

Het is erin geslaagd populair te blijven bij ontwikkelaars, zelfs als er elk jaar nieuwe talen verschijnen. Als een gecompileerde taal die is afgeleid van C, voert C ++ zeer snel berekeningen uit en kan voor bijna elk doel worden gebruikt.

Vroege OOP-talen zoals LISP en ALGOL hielpen bij het vaststellen van het concept van ledenfuncties. Dit idee werd uitgebreid met Simula 67 ‘klassen’ voor het bijhouden van gebeurtenisrecords. Vervolgens beïnvloedden concepten vele andere talen.

Dit omvatte C ++, dat is gebaseerd op de zeer populaire procedurele taal C. Met behulp van de syntaxis en structuur van de C-taal was het de bedoeling van C ++ om de kracht en herbruikbaarheid van C te nemen en klassen toe te voegen om het nuttiger te maken voor software ontwikkeling.

Korte geschiedenis van C++

In 1983 begon Bjarne Stroustrup met het ontwikkelen van de C ++ -taal, oorspronkelijk “C with Classes” genoemd. Deze nieuwe taal maakte deel uit van zijn proefschrift aan de Universiteit van Cambridge, als middel om softwareontwikkeling sneller en gemakkelijker te maken dan door gebruik te maken van Simula of BCPL.

Met ervaring bij AT&T Bell Labs, hij kende C en kon het daardoor uitbreiden om een ​​programmeertaal te bouwen die zowel zeer draagbaar als zeer krachtig was in het manipuleren van objecten.

De taal ontwikkelde zich in de jaren tachtig en werd hernoemd naar de nu bekende C ++. (De ++ verwijst naar de increment-operator in C – dus C ++ is C + 1.) Tijdens deze updates zijn veel dingen toegevoegd: overbelasting van functies en operators, typecontrole en opmerkingen op één regel. Ook kwam de eerste compiler op de markt, genaamd Cfront.

In 1985 was de taal klaar voor commerciële release en het eerste editie-naslagwerk werd uitgebracht. In 1989 kwam C ++ 2.0 langs, met overerving, naamruimten, casting en booleaanse typen. De taal evolueerde een stuk langzamer en werd in 1998 een ISO-standaard. Sindsdien zijn er om de 3-4 jaar kleine herzieningen uitgebracht.

Waar kan ik C ++ voor gebruiken?

Het leren van C ++ kan een heel andere ervaring zijn, afhankelijk van wat uw eerste gebruik van de taal zal zijn. Coderen met zo’n gevestigde taal betekent dat er veel bestaande code is. Het meeste van wat u wilt doen, is al gedaan.

In veel gevallen zijn er bibliotheken beschikbaar die kunnen worden gebruikt om uw codeerervaring te vergemakkelijken. Sommige applicaties hebben zelfs een Application Program Interface (API) die bepaalde functies, klassen, typen, mogelijkheden en macro’s bevat, waardoor er minder moeite nodig is om uw doel te bereiken.

Met dat in gedachten zijn hier een paar verschillende industrieën die sterk afhankelijk zijn van C ++:

  • Apparaatstuurprogramma’s en embedded software
  • Game-engines en game-programmering
  • Geavanceerde beeld- of audioverwerkingssoftware
  • Telecommunicatiesystemen en netwerken
  • Tolken – gecompileerde binaire bestanden voor ‘Interpreted Languages’ (bijv. Python).

Sommige van deze industrieën hebben manieren gevonden om meer geabstraheerde scripttalen te gebruiken. Maar voor elk gedetailleerd werk is kennis van C ++ van cruciaal belang.

De prestatieverbeteringen van C ++ zijn aanzienlijk – vooral bij geïnterpreteerde talen zoals PHP en Perl. Dus projecten met zeer resource-intensieve berekeningen zullen de neiging hebben om C ++ te gebruiken – vaak met enkele bibliotheken met meerdere threads.

Als je al weet waar je begint, is dat het halve werk. Als je alleen de taal leert om het te kennen, overweeg dan om een ​​project te vinden dat je leuk vindt om de leerervaring boeiender te maken.

Basis conceptueel leren

Voordat u aan een online les of tutorialserie begint, wilt u misschien vertrouwd raken met de kernconcepten van C ++ en Object Oriented Programming (OOP).

Het begrijpen van klassen, objecten, abstractie, gegevenstypen, overerving en polymorfisme zijn allemaal nuttig om te weten voordat u code schrijft.

  • C ++ Objectgeoriënteerde programmeerconcepten – TutorialsPoint.com
  • C ++ Language Tutorials – Cplusplus.com
  • Een snelle introductie tot C ++ – University of Washington Computer Science Department (pdf)
  • Inleiding tot objectgeoriënteerd programmeren – Codeproject.com.

Leren coderen

Er is geen beste manier om te leren coderen. Authoringsoftware is een zeer complex proces. Voor elk nieuw gebruik van een taal zal er een soort leercurve zijn. Verschillende mensen leren ook op verschillende manieren.

Er zijn online video’s, online lessen voor instructeurs, demo-code, e-boeken en vele andere manieren om te leren. Hier zijn er een paar uit elke categorie om mee te beginnen:

Massively Open Online Courses (MOOCs)

  • EdX Inleiding tot C ++ door Microsoft
  • Lynda.com C ++ tutorials en training (registratie vereist)
  • C ++ resultaten op Udemy
  • C ++ resultaten op Coursera.

Online omgevingen en compilers

  • cpp.sh – een online C ++ shell en compiler voor het testen van code
  • codechef.com – heeft een IDE en wedstrijden
  • codingground – onderdeel van tutorialspoint.

Handige boeken en eBooks

  • Programmeren: principes en praktijk met C ++ – door C ++ Creator Bjarne Stroustrup
  • C ++ Primer van Lippman, Lajoie en Moo
  • De programmeertaal C ++ (3e editie) – referentie door Stroustrup.

Algemene C ++ -forums

  • Cplusplus.com Forum voor beginners
  • DreamInCode.com C ++ forum
  • C-bord – cprogramming.com.

Bronnen voor bepaalde toepassingen

Er zijn ook geweldige bronnen voor C ++ -programmeurs. Zodra u de basis van programmeren begrijpt, kunt u beginnen met het schrijven van het soort toepassingen waarin u het meest geïnteresseerd bent. Dit is de beste manier om goed te worden in programmeren C++.

Er zijn verschillende bronnen, afhankelijk van het soort codering dat u wilt doen:

C ++ voor apparaten, stuurprogramma’s en embedded systemen + telecom

  • Arduino en C ++ (voor Windows) – Arduino is open source hardware die een geweldige startplaats is om te leren programmeren voor apparaten.
  • Driver Development op codeproject.com
  • Linux-apparaatstuurprogramma’s, 3e editie
  • Aan de slag met Windows-stuurprogramma’s
  • Communicatieprotocollen efficiënt coderen in C ++ (pdf).

Game Engines en Game Programming

Met game-programmering kunt u bestaande game-engines gebruiken. Of u kunt uw eigen code schrijven en direct coderen met DirectX of OpenGL.

  • C ++ leren door games te maken met UE4
  • Cppgameprogramming.com
  • Cprogramming.com Game Programming in C en C++
  • Beginnen met C ++ via spelprogrammering
  • C ++ Forum voor Unreal Engine
  • Aan de slag met OpenGL Wiki.

Gegevens- en beeldverwerking

  • Een beeldverwerkingsprogramma in C++
  • OpenCV-zelfstudie C++
  • Soundfile ++: Een soundfile lees- / schrijfbibliotheek in C++.

Geïnterpreteerde talen maken

  • Een scripttaal schrijven – SolidusCode (video)
  • Maak uw eigen programmeertaal – codeproject.

Waar moet ik heen??

Zie ook onze gids voor C Developer Resources en onze andere programmagidsen.

De hier verstrekte bronnen zijn slechts een kleine greep uit het beschikbare universum van coderingsmateriaal en ondersteuning. Uiteindelijk wil je op het punt komen waarop je je kunt specialiseren. Zoek een community die ondersteunt waar je aan werkt; doe mee en breid je vaardigheden uit.

Wees niet bang om hulp te krijgen van plaatsen als StackOverflow. Of zoek een forum waar je je prettig voelt. Blijf vanaf daar nieuwe projecten vinden. De beste manier om te leren is door te doen! Succes!

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map