5 Redenen om Laravel te gebruiken voor je portfolio

6 maanden geleden • 4 minuten lezen

Het bouwen van een (portfolio)site in PHP met het Laravel-framework biedt tal van voordelen. Zo wordt de site niet enkel sneller en veiliger, maar ook veel eenvoudiger om te onderhouden en nieuwe features toe te voegen.

Performance

Met Laravel is het eenvoudig om snel efficiënte snelheidsoptimalisaties uit te voeren. Zo zijn er uiteraard als hierboven al verschillende packages beschikbaar, die zo goed als direct inzetbaar zijn! Ten eerste kan je gebruik maken van de in PHP-native beschikbare caching engine, nl. OPcache. Hoe je dit doet, ontdek je in dit Medium-artikel.

Vervolgens heb je nog allerlei overige packages zoals het automatisch optimaliseren van resources maar ook het minifyen van bijvoorbeeld HTML.

Naast de standaard van het minifyen van CSS- en JS-files is het natuurlijk ook niet onbelangrijk om HTML-bestanden te compressen, wat toch best nog steeds veel vergeten wordt. Ook dit gaat met Laravel zo goed als automatisch, in tegenstelling tot hard coded websites!

Composer logoComposer packages

Zoals vaker gezegd is een goede developer een luie developer, en met Laravel kan dit nog eens versterkt worden. De meeste (complexe) systemen die je kan bedenken bestaan al en zijn te vinden op de open-source markt van Composer packages. Met Laravel is het dan ook weer super eenvoudig om deze packages te gaan integreren!

Dit bespaart meer tijd dan zelf een volledige image class te schrijven, waar Spatie bijvoorbeeld een package voor gemaakt heeft. Bovendien ondersteunt het framework zelfs auto-discovery vanaf versie 5.5, waardoor je ze zelfs niet meer hoeft te registreren!

Object Relation Model (ORM)

Voorbij is de tijd van de ingewikkelde join queries van tien of zelfs langere lijnen code! Laravel komt namelijk Out of the Box met het Object Relation Model om database modellen te creëren en beheren.

Hiervoor werkt Laravel met het Eloquent ORM-model dat ActiveRecords implementeert. Simpelweg betekent dit dat het toevoegen en wijzigen van database objecten niet meer is dan een instantie van het juiste model op te roepen, de properties in te vullen en de wijzigingen op te slaan!

Bovendien zorgt Eloquent ook ineens voor de nodige beveiliging, zodat SQL injections en XSS-attacks verleden tijd zijn.

MVC-model

Het Object Relation Model van Laravel is ook nog niet alleen! Het maakt nog deel van een groter geheel, namelijk het Model-View-Controller-model. Dit betekent dat het framework standaard ondersteuning biedt voor views en controllers.

Zo worden eenvoudig routes aangemaakt, die dan doorlinken naar de juiste controller. Deze controller voert dan een minimale hoeveelheid van logica uit, die dieper ingaat op gelinkte classes en modellen.

Het resultaat komt dan uiteindelijk in de view, waarvoor Laravel de Blade syntax gebruikt. Dit kan je vergelijken met bijvoorbeeld PUG voor NodeJS, maar dan geoptimaliseerd voor PHP-applicaties.

Beheer

Net als WordPress of een gelijkaardig content management system is het voor mijn portfolio site nu ook mogelijk om content te beheren. Dit heb ik gerealiseerd door mijn eigen mini-CMS met dashboard in de back-end te programmeren. Zo wordt alle data slim aan alle objecten gelinkt voor maximale herbruikbaarheid.

Admin dashboard

Admin dashboard

De site is hiervoor dan ook weer geoptimaliseerd voor RESS, de back-end variant van RWD. Zo worden enkel de resources die te maken hebben met het administratiedashboard ingeladen. Omgekeerd heeft dit ook het resultaat dat administratie resources niet in de front-end van de site terechtkomt, wat toch weer wat snelheidsprestaties oplevert.

Dus ben je op zoek naar een framework om het werk te verlichten en heb je al kennis van PHP? Dan is Laravel zeker en vast dé oplossing om aan de slag te gaan!