Strategie

Wanneer wij kiezen voor Laravel in plaats van een CMS

Websites zijn er in alle soorten en maten. Van persoonlijke blogs tot zeer complexe webshops die dagelijks miljoenen mensen bedienen. Je hebt websites die als portfolio fungeren en vooral mooie beelden moeten laten zien. Maar er zijn ook websites met meerdere databases onder de motorkap die stabiel met elkaar moeten communiceren. Lead developer Martijn vertelt je over het gebruik van Laravel!

blog - team development aan het werk achter de computer

Waarom Laravel?

In dit artikel ga ik dieper in op hoe je het beste kunt omgaan met complexe websites en webapplicaties met specifieke eisen. Bij Elephant maken we in zulke gevallen graag gebruik van het Laravel framework.

Wanneer volstaat een CMS?

Voor een opdrachtgever die een website afneemt, moet de website gewoon goed werken. Een van de belangrijkste eisen is vrijwel altijd dat er een CMS aanwezig is. Een CMS is een content management systeem waarmee de gebruiker de inhoud van de website kan beheren, aanpassen of vervangen. Er zijn in de loop der jaren heel wat van dat soort systemen op de markt gekomen. Ze zijn makkelijk in het gebruik en je website staat zo online.

Toch zit er ook een groot nadeel aan systemen die alles voorgekauwd hebben. Dat merk je vooral bij grote en ingewikkelde websites. Denk dan aan uitgebreide webshops met ingewikkelde klantreizen, websites met heel veel verschillende datastromen of apps met specifieke eisen die uitstijgen boven wat het CMS standaard biedt.

Laravel alleen bij complexe webapplicaties?

Elephant kiest voor Laravel boven een CMS in situaties waar het CMS-systeem al te veel vooraf bepaalt om nog goed aan de vraag van de klant tegemoet te komen. Sommige klanten komen met cases waarvoor een robuuste applicatie nodig is die veel data aan kan of heel specifieke taken moet vervullen.

Een gemiddeld CMS zet al veel voor de developer ‘klaar’. Denk bijvoorbeeld aan het aanmaken van webpagina’s en het gebruik van voorgebakken menu’s. Dat is handig want de gebruiker kan er snel mee aan de slag. En inderdaad, voor simpele websites is dat ook ruim voldoende. Maar met de rigide structuur van een CMS liggen gelijk alweer veel zaken vast die niet meer aangepast kunnen worden of waarvan door het CMS vooraf de grenzen zijn bepaald.

blog - Martijn, Bart en John in overleg achter een computer

Laravel vs WordPress

Bij Laravel is dat heel anders gesteld. Laravel is geen CMS zoals WordPress, maar een PHP framework waarmee complexe of grootschalige web apps en portals efficiënt ontwikkeld worden. Volledig conform de eisen van het eindproduct.

Laravel biedt meer flexibiliteit dan een CMS
Als framework biedt Laravel handvaten om een applicatie te bouwen. Laravel is hierin dus anders dan een CMS. Dit omdat het de developer alle vrijheid geeft die hij nodig heeft. Ongeacht de functionaliteit en ongeacht hoe de applicatie eruit moet komen te zien. De developer bepaalt bij Laravel namelijk alles zelf.

Om het verschil helemaal duidelijk te maken: Een CMS kan alleen een CMS zijn, terwijl je met Laravel alles maakt wat je maar kunt bedenken. Een webapp bijvoorbeeld, of een complexe portal. Maar ook een website met een ingewikkelde klantreis kan met Laravel gemaakt worden. Indien gewenst zelfs een op maat gemaakt CMS dat precies doet wat de klant nodig heeft.

Aan de ene kant gaan sommige dingen weliswaar langzamer omdat niet alles al is voorgekauwd. Bij Laravel moet de developer namelijk zelf keuzes maken en nieuwe code schrijven. Aan de andere kant is er juist tijdwinst omdat Laravel als framework componenten biedt waarmee op modulaire wijze gebouwd wordt.

Wanneer valt de keuze op Laravel in plaats van een CMS? Eenvoudig. Zodra een CMS niet langer aansluit op de behoefte van een bepaald traject komt Laravel in beeld.

Laravel: een PHP framework

Laravel is een PHP framework. PHP is een veel gebruikte programmeertaal voor websites. Andere populaire programmeertalen zijn Ruby en Python. PHP heeft echter zo zijn voordelen. Het is de meest populaire taal om voor het web mee te programmeren. Ook zijn de meeste servers voor PHP ingericht.

Laravel is echter een bijzonder soort PHP systeem. Het biedt precies genoeg handvaten of componenten waarmee een programmeur snel aan de slag kan om de Laravel webapplicatie in de steigers te zetten. Zo kun je bijvoorbeeld op slimme en flexibele wijzen gegevens opslaan en verwerken.

Elephant heeft naast Laravel twee andere oplossingen in gebruik, WordPress (hierboven al genoemd) en Magento, die allebei ook op PHP gebaseerd zijn. Als experts in PHP is schakelen tussen deze drie systemen eenvoudig.

Voordelen van Laravel voor de opdrachtgever
Het bovenstaande betreft slechts de technische voordelen. Maar wat heeft de klant er nu precies aan? Waar het om draait is dat Laravel de developer in staat stelt om sneller te ontwikkelen dan wanneer hij gewoon in PHP werkt. Maar dan met het grote voordeel dat de ontwikkelsnelheid niet ten koste gaat van de robuustheid van de applicatie.

Het is een beetje ‘best of both worlds’ want met Laravel kun je snelheid in ontwikkeling combineren met geavanceerde mogelijkheden. Waar een CMS perfect is om snel een website neer te zetten, helpt Laravel om middels PHP snel en doelgericht een applicatie te ontwikkelen.

