Uit de cursus: Grondbeginselen van programmeren: Basisprincipes

Uw code uitvoeren

- Als we zouden dubbelklikken op ons Python-bestand, zou het gewoon openen in een editor, maar het zou niets doen met de code die we erin hebben gestopt. Hoe komt dat? Nou, dat komt omdat Python een interpretatieve taal is. Dit betekent dat we het moeten vertalen naar machinecode en dat we de interpreter nog niet hebben uitgevoerd. Er zijn drie belangrijke manieren om broncode te vertalen naar machinecode: compileren, interpreteren of een combinatie van beide. Compileren, interpreteren? Laat me je een voorbeeld uit de echte wereld geven. Stel dat je een brief moet schrijven aan iemand die Mandarijn spreekt, maar geen Engels. Wat zou jij doen? U kunt het eerst in het Engels schrijven en vervolgens een vertaaldienst gebruiken om uw brief in het Mandarijn om te zetten en op de post te doen. De andere persoon zou nooit je originele brief zien, alleen de brief die in het Mandarijn was. Dat is eigenlijk wat compilers doen. Ze nemen uw programmeertaal op hoog niveau en zetten deze om in een uitvoerbaar bestand dat machinecode op laag niveau bevat. Op deze manier kunnen gebruikers uw code op hun computer uitvoeren zonder dat ze uw originele broncode nodig hebben. De tweede optie voor het versturen van een brief is om deze in het Engels naar hen te sturen, dan kunnen ze een vriend die Engels spreekt eerst elke regel van de brief laten lezen en hen vertellen wat het betekent in het Mandarijn. Elke keer dat onze Chinese vriend de brief moet lezen, moet de tolk terugkomen om de brief opnieuw te interpreteren. Dit is in wezen wat computerinterpreters doen: ze verwerken uw broncode elke keer dat deze wordt uitgevoerd, regel voor regel, en het is aan de andere gebruiker om de benodigde interpreter op zijn machine beschikbaar te hebben. Nu is dit natuurlijk een oversimplificatie van zowel compilers als interpreters. Ze voeren complexe functies uit die helpen om de grootte, snelheid en beveiliging van uw broncode te optimaliseren, maar het helpt om het algemene idee over te brengen van hoe ze verschillen. Doorgaans staan talen als C, C++ en Objective-C bekend als gecompileerde talen, terwijl PHP en JavaScript bekend staan als interpretatieve talen. En tot slot gebruiken Java, C# en Python de combinatiebenadering. Tegenwoordig is de grens tussen compileren en tolken een beetje wazig, omdat veel talen enkele varianten van beide hebben. Het belangrijkste om in gedachten te houden is dat u mogelijk aanvullende stappen moet uitvoeren om uw code op uw computer of die van iemand anders uit te voeren.

Inhoud