Wat is Python?
Madelief
Na een jarenlange groei staat Python momenteel met stip op nummer 1 op de lijst van meest gebruikte programmeertalen. Maar wat is Python en waarvoor en wanneer werk je ermee? Wij vertellen je hieronder meer!
First things first: Wat is Python?
Python verscheen in 1991 voor het eerst op het toneel van programmeertalen. Het werd bedacht en ontworpen door Guido van Rossum met als voornaamste doel om leesbare code te kunnen schrijven. Door de jaren heen is de programmeertaal langzaamaan gegroeid tot het punt waar het nu is: de #1!
Python is een dynamically typed programmeertaal in tegenstelling tot Java dat strictly typed is. Zoals de meeste Java developers wel weten biedt een strictly typed taal een duidelijke structuur die wat minder vergevingsgezind is. Datatype vergeten aan te geven? Code werkt niet! Dit is dus bij Python minder snel een issue, wat het ook voor beginners een stuk makkelijker maakt om snel van start te gaan. Het gebruik van het juiste aantal spaties is echter wel belangrijk. Deze hebben invloed op wat de code doet en bij verkeerd gebruik kan je dus zomaar een programma hebben die niet of incorrect werkt.
De standaard implementatie voor Python is CPython. Dit is zowel een interpreter als een compiler. Code wordt eerst omgezet naar bytecode om daarna geïnterpreteerd te worden. Daarna vindt de werkelijke uitvoer plaats.
Een alternatieve implementatie voor Python die ook vaak gebruikt wordt is PyPy. Die maakt gebruik van een JIT (Just In Time) compiler, waardoor het vaak, maar niet altijd, sneller werkt dan de CPython implementatie. Desondanks blijft Python een geïnterpreteerde taal, die vaak net wat langzamer zijn dan gecompileerde talen zoals Java.
Python PIP
Voor Python zijn enorm veel packages beschikbaar die het sneller en makkelijker maken om applicaties te ontwikkelen zonder telkens opnieuw hetzelfde wiel uit te vinden. De package manager die hiervoor voornamelijk wordt gebruikt is PIP. Deze wordt sinds versie 3.4 van Python dan ook standaard meegeleverd bij installatie.
Met PIP is het eenvoudig om libraries, frameworks en andere andere packages te installeren, updaten of verwijderen wanneer nodig. Hiervoor hoef je alleen maar via de command line naar de folder van je project te gaan en het commando “pip install package-naam” in te voeren. Om de package vervolgens te gebruiken importeer je het in je project door de regel “import package-naam” boven in je project te plakken. Een kind kan de was doen!
Het is natuurlijk wel handig om te weten welke packages er allemaal beschikbaar zijn. Hiervoor is de Python Package Index gemaakt. Op de bijbehorende website kan je de database van packages doorzoeken of door de projecten voor verschillende types packages heen bladeren.
Er zijn uiteraard ook alternatieven voor PIP te vinden. Zo wordt de package manager conda vaak gebruikt door programmeurs die met Anaconda werken.
DJANGO
Naast de packages die beschikbaar zijn, zijn er ook meerdere frameworks waar je voor kan kiezen. De meest bekendste hiervan is ongetwijfeld Django. Django is een open-source full stack framework dat werkt volgens het DRY (Don’t Repeat Yourself) principe. Het wordt geleverd met een flinke lading aan nuttige features zoals ingebouwde authentication en admin support, database schema migrations, een template engine, unit testing en session management.
Django werkt met het MTV (Model – Template – View) design pattern. Dit is relatief goed te vergelijken met het bekende MVC pattern, alleen zijn de benamingen en functies net iets anders. Het Model is bij zowel MTV als MVC hetzelfde; het deel waar data wordt gemanaged met behulp van een ORM. Template is het onderdeel dat bepaalt hoe de data eruit zal zien op het frontend, vergelijkbaar met wat een View is in het MVC pattern. De View in Django neemt de plek in van de controller. Het is de plek waar de business logic te vinden is en het communiceert met het Model.
Andere frameworks die veelvuldig worden gebruikt zijn oa Bottle, CherryPy, Dash, Flask en Falcon.
Python of Java? Wanneer kies je welke programmeertaal
Of je Python of Java kiest is met name afhankelijk van wat je precies wilt bereiken. Java wordt nog steeds het meeste gebruikt in een Enterprise setting, voor desktopapplicaties en meer.
We zien Python vaak als eerste keuze voor Machine Learning en data science oplossingen zoals data-analyse en visualisatie. Het wordt ook vaak gebruikt voor webservices en RESTful API’s. Ook voor beeldbewerking is Python een goede keuze. Python kan ook worden gebruikt voor het ontwikkelen van games, maar omdat het een geïnterpreteerde taal is, is het vaak niet de snelste en beste keuze. In Java is een OOP-benadering standaard, in Python is het een optie maar geen standaard. Python kan namelijk ook prima worden ingezet met functioneel programmeren, imperatief programmeren en procedureel programmeren.
Lijkt het jou ook tof om met Python aan de slag te gaan? Lees hier alle Python vacatures!