[MVC] Waar gaan de mappers?
Ik heb de volgende directory structuur met drie directories: model, controller, view.
Nu mijn vraag, waar moeten de mappers gaan? Of custom authentication adapters als voorbeeld?
In de model?
Raoul
index.php
map: Application
Controller
Model
View
Library
file: Bootstrap.php
in de Library zet je classes bijvoorbeeld users class of je router
de bootstrap.php is je global (core)
en alles word gehandeld via contelers models en de views allemaal in index.php
via de router
Toevoeging op 06/12/2012 13:52:45:
dit is hoe een model view controller eruit ziet
index.php
map: Application
Controller
Model
View
Library
file: Bootstrap.php
in de Library zet je classes bijvoorbeeld users class of je router
de bootstrap.php is je global (core)
en alles word gehandeld via contelers models en de views allemaal in index.php
via de router
Toevoeging op 06/12/2012 13:52:57:
dit is hoe een model view controller eruit ziet
index.php
map: Application
Controller
Model
View
Library
file: Bootstrap.php
in de Library zet je classes bijvoorbeeld users class of je router
de bootstrap.php is je global (core)
en alles word gehandeld via contelers models en de views allemaal in index.php
via de router
Dat weet ik ook wel ik heb al een heel framework opgezet, mijn vraag is waar mappers en bijvoorbeeld authentication adapters gaan in de app/ map.
[diclaimer]ja ik weet het antwoord wel, ik hoop je hiermee aan het denken te zetten zodat je zelf het antwoord kunt geven[/disclaimer]
Erwin H op 06/12/2012 14:19:26:
Wat is de functie van een mapper?
[diclaimer]ja ik weet het antwoord wel, ik hoop je hiermee aan het denken te zetten zodat je zelf het antwoord kunt geven[/disclaimer]
[diclaimer]ja ik weet het antwoord wel, ik hoop je hiermee aan het denken te zetten zodat je zelf het antwoord kunt geven[/disclaimer]
Een mapper doet veel database acties, dus ik denk dat het bij model hoort? Klopt dat?
Hoewel ik persoonlijk nog een kanttekening zou maken dat een mapper ervoor zorgt dat de juiste data in een bepaald object terecht komt. Of het uit een database komt is dan nog een tweede. Maar dat is precies de functie van het model. Het model levert de data, waarna de view die data kan presenteren.
De controller zit er alleen tussen om uit de beschikbare inputkanalen het model en de view de juiste commando's te geven.
En bijvoorbeeld een authentication adapter, waar hoort dat? Het doet ook database acties, maar dan vind ik het wel een beetje vreemd dat zoiets in model/ moet.
Waarom niet gewoon een nieuwe map aanmaken? Een mapje 'Mapper' erbij bijv.
Hmm kan ook! En authentication adapters dan? Een mapje adapters? :S
Hoe jouw implementatie van mvc eruit ziet heb je zelf in de hand. Wel zou ik het standaard mvc pattern aanhouden, maar de mappen structuur bepaal je zelf, zelf geef ik de voorkeur aan duidelijk gebruik van namespaces, boven de "aloude" model/view/controller mapjes.
Voorbeeld:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
2
3
4
5
6
7
8
9
10
11
12
/application
/Authentication
/Adapter
Adapter.php
/Entity
User.php
/Mapper
User.php
/Controller
Index.php
/public
/Authentication
/Adapter
Adapter.php
/Entity
User.php
/Mapper
User.php
/Controller
Index.php
/public