‫Hallo en welkom.
‫In deze lezing gaan we het hebben over compilers en editors die uitzoeken wat ze zijn en waarom we
‫ze nodig hebben als we C++ willen schrijven.
‫Dus laten we beginnen met een paar woordenlijstdefinities en we zullen zien hoe ze in het bredere ecosysteem passen.
‫Allereerst de broncode.
‫Dit is cruciaal om te begrijpen waarom we in de eerste plaats een compiler nodig hebben.
‫Broncode is de code die we schrijven.
‫Meestal is het tekst.
‫Het is een voor mensen leesbare vorm van code zoals C++.
‫Maar soms zou je broncode ook als blauwdrukken kunnen beschouwen.
‫De voor mensen leesbare manieren om te beschrijven wat je wilt dat je spel doet, wat je wilt dat de computer
‫doet.
‫En cruciaal is dat het het voor mensen leesbare deel is, omdat het niet bedoeld is voor een machine om dit uit te voeren,
‫om het te laten werken.
‫Dat is de rol van binair uitvoerbaar bestand is meestal binaire code enen en nullen, en het is bedoeld voor een machine om
‫het snel te kunnen lezen en uitvoeren op je CPU en op je GPU.
‫En dat geldt ook voor machineleesbare code.
‫Dus tussen deze twee is er een kloof en we moeten die kloof dichten, zodat we onze door mensen leesbare code kunnen
‫omzetten in machineleesbare code.
‫En dat is de rol van deze zogenaamde compiler.
‫Het vertaalt zich van de voor mensen leesbare C++ of blauwdrukken.
‫Zoals we eerder hebben gezien, zijn we blueprint-compilerfouten en dat soort dingen tegengekomen.
‫Het vertaalt zich dus van het menselijke naar het machinedomein.
‫Het creëert die dot XY-bestanden of die binaire bestanden op welk platform je ook bent.
‫En natuurlijk is er veel complexiteit betrokken bij wat een compiler doet, en we zullen later meer
‫leren over enkele van de meer ingewikkelde delen ervan.
‫Maar voor nu is het voldoende om te weten dat het een stukje software is dat van broncode naar binaire code
‫converteert.
‫En dan is er nog een ander stuk software in de mix, een broncode-editor genaamd, die er gewoon
‫is om je leven gemakkelijker te maken bij het schrijven van voor mensen leesbare code zoals C++.
‫Het geeft ons alleen dingen als automatische aanvullingen en markeert eventuele fouten die we mogelijk automatisch hebben getypt, een beetje zoals een spellingcontrole,
‫dus het kan ons leven een stuk eenvoudiger maken als het om broncode gaat.
‫Dus laten we eens kijken hoe dit allemaal in elkaar past in het onwerkelijke ecosysteem.
‫Dus we hebben tot nu toe met de redacteur te maken gehad.
‫Wij, de editor, is een stuk software en het is er een die al voor ons is gecompileerd en we hebben het uitvoerbare bestand
‫voor die editor al toen we het gingen installeren.
‫Zodat we de editor kunnen openen.
‫Met de editor kunnen we een gameproject wijzigen en maken met behulp van verschillende game-items.
‫Deze omvatten dingen zoals de mazen die we in ons project hebben gebracht.
‫Ze bevatten alle blauwdrukactiva en blauwdrukcode daarin.
‫Dit stelt ons in staat om deze game-items te gebruiken waarvoor we een editor hebben gemaakt, we
‫kunnen de game vervolgens uitvoeren in een afzonderlijk, stand-alone uitvoerbaar bestand waar het alleen het spel speelt en niets anders.
‫Het beeld verandert echter een beetje als we C++ willen gaan gebruiken.
‫C++ is het fundament van de editor en als zodanig, als we de C++ in de editor wijzigen, moeten
‫we in wezen het binaire uitvoerbare bestand van de editor opnieuw opbouwen.
‫Dus als we onze broncode hier hebben, weten we dat het er een beetje zo uitziet.
‫We hebben in feite wat tekst waaruit onze broncode bestaat en we bewerken deze broncode opnieuw met behulp van een
‫apart stuk software dat voorheen een broncode-editor werd genoemd.
‫We hebben het allemaal bewerkt in The Unreal-editor omdat het nauw is geïntegreerd met de software.
‫Als we echter met C++ te maken hebben, gebruiken we software van derden om de code te bewerken.
‫Nu, degene die we in deze cursus gaan gebruiken, heet Visual Studio Code omdat
‫het platformonafhankelijk werkt op Mac, Linux en Windows en het is ook erg licht van gewicht.
‫Maar zoals ik al zei, er is een kloof tussen de broncode die we hebben geschreven en het
‫omzetten in het binaire uitvoerbare bestand dat nodig is om het spel in de editor uit te voeren en in het uiteindelijke spelproduct.
‫En dat bit is de compiler.
‫De compiler neemt onze broncode, de bibliotheken en functionaliteit die al in Unreal zijn ingebouwd en die
‫we in onze broncode gebruiken.
‫Het zal deze samen compileren, ze in binair veranderen en een editor uitvoeren die we kunnen openen en onze game-items kunnen
‫bewerken, of het zal een game uitvoeren die onze game-items zal gebruiken en de speler in staat stelt om ons
‫spel te spelen.
‫Nu zijn er twee keuzes van compiler, afhankelijk van op welk platform u zich bevindt.
‫Als u Windows gebruikt, gaan we Visual Studio gebruiken, dus haal deze niet te in de war.
‫Ze hebben zeer vergelijkbare logo's en zeer vergelijkbare namen.
‫Een daarvan is Visual Studio, de compiler, en er is er een die alleen de broncode is,
‫en die heet Visual Studio-code.
‫Als je nu een Mac gebruikt, ga je in plaats daarvan X-code gebruiken die.
‫Is de compiler op de Mac om dingen platformonafhankelijk te houden, om dingen voor iedereen hetzelfde te houden.
‫We gaan Visual Studio-code gebruiken om de code daadwerkelijk te bewerken, ook al
‫hebben deze compilers ingebouwde broncodebewerkingsmogelijkheden.
‫Maar we zullen deze compilers gebruiken om de broncode daadwerkelijk te nemen en om te zetten in binair uitvoerbaar bestand.
‫Oké, dat was het dan voor deze lezing.
‫Hopelijk ben je een beetje duidelijker over waarom we een compiler nodig hebben, waarom we de broncode-editor nodig hebben.
‫De volgende paar lezingen gaan we door het proces van het installeren ervan.
‫Ik zie je daar.