Voor de klant komt dit erop neer dat Elephant met Laravel in staat is om op efficiënte wijze complexe applicaties of grote portals te ontwikkelen zonder dat er onnodig veel budget in het project gaat zitten.

Actieve laravel community
Naast dat de developer met Laravel efficiënt kan werken, is ook de community rondom Laravel de laatste jaren enorm gegroeid. Heel veel developers hebben al zogenaamde open source ‘packages’ en componenten ontwikkeld voor Laravel. Die open source elementen zijn beschikbaar voor elke developer. Iets wat enorm bijdraagt aan de efficiëntie van het gebruik van Laravel. Daarmee is Laravel dus ook een feest voor de opdrachtgever.

Het betekent niet alleen dat de developer snel op weg is, maar ook dat zijn of haar creativiteit gestimuleerd wordt voor die taken waar het ertoe doet. De developer hoeft daarbij niet het wiel opnieuw uit te vinden. De focus van de creativiteit kan meteen komen te liggen op de uitdagingen en specifieke eisen van de klant

sfeer - Jeroen en Martijn op bezoek bij een opdrachtgever. Ze lopen gezamenlijk de trap af

Laravel en ecommerce in de praktijk

Wat zijn de succesverhalen? Hoe doet Laravel het in de praktijk van ecommerce, portals en webapplicaties?

Elephant gebruikt, zoals gezegd Laravel wanneer de vraag van de klant niet langer aansluit op wat met een CMS mogelijk is. Te denken valt aan situaties waarin dataverwerking plaatsvindt of waar gebruikers grote hoeveelheden gegevens aanleveren. Met een CMS is het nog mogelijk om een eenvoudig formulier met persoonlijke gegevens in te sturen, maar als je echt een platform gaat maken waarop veel data verwerkt wordt, is het een ander verhaal.

Sportschool TrainMore
Elephant heeft bijvoorbeeld het inschrijfformulier voor sportschool Trainmore gemaakt. Dat formulier is een behoorlijk complexe digitale klantenreis. Hier zitten veel variabelen achter die constant uitgerekend moeten worden afhankelijk van welke club iemand kiest en wanneer die zich inschrijft.

Omdat Elephant dit hele systeem met behulp van Laravel van de grond af op kon bouwen, is het robuust en in staat grote hoeveelheden data te verwerken. Denk daarbij aan tientallen reserveringen per minuut. Met een standaardoplossing loop je dan snel tegen limieten aan. Een CMS is minder flexibel en niet in staat zo’n hoog datavolume te verwerken.

Erasmus Recruitment
Een ander voorbeeld is de opdracht die Elephant voor Erasmus Recruitment heeft uitgevoerd. Erasmus Recruitment is een platform waarop studenten en het bedrijfsleven samenkomen.

Op dit platform plaatsen bedrijven zelf vacatures en kunnen studenten zichzelf aanmelden voor evenementen. Het grote verschil tussen dit platform en een standaard CMS is dat op dit platform de beschikbare data uitsluitend van de gebruikers afkomstig is.

Voor een standaardpakket is het real-time verwerken van gegevens die door gebruikers ingevoerd zijn erg lastig. Het systeem wordt traag en op een gegeven moment functioneert het niet meer. Een CMS kan een grote datastroom van talloze gebruikers niet snel genoeg verwerken en is ook niet in staat om de gegevens te controleren, te valideren en te correleren met andere data.

Laravel biedt hier de uitkomst omdat de developer vooraf bepaalt hoe het systeem de data verwerkt en deze vervolgens daarop inricht. De databases die Laravel in de strijd gooit, presteren ook bij zware belasting, zelfs wanneer meerdere datasets met elkaar gelinkt moeten worden.

Laravel en schaalbaarheid

Of je nu een Laravel webshop, platform of webapplicatie laat bouwen, het grote voordeel is dat het schaalbaar is. En schaalbaar is een magisch woord in developer-land. Dit betekent dat iets klein kan beginnen maar uiteindelijk heel groot kan worden zonder dat de code hoeft te worden aangepast.

Omdat de developer met Laravel de datastructuur van de grond af zelf opbouwt en de specifieke relaties tussen verschillende data sets bepaalt, gaat het verwerken van gegevens razendsnel. Ook bij hoge data volumes en veel gebruikers blijft het systeem overeind.

Laravel in een notendop

Elephant kiest er dus voor om Laravel in te zetten wanneer het te ontwikkelen product een ingewikkelde klantreis, portal of webapplicatie betreft.

Voor klanten is het belangrijk te weten dat Elephant met Laravel in staat is om uiterst robuuste websites te ontwikkelen voor de meest complexe toepassingen en dat deze oplossingen schaalbaar zijn. Ook is Laravel vanwege de serverside verwerking van data een veilige keuze.

En nee, hoewel Laravel geen CMS is, hoeft de klant het met Laravel niet zonder CMS te stellen. Als zo’n CMS gewenst is, wordt die gewoon mee ontwikkeld; en op maat natuurlijk!

Dankzij de gemeenschap en het ecosysteem die rondom Laravel zijn ontstaan, zijn er steeds meer componenten beschikbaar die de developer helpen om de benodigde ontwikkeltijd binnen de perken te houden.

Nog vragen?

Ben je geïnteresseerd maar heb je nog wel wat vragen? Of wil je graag even praten met een Laravel expert van Elephant? Neem dan even contact met ons op. Je bent ook van harte welkom om een keer langs te komen voor een kop koffie en een nadere kennismaking. Wij beantwoorden graag al je vragen.

Heb je nog vragen over Laravel? Onze lead developer Martijn staat voor je klaar!

Dit veld is bedoeld voor validatiedoeleinden en moet niet worden gewijzigd.