Door
Milo S
op 17-01-2013 19:36
gewijzigd op 17-01-2013 19:37
4.884 views
Goede avond allemaal,
Ik ben al enige tijd bezig met het uitdenken van een CMS. Ik probeer zoveel mogelijk functionaliteiten in te voegen zodat ik gelijk op veel punten terecht kom en zoveel mogelijk leer. Dat is immers het voornaamste doel van dit project.
Nu heeft Wouter J mij in een vorig topic behoorlijk geholpen. Aan de hand hiervan ben ik toch nog verder gaan zoeken naar uitleg over interfaces en abstract classes. Ik vroeg mij nu af gebruik ik het nu niet overkill? Is mijn huidige opzet wel OOP? Zou ik hiermee verder kunnen als ik een simpele cms wil bouwen? Mis ik dingen?
Als ik mij dan niet vergis is dit wat je graag zou willen zien?
MapperInterface
UserInterface
User [color=blue]implements[/color] UserInterface
Authentication
RoleInterface
Role [color=green]abstract[/color] [color=blue]implements[/color] RoleInterface
Moderator [color=red]extends[/color] Role
Administrator [color=red]extends[/color] Role
Bij de media interface kunnen altijd andere media klasse worden toegevoegd, bijvoorbeeld een music klasse...
Wat betreft de database denk ik dat het handig is om wel een database handler te maken. Zo kan ik makkelijk van database soort wisselen... Hier zal ik dan uit moeten gaan van de standaard functies. Connectie, Query, fetch_* etc.
Nee, UserMapper IS GEEN User. UserMapper MAAKT EEN User.
Wat betreft de database denk ik dat het handig is om wel een database handler te maken. Zo kan ik makkelijk van database soort wisselen... Hier zal ik dan uit moeten gaan van de standaard functies. Connectie, Query, fetch_* etc.
Ja, of je gebruikt een al bestaande library, zoals Doctrine DBAL. Dit is zeg maar een erg mooie open source database klasse.
Een Authentication class is er voor om te kijken of de gebruiker wel is wie hij zegt dat hij is. Als ik een pagina ophaal door middel van een paginatitel, welke meegegeven is via de URL, moet ik de pagina dan niet ook nakijken met bijvoorbeeld een PageAuthentication? Dat ik dan huidige Authentication class hernoem tot een UserAuthentication?
Of behoort dit gewoon tot de fatsoenlijke foutafhandeling binnen de PageMapper?
Mocht het wel het geval zijn, dan heb ik er ook een nodig voor nieuws als ik bijvoorbeeld al het nieuws op wil halen van een bepaalde auteur?
De Authentication klasse werkt samen met de Mappers, maar om iets op te halen met een specifiek ID moet ik daarvoor dan nog een extra methode voor schrijven? Ik neem aan van niet, dat het dan geregeld wordt door te kijken of er een ID meegezonden is of niet...