Symfony, het PHP framework

Homepage

Symfony, wat is dat?

Symfony is een open source PHP framework voor het ontwikkelen van veilige, performante en highly customisable webapplicaties. Je kan een framework vergelijken met een skelet: het is de basis en structuur van de webapplicatie. Het is vervolgens de taak van de ontwikkelaars om het skelet vorm te geven. Dit doen ze door gebruik te maken van een verzameling componenten die je het best kan zien als onafhankelijke en herbruikbare codebibliotheken.

Symfony geeft je heel wat flexibiliteit en vrijheid, maar vergt vaak ook wel wat programmeerwerk. Je gebruikt het dus niet voor het opzetten van een eenvoudige website van de lokale jeugdvereniging of een standaard webshop. Daarvoor kan je beter beroep doen op een Content Management Systeem zoals Drupal.   

Wil je een applicatie laten maken in het Symfony framework? Ben je benieuwd naar de voor- en nadelen? Onze Symfony experts geven je graag meer uitleg.

Waarom een framework?

Voor complexe webapplicaties geldt dat er vrijwel nooit from scratch ontwikkeld wordt. Meestal wordt er gekozen om vanuit een bestaande basis te starten en die verder te ontwikkelen. Deze basis is vaak een PHP-framework zoals Symfony.

Een framework is een set van voorgedefinieerde en snel integreerbare componenten. Het zorgt ervoor dat basisfunctionaliteiten snel geïntegreerd kunnen worden en ontwikkelaars minder code moeten schrijven. Het biedt daarnaast een methodologie voor het organiseren van code die de herbruikbaarheid bevordert. Door het hergebruik van bestaande componenten hoef je niet telkens het wiel opnieuw uit te vinden om problemen op te lossen of functionaliteiten toe te voegen.

Je kan een framework vergelijken met een supermarkt. Je vindt er de beste ingrediënten (componenten) zoals fruit en groenten gekweekt door de beste kwekers. Je moet zelf wel de ingrediënten uitzoeken en samenvoegen om een gerecht (webapplicatie) te creëren. De kwaliteit van het eindproduct is dus afhankelijk van de kwaliteit van de ingrediënten en de creativiteit van de kok. Vertrek je from scratch, dan moet je zelf het fruit en groenten kweken. Het vraagt niet alleen meer tijd, maar ook meer kennis, wil je dezelfde kwaliteit leveren als een supermarkt.

Het verschil met een CMS

Het is niet altijd noodzakelijk om een framework te gebruiken. Wanneer je een eenvoudige website of webapplicatie wil laten maken, kan je gebruik maken van Content Management Systeem (CMS) zoals Drupal. Dit is een applicatie waarmee je eenvoudig digitale inhoud creëert en beheert. Dergelijk CMS biedt vaak voldoende mogelijkheden en functionaliteiten om een mooie eenvoudige website te maken. Bovendien zal het ook een goedkopere oplossing zijn doordat je gebruik kan maken van een kant-en-klaar pakket aan functionaliteiten.  

Wanneer je op zoek bent naar een complexe webapplicatie met veel maatwerk, dan raden we aan om gebruik te maken van een framework zoals Symfony. Het biedt een stabiele basis en voldoende mogelijkheden om zelf functionaliteiten toe te voegen. Het kan daarnaast perfect geïntegreerd worden in een CMS of andere systemen.

Wil jij weten of het Symfony framework geschikt is voor jouw project ? Onze experts geven je graag advies.

De voordelen van Symfony

1. Community en documentatie

Als open source framework ligt de kracht van Symfony mede in hun community. Zo heeft Symfony een grote community van PHP-experts en -enthousiastelingen die werken aan de verbetering en uitbreiding van het framework. De officiële website verklaart meer dan 2.000 bijdragers te hebben in hun gemeenschap. Ondervind je moeilijkheden bij het coderen, dan is er altijd wel hulp te vinden bij andere PHP-ontwikkelaars.      

Buiten de kracht van de community is er ook de uitgebreide documentatie. De documentatie wordt beschouwd als een van de beste omdat ze goed geschreven en gestructureerd is. In tegenstelling tot documentatie bij andere technologieën is de informatie volledig en up-to-date. Doordat de informatie beschreven wordt aan de hand van concrete voorbeelden is ze begrijpbaar voor iedereen.

2. Flexibiliteit

Ontwikkelaars hebben de volledige controle over het framework waardoor eenvoudig unieke functionaliteiten ontwikkeld kunnen worden. Symfony werkt volgens het Reusable Components-concept en behoort tot de frameworks met de beste modulariteit. Components zijn generieke op zichzelf staande features met voorgedefinieerde routines die out-of-the box werken. Door het gebruik van components zet je al snel een goede basis neer zodat ontwikkelaars de focus kunnen leggen op de kernfunctionaliteiten van de webapplicatie. Dit zorgt ervoor dat een Minimum Viable Product (MVP) vaak al opgeleverd kan worden in 6 tot 8 weken.

3. Snelheid en gebruiksvriendelijkheid

De snelheid van je webapplicatie is essentieel voor een goede gebruikservaring. Het is daarnaast ook een cruciale factor om hoog in de zoekresultaten van Google terecht te komen (SEO). Symfony biedt verschillende mogelijkheden om je webapplicatie te optimaliseren.

4. Betrouwbaarheid

Symfony heeft doorheen de jaren een goede reputatie opgebouwd aangaande stabiliteit en betrouwbaarheid. Hoewel het gaat over een open source framework, wordt het wel commercieel ondersteund door de bedenker: SensioLabs. Het bedrijf draagt bij aan de groei van het framework en zorgt ervoor dat de comptabiliteit en veiligheid van oudere versies verzekerd blijven. Het is niets voor niets dat platformen zoals Drupal, Magento en Laravel Symfony-componenten gebruiken in hun eigen frameworks.

Benieuwd naar hoe jouw Symfony applicatie er kan uitzien?