[Framework] Functionaliteiten in een OOP-framework

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Tim

Tim

04/05/2009 14:33:00
Quote Anchor link
Heey allemaal,


Een korte vraag: Aangezien ik bezig ben met een eigen frameworkje (zoals wel meer mensen), zou ik graag van jullie horen welke functionaliteiten er, volgens jullie, echt niet mogen missen in een framework.

Nog even een rijtje van dingen die ik tot nu toe heb (enkele zijn niet echt functionaliteiten, maar geven meer een beeld van wat ik tot nu toe heb):
- MVC Framework, dus gebruik van views met:
- Toevoegen van losse headers
- Toevoegen van losse footers
- Toevoegen van losse pagina-elementen
- Templates geschreven in PHP
- 'Variabelen' gebruiken per template en algemene 'variabelen'
- Formulieren
- Makkelijk te gebruiken errors
- Registry met daarin onder andere:
- Configuratie
- Database
- Authenticatie
- Router, dus makkelijk URL's samenstellen
- Modulaire opbouw, dus makkelijk nieuwe functionaliteiten toevoegen

Op mijn todo-list:
- Validatie
- Formulieren afmaken


Alvast bedankt voor jullie antwoord,
Tim
Gewijzigd op 01/01/1970 01:00:00 door Tim
 
PHP hulp

PHP hulp

20/04/2024 12:41:43
 

04/05/2009 21:38:00
Quote Anchor link
Hoe goed ben je in OOP?
Heb je al eens wat onderzoek gedaan naar MVC?
Wat ik een beetje troep vind is:
Tim schreef op 04.05.2009 14:33:
, dus gebruik van views met:
- Toevoegen van losse headers
- Toevoegen van losse footers
- Toevoegen van losse pagina-elementen
- Templates geschreven in PHP
- 'Variabelen' gebruiken per template en algemene 'variabelen'
- Makkelijk te gebruiken errors

Dat is allemaal niet nodig / niet relevant / kort door de bocht / heb je al.

Ow. Je mist ACL.
Gewijzigd op 01/01/1970 01:00:00 door
 
Tim

Tim

04/05/2009 22:17:00
Quote Anchor link
Ben al enige tijd bezig met OOP en MVC pattern. Misschien komt het wat verkeerd over, maar wat ik bedoelde was:

Er is één algemene 'view holder' waarin andere verschillende type 'views' kunnen worden toegevoegd. Deze kunnen van het type HTML, XML, PDF, etc. zijn, en zijn allemaal extends van een algemene 'view'. In de HTML-views wordt bijvoorbeeld een template opgegeven waarin wat opmaak staat, en wat data uitgelezen wordt. Deze data kan door de models / controllers geset zijn, en dan wel zo dat ze ofwel door slechts één view te bereiken zijn, ofwel algemeen beschikbaar zijn. Naar mijn weten is dit een goede manier van het gebruiken van de 'V' in MVC.

Mijn wedervraag aan jou is dus: Waarom is dit niet relevant / niet nodig / kort door de bocht / heb je al?

En wat bedoel je precies met dat ACL, in principe heb ik al access control ( / authenticatie).
 
Mark PHP

Mark PHP

04/05/2009 22:56:00
Quote Anchor link
Om maar eens wat te noemen:
- cache
- logging
- i18n
- pluginsysteem

Daarnaast zie ik dat je router los van je MVC interpretatie ziet, dit lijkt me niet juist. Voor de rest kan je nog een aantal handige classes erbij maken, het is niet voor niets een framework.

En inderdaad, als je dit een beetje goed wilt doen moet je wel wat van OOP weten. Tevens zal je naar bestaande frameworks moeten kijken wat die allemaal hebben.
Gewijzigd op 01/01/1970 01:00:00 door Mark PHP
 
Onbekend Onbekend

Onbekend Onbekend

04/05/2009 23:08:00
Quote Anchor link
Een goed framework bevat wat jij nodig hebt. Dat is ook de kracht van ZF, je kunt dingen niet gebruiken als je dat liever zelf doet.
 
Arend a

Arend a

05/05/2009 00:09:00
Quote Anchor link
Je kan ook eens proberen te spelen met een stel van de uitstekende mvc gebaseerde frameworks. En daarna eens kijken hoe je het eventueel zelf beter zou doen.

Het voordeel is dat je
1. Al het bovenstaande al mee hebt gekregen
2. Niet zelf het wiel hoeft uit te vinden
3. Je kan leren van mensen die het al eerder gedaan hebben
4. Je zelf een goed antwoord kan geven op hoe het beter kan en het dan zelf kunt schrijven.

Het nadeel is:
- Je moet je voegen naar andermans regels, en andermans code eerst moet begrijpen

Een greep uit termen waar je van kan leren:
- Symfony (goede documentatie)
- CodeIgniter
- Zend Framework
- (CakePHP)

Of zinnige onderdelen voor zelfbouw (beide ook ondersteund door symfony):
- Doctrine (zeer aardig ORM framewerk voor php, zeer goede ervaringen mee)
- Propel
 
Tim

Tim

05/05/2009 10:31:00
Quote Anchor link
Bedankt voor jullie opmerkingen. Ik ga het allemaal eens rustig bekijken en eventueel toevoegen aan mijn framework.

@ Aqirre:

Waarom is het fout als ik de router als losse class heb? Het is gewoon een apart onderdeel van mijn framework en kan (met scheiding van belangen) niet worden opgenomen in een andere class of verder worden gescheiden.
 
Mark PHP

Mark PHP

05/05/2009 12:43:00
Quote Anchor link
Omdat, mijn insziens, de Router onderdeel is van MVC (samen met o.a. Request, FrontController, Dispatcher etc.). Maar wellicht heb jij dit iets anders geimplementeerd (wat prima kan, er leiden meer wegen naar Rome). In dat geval vind ik de keuze voor de naam Router overigens wel wat ongelukkig.
 



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.