Frameworks, wel of niet gebruiken?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jorian

jorian

12/10/2008 13:12:00
Quote Anchor link
Hallo,

Ik ben bezig met een redelijk groot project, wat heel wat mensen moet aantrekken. Ik gebruik het framework van CodeIgniter. Is dit wel slim om te gebruiken voor een groot project?
Gewijzigd op 01/01/1970 01:00:00 door Jorian
 
PHP hulp

PHP hulp

23/12/2024 12:26:35
 
- -

- -

12/10/2008 15:33:00
Quote Anchor link
Dat je de URL's mooi en handig vind, maakt op zich niet veel uit. Ligt gewoon aan jouw kennis over hoe je URL's mooi kunt maken, hoe jouw systeem in elkaar zit e.d.

Met mod_rewrite kun je namelijk altijd je URL's "pimpen" e.d.

Wat is je échte reden om 1) gebruik te maken van CodeIgniter en 2) om uberhaupt een framework te gebruiken? Die redenen zijn net iets belangrijker dan dat je de URL's mooi vind ;)

Quote:
Spam verwijderd.

SanThe.
Gewijzigd op 01/01/1970 01:00:00 door - -
 
Jorian

jorian

12/10/2008 15:40:00
Quote Anchor link
De URL's zijn niet de redenen dat ik het gebruik.
Bij de site waar ik aan werk, is het de bedoeling dat er heel veel leden tegelijk online moeten kunnen zijn, zonder dat het slomer word. Daarom programmeer ik het in CodeIgniter, want dat is volledig in classes geprogrammeerd, aangezien classes veel sneller zijn.
 
- -

- -

12/10/2008 15:56:00
Quote Anchor link
Aan je posts te horen heb je niet niet heel veel OOP-kennis, dus ik weet niet of het aan te raden is...
 
Jorian

jorian

12/10/2008 16:19:00
Quote Anchor link
Waar denk jij aan te zien dat ik niet veel OOP kennis heb?
 
- -

- -

12/10/2008 16:26:00
Quote Anchor link
In je eerste post zeg je dat je denkt dat een framework misschien niet goed is voor grote sites en zeg je dat je die URL's zo mooi vindt.
In je tweede post zeg je dat een framework (gebaseerd op classes) juist wel goed is voor een grote site.
 
Jorian

jorian

12/10/2008 16:27:00
Quote Anchor link
Ik probeer er eigenlijk achter te komen of het slim is om een framework te gebruiken ipv alles zelf te maken.
 
- -

- -

12/10/2008 16:35:00
Quote Anchor link
Kijk eens aan, we komen ergens! Wellicht dat je je topic dus aan kunt passen naar "Frameworks, wel of niet gebruiken?". Verdiep je anders eerst eens in frameworks in het algemeen ;)
 
Jorian

jorian

12/10/2008 17:07:00
Quote Anchor link
Ik heb de topicnaam veranderd. ;)
 
Jelmer -

Jelmer -

12/10/2008 17:40:00
Quote Anchor link
Klassen (en frameworks) maken je code niet sneller of langzamer omdat OOP zoveel efficiënter is dan "normaal" programmeren. Sterker nog, het komt redelijk snel voor dat je juist extra overhead gaat maken om een bepaald iets met objecten op een "mooie" manier te bereiken.

Want daar gaat het om bij het programmeren in objecten. Je wilt je code mooi hebben, op zo'n manier dat je het kan hergebruiken, herstructureren, uitbreiden, vervormen, knijpen, lief hebben, uitschelden en troosten. Je script wordt niet sneller, het uitbreiden en werken aan je script wordt sneller.

En dat doen frameworks eigenlijk ook voor je. Het uitwerken wordt sneller. Het script zelf wordt niet snel sneller, zeer waarschijnlijk wordt het zelfs langzamer omdat het framework redelijk algemeen is, en niet specifiek gemaakt voor jouw doel. Het heeft wat functies die jij niet gebruikt, het houdt rekening met dingen die in jouw situatie nooit zullen voorkomen. Er is overhead. Daar tegenover staat dat je niet zelf meer hoeft na te denken over bepaalde design-problemen waardoor je je site veel sneller de lucht in kan krijgen. En zeker wanneer je vrij weinig ervaring hebt met programmeren in objecten (en daarmee bedoel ik vooral het ordenen in objecten) is een framework een mooie kapstok je die mept wanneer je de foute kant op gaat. Het is een soort groot voorbeeld.

