6 manieren waarop Laravel de "developer experience" van digitale platforms verbetert
Bij Digital Natives maken wij voor digitale platformen zoals Lawyerlinq, Voordekunst en Amsterdam Smart City gebruik van het PHP framework Laravel. Dit is een open source framework dat de “developer experience” verbetert. Maar welke features van Laravel zorgen hier nu voor? Onze ervaren back-end Developer Samuel Fischer vertelt wat voor hem de voordelen zijn.
MVC support / Object oriented
Laravel volgt het MVC - Model-View-Controller - principe. Dat is een software designpatroon dat ook door veel andere frameworks gebruikt wordt. Hierin beheert een model de data en de business logic. De view is verantwoordelijk voor het tonen van de data van het model en stuurt nieuwe data naar de controller, bijvoorbeeld door middel van een formulier. Vervolgens past de controller de nieuwe data aan op het model.
Dit is een van de vele manieren hoe Laravel een objectgeoriënteerde benadering hanteert. Dit houdt in dat elk bestand met code verantwoordelijk is voor een kleine set aan functionaliteiten. Neem MVC als voorbeeld: hierin mag de View nooit logica bevatten die direct de data van een model kan aanpassen.
Eloquent ORM
Een andere techniek waar Laravel om bekend staat, is de Eloquent ORM, oftewel Object-Relational-Mapping. Eloquent is een abstractielaag bovenop de database-engine. Deze laag vergemakkelijkt het verwerken van database records door gegevens als objecten te behandelen. Hierdoor wordt ook de interactie met database tabellen makkelijker. Dit wordt allemaal aangeboden op een objectgeoriënteerde manier die acties zoals invoegen, bijwerken en verwijderen van database records uitvoert. Daarnaast biedt het ook een gestroomlijnde interface voor het uitvoeren van SQL-queries. Door middel van Eloquent kunnen wij bij Digital Natives in een kortere tijd “future proof” web applicaties bouwen.
Open source
Wanneer meerdere mensen samen kunnen werken aan een digitaal product (open source), dan brengt dat veel voordelen met zich mee.
- De community: Laravel heeft een grote gebruikersgroep. Dit is voordelig omdat veel mensen in de community een bijdrage leveren aan de ontwikkeling van het framework. Nieuwe features worden daardoor sneller en beter uitgerold en bugs sneller opgelost.
- Betrouwbaarheid / Veiligheid: er kijken meer mensen mee waardoor fouten er sneller uitgehaald worden door collega developers.
- Agile development: open source biedt een soort bouwstenen die je kunt gebruiken voor je applicatie. Je hoeft niet elke keer het wiel zelf (opnieuw) uit te vinden: door open source kun je gebruik maken van anders mans werk.
Zo zijn er nog veel meer voordelen aan een open source framework. Bijvoorbeeld de levensvatbaarheid, deze is op de lange termijn groter. Vele handen maken licht werk. De inzichten van alle mensen die aan een project hebben gewerkt, worden op gelijke waarde geschat. Bij het ontwikkele-n aan een open source project is je primaire doel niet een bedrijf voorzien maar een bijdrage aan een community. Hierdoor blijft open source software ook vaak als technologie in de voorhoede door ondersteunende gemeenschappen die energie krijgen van voortdurend innovaties introduceren.
Testing
Testen is bij Laravel een terugkomend onderwerp. Bij het starten van een nieuw project zit er automatisch support in voor PHPunit testing, een PHP test framework. Bij deze opzet wordt rekening gehouden met twee verschillende soorten tests: Unit testing en Feature testing. Bij Unit testing isoleer je een klein deel van de website/code om te testen. De naam feature testing verklapt het eigenlijk al. Hierbij testen we bijvoorbeeld een hele login flow. Laravel biedt allerlei helper functies en structuren om deze tests makkelijker en efficiënter te kunnen schrijven. Door automated tests zien wij potentiële fouten voordat ze live staan. Dit is iets wat de klant niet direct ziet, maar wel over een langere periode van tijd merkt door een kleinere hoeveelheid bugs.
Laravel is een geweldig platform om te gebruiken voor het ontwikkelen van webapplicaties. Het combineert de kracht van de bekende PHP-taal met een intuïtieve, eenvoudige interface. Het is een populair framework dat veel voordelen biedt, zoals een kortere ontwikkeltijd, flexibiliteit en schaalbaarheid. Daarnaast heb je nog de Laravel-community, met veel tutorials en documentatie om je te helpen bij het ontwikkelen van websites met deze technologie. Kortom, Laravel is een zeer nuttige tool voor om een robuust platform te bouwen.