Frameworks

Een framework, je ontkomt er niet aan! Zelfs al programeer je in de laagste talen, dan nog zit je vast aan het framework van de processor architectuur. In een web-omgeving wordt er al gouw naar het MVC model gekeken voor het opzetten van een framework. Dit heeft zo zijn voordelen omdat veel mensen dit patroon kennen. Dit wil niet zeggen dat dit daarom het systeem is.

 

In PHP waarin ik mijn meeste frameworkjes heb gemaakt, ben je ook instaat om een website te maken zonder hulp classes en functies. Dit geeft je heel veel vrijheid maar om een dergelijke website te onderhouden is moninken werk. Ga je alleen gebruik maken van ondersteunende functies, verlies je veels te snel de structuur in je website. Krijg je spook code of wijzig je iets waardoor iets anders weer omvalt. Dan kun je uiteraard kiezen voor een van de standaard, redelijk complete frameworks. Wat vaak een bij elkaar geraapt zooitje is zonder dat er echt goed is over nagedacht. Voor je het weet loop je weer tegen een muur aan, en wordt je geforceerd om weer een één of andere hack uit te voeren omdat je toch net dat ene moet kunnen wat het systeem je niet toelaat.

 

Nu zul je waarschijnlijk wel gemerkt hebben dat ik sowieso niet heel erg fan ben in het gebruiken van externe producten. Dit komt wel met een prijs, voor mijn PHP framework heb ik zeker 7 versies gehad voordat ik was een stabiel systeem had waarop je iets op kon bouwen. Uit wat onvrede van het eerste stabiele versie heb ik somige constructies eerst uitgetest en dit verwerkt in een totaal plaatje en zo de volgende in elkaar gezet.

 

Welke framworks heb ik gemaakt

De stabiele versies die ik in elkaar heb gezet zijn de volgende:

Core Framework

Het core framework lijkt in eerste instantie op het MVC model. In het MVC model zoals je het veel ziet gebeuren wordt er van een centrale locatie de controller aan geroepen, die vervolgens zorgt dat de data wordt opgehaald dit doorgeeft aan de view die dan maar moet gaan printen naar het scherm. Dit is niet geheel het geval in het Core framework. Hierbij is gekenen naar het event model. Deze wordt in fases gedaan. Eerst de algemene programma logica, daarna de view ondersteunde, en daarna het printen van de views naar het scherm.

Routes Framework

Het routes framework is de herziende versie van het Core Framework met 2 nieuwe toevoegingen. Dat de url de route door de code automatisch bepaald. Hierbij rekening houden met alle rechten die je wel en niet mag. De 2e grote toevoeging van de automatisering van de model die communiseren met de database. Waardoor je alle basis functionaliteiten heb door alleen de definities in te stelllen.

Cyreria

Het framework gemaakt Cyreria is een samengevatte herziende versie van de voorgaande. Hierbij zijn alle centrale classes verwijderd, en is er gekeken welke funtionaliteiten een class moet hebben en dan was gaan kijken hoe dit is in te vullen. Dit betekend over het algemeen dat je er veel meer tijd in gaat zitten om alles te ontwerpen. Maar het eind resultaat is wel dat het alleen doet wat het moet doen en je verder alle vrijheid hebt om het te laten doen wat je wilt dat het moet doen. Dit is ook de versie waar deze website nu op draaid.