Hey,
ik ben al een tijdje bezig een site opnieuw te bouwen, en heb nu m'n twijfels over het wel of niet volledig OO'en van de site, nu PHP5 uit is.
Ik vind het veel fijner werken, en netter, als het allemaal gebeurd zoals bijvoorbeeld in Java, wat nu best goed mogelijk is met PHP5, maar ik vraag me af of hierdoor de performance niet achteruit zal gaan.
Ook krijg je bij een site waar een database achter hangt, al vrij snel erg veel classes, tenminste, dat denk ik nu.
Stel, je hebt bijvoorbeeld een simpel nieuws artikelen systeem met reacties daarop, met de volgende tabellen:
Artikelen
Artikel_Categorieen
Reacties
Als je het niet volledig in OO doet, kun je voldoen aan bijvoorbeeld 2 libraries (artikelen en reacties), met functies om desbetreffende zaken uit de database te trekken en op het scherm weer te geven.
Doe je het wel OO, dan heb je bijvoorbeeld de volgende classes;
Artikel
Artikel_Categorie
Artikel_Database
Reactie
Reactie_Database
(tenminste, dat spookt in m'n hoofd als ik over dit voorbeeld nadenk)
In totaal is het meer typewerk in het begin, en PHP krijgt gewoon meer te doen als hij de scripts moet verwerken... lijkt me. Of is dit niet merkbaar? (heb ook nog niet echt benchmarks van de nieuwe zend 2 engine kunnen vinden).
Het liefst doe ik het dus wel op een manier als die laatste, omdat dat overzichtelijker en leuker coden is. Maar als het ten koste gaat van de snelheid, dan kan/mag het gewoon niet.
Wat is jullie kijk op volledig OO'en in webscripting talen?
Edit:
Wat ik nog vergeet en waar ik ook veel aan denk: als je in een taal als Java een spel maakt, kun je dat vrijwel niet doen zonder OO te werken, door het OO te doen is het gewoon veel, veel makkelijker en veel minder werk.
Ik heb dus m'n twijfels of dat bij webprogramming ook wel nodig is, doen we niet te moeilijk als we alles in OO gaan programmeren?
Edit 2:
Heel toevallig kom ik zojuist ineens een artikel tegen op Devshed.com, dat ook over dit onderwerp gaat:
http://www.devshed.com/c/a/PHP/Conflict-PHP/2/
ik ben al een tijdje bezig een site opnieuw te bouwen, en heb nu m'n twijfels over het wel of niet volledig OO'en van de site, nu PHP5 uit is.
Ik vind het veel fijner werken, en netter, als het allemaal gebeurd zoals bijvoorbeeld in Java, wat nu best goed mogelijk is met PHP5, maar ik vraag me af of hierdoor de performance niet achteruit zal gaan.
Ook krijg je bij een site waar een database achter hangt, al vrij snel erg veel classes, tenminste, dat denk ik nu.
Stel, je hebt bijvoorbeeld een simpel nieuws artikelen systeem met reacties daarop, met de volgende tabellen:
Artikelen
Artikel_Categorieen
Reacties
Als je het niet volledig in OO doet, kun je voldoen aan bijvoorbeeld 2 libraries (artikelen en reacties), met functies om desbetreffende zaken uit de database te trekken en op het scherm weer te geven.
Doe je het wel OO, dan heb je bijvoorbeeld de volgende classes;
Artikel
Artikel_Categorie
Artikel_Database
Reactie
Reactie_Database
(tenminste, dat spookt in m'n hoofd als ik over dit voorbeeld nadenk)
In totaal is het meer typewerk in het begin, en PHP krijgt gewoon meer te doen als hij de scripts moet verwerken... lijkt me. Of is dit niet merkbaar? (heb ook nog niet echt benchmarks van de nieuwe zend 2 engine kunnen vinden).
Het liefst doe ik het dus wel op een manier als die laatste, omdat dat overzichtelijker en leuker coden is. Maar als het ten koste gaat van de snelheid, dan kan/mag het gewoon niet.
Wat is jullie kijk op volledig OO'en in webscripting talen?
Edit:
Wat ik nog vergeet en waar ik ook veel aan denk: als je in een taal als Java een spel maakt, kun je dat vrijwel niet doen zonder OO te werken, door het OO te doen is het gewoon veel, veel makkelijker en veel minder werk.
Ik heb dus m'n twijfels of dat bij webprogramming ook wel nodig is, doen we niet te moeilijk als we alles in OO gaan programmeren?
Edit 2:
Heel toevallig kom ik zojuist ineens een artikel tegen op Devshed.com, dat ook over dit onderwerp gaat:
http://www.devshed.com/c/a/PHP/Conflict-PHP/2/
Precies...Zend has maneuvered PHP so that other companies who are in the enterprise software business consider it a legitimate language: Sun, Borland, Macromedia, etc. This is great for Zend so they can sell their accelerators and encryption packages, but again, this is moving PHP away from its user-base and toward Frankensteining PHP into whatever it needs to be that year in order for Zend to turn a profit. This may work for a few years, but in the long run, a successful software company needs its own identity.
PHP is a hypertext preprocessor. A hypertext preprocessor doesn’t require an object model as complex as Java, especially when hardly any members of the community use Java and the vast majority use the product because it’s simple. Instead of focusing on integrating with Java and rewriting the object-model, other actions could have been taken that would have strengthened PHP’s character instead of turning it into somewhat of a "wannabe."
[ Voor 40% gewijzigd door TangLeFuzZ op 15-02-2005 23:33 ]