En nu de hamvraag: Moet ik een framework gebruiken? Moet je zelf weten. Een framework kan dienen als goed voorbeeld, als kapstok en kan je een heleboel denkwerk besparen (denk aan praten met database, ORM, MVC, routing, en "kleine dingetjes" als rekenen met datums of resultaten verdelen over pagina's) Daarentegen kan je datzelfde ook zien als een framework dat je regeltjes oplegt, al de fun uit het programmeren haalt. (daarom gebruik ik er niet een, juist ORM, MVC, en dat rekenen met datums programmeren vind ik leuk)

Samenvatting: kies niet een framework omdat je site er sneller van wordt, kies er een omdat je code er waarschijnlijk kwalitatief beter van wordt. En als je met meerdere mensen aan 1 site werkt, of je vermoed dat de site enorm zal gaan groeien, dan is kwalitatief goeie code echt iets waar je een moord voor pleegt. (En dat realiseer je je pas wanneer het je eraan ontbreekt ;) )
 
Pim Vernooij

Pim Vernooij

13/10/2008 22:59:00
Quote Anchor link
Het laatste punt van Jelmer vind ik erg goed:
Kies een framework omdat je code er waarschijnlijk kwalitatief beter van word:
Je zegt een "groot" project. Dan wil je niet dat er rare dingen in je code voorkomen (ook wel "bugs" genoemd). Frameworks worden vaak tot in den treure getest (vaak zelfs gebouwd middels test-driven development). De kans dat er fouten in voorkomen is dus vrij klein. Er is ook nog eens een grote community die het framework onderhoud, dus een fout is ook snel gevonden. Eigenlijk staat het gebruik van een framework garant voor een goed getest platform dat dus goed geschikt is voor grote applicaties.

Wil je naar nieuwe versies van het framework kunnen upgraden, dan is het zaak dat je het framework zelf niet aanpast. in zend heb je bijvoorbeeld de map library/Zend. Deze map mag _absoluut_ niet gewijzigd worden als je het Zend framework ooit van een upgrade zou willen voorzien. In plaats van het wijzigen van de 'core' van het framework, zou je in dit geval een eigen namespace kunnen maken. Bijvoorbeeld library/Jorian. Zo hou je je geschreven classes compatible met eventuele volgende versies van je gekozen framework.

Met meerdere mensen in je project is een framework ook een goede keuze: veel documentatie op internet, vaak al voorkennis bij collega's, etc.

Let overigens wel goed op de performance impact van 'handige' dingen als autoloaders. Volgens de test op onderstaande URL, gaan het aantal requests/minuut met de factor 30 omhoog (hoger=beter) wanneer je geen autoloader gebruikt...

http://blog.digitalstruct.com/2007/12/23/zend-framework-performance-zend_loader/
 
PHP erik

PHP erik

13/10/2008 23:05:00
Quote Anchor link
Hier mijn mening in het kort. Je MOET een framework gebruiken voor een serieus project. De reden is simpelweg dat je zelf anders ook een basis moet schrijven voor je hele applicatie en in een framework is dit al gedaan op ongeveer de beste manier. Een goed framework heeft ook niet veel overhead. Ja overhead qua opslagruimte maar niet qua memory of performance. Bijna niet in ieder geval. Het is ook niet voor niets dat Java standaard een framework heeft voor webdevelopment en dat Ruby on Rails zo populair is. En zelfs met grote projecten maakt een framework je systeem niet echt trager. Want dan heb je sowieso een grote technische basis nodig. En mocht performance om één of andere reden toch een issue zijn dan gebruik je Zend Guard om te compileren.

Ik ben zelf alleen gespecialiseerd in Zend Framework in PHP, maar ik hoor wel goede dingen over CodeIgniter. Dus je bent goed bezig, niet twijfelen. Ik heb trouwens symfony en cakephp ook goed bestudeerd en dat zijn ook zeer goede opties.
Gewijzigd op 01/01/1970 01:00:00 door PHP erik
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.