[OO] Verschil tussen twee patterns
Hoi,
Heb nu al het Collection pattern en ook het Storage pattern gezien.
Het is me niet duidelijk wat nu het verschil is tussen de twee, ze doen alletwee één zaak, en dat is objecten storen.
Iemand die het verschil kan uitleggen?
Raoul
Heb nu al het Collection pattern en ook het Storage pattern gezien.
Het is me niet duidelijk wat nu het verschil is tussen de twee, ze doen alletwee één zaak, en dat is objecten storen.
Iemand die het verschil kan uitleggen?
Raoul
Je hebt heel veel patterns voor het handelen van het opslaan van objecten. Om er een paar veel gebruikte te noemen, ORM; Active Record; DataMapper; Storage; Collection. Deze hebben allemaal een andere implementatie van hoe je dit het flexibelst kan doen. Welk pattern je gebruikt ligt aan je code en aan jou voorkeur.
Ik ken het Collection pattern eigenlijk niet, dus kan niet uitleggen wat het verschil is met het Storage pattern. Als je met het Storage pattern trouwens die eindeloze *Storage klassen bedoelt die ik hier de hele tijd op het forum plaatst, ik weet niet eens of dat wel een pattern is. Het is eigenlijk een implementatie van het Adapter pattern.
Ik ken het Collection pattern eigenlijk niet, dus kan niet uitleggen wat het verschil is met het Storage pattern. Als je met het Storage pattern trouwens die eindeloze *Storage klassen bedoelt die ik hier de hele tijd op het forum plaatst, ik weet niet eens of dat wel een pattern is. Het is eigenlijk een implementatie van het Adapter pattern.
Hmm, thanks voor je antwoord. Ik heb eens in de source van Symfony gekeken (wat trouwens heel leerzaam is) en zag een RouteCollection maar ook Storage classen, dus ik begon te twijfelen...
Zal nog eens wat gaan graven in de source of Symfony ook storages gebruikt, en dan vergelijken...
Zal nog eens wat gaan graven in de source of Symfony ook storages gebruikt, en dan vergelijken...
Kijk, heel leuk dat je in broncodes kijkt! En natuurlijk al helemaal dat je dat in die van Symfony doet (wat ik trouwens 10x makkelijker te begrijpen vindt dan ZF broncodes).
Nee, Symfony is een HTTP framework en geen MVC framework. Het verschil is niet heel groot, maar het grootste is dat er geen Model bestaat. Je moet gewoon zelf jou manier zoeken. Standaard is Symfony wel ingesteld op het ORM pattern en maakt dan gebruik van Doctrine2 of Propel.
Mocht je trouwens vragen hebben over Symfony broncode, schroom je niet ze te stellen (eventueel via PM als het niet topic-waardig is).
Even terugkomend op je topic: Storage klassen in de vorm zoals ik ze gebruikte hebben als doel het object op te slaan in een extern resource (of dat nou een SQL database, xml bestand of wat dan ook is). De RouteCollection houdt dingen vast voor maar pagina oproep. In de Symfony source zie je ook wel de Bin klassen terug, deze houden ook data vast.
Quote:
(...) Symfony ook storages gebruikt
Nee, Symfony is een HTTP framework en geen MVC framework. Het verschil is niet heel groot, maar het grootste is dat er geen Model bestaat. Je moet gewoon zelf jou manier zoeken. Standaard is Symfony wel ingesteld op het ORM pattern en maakt dan gebruik van Doctrine2 of Propel.
Mocht je trouwens vragen hebben over Symfony broncode, schroom je niet ze te stellen (eventueel via PM als het niet topic-waardig is).
Even terugkomend op je topic: Storage klassen in de vorm zoals ik ze gebruikte hebben als doel het object op te slaan in een extern resource (of dat nou een SQL database, xml bestand of wat dan ook is). De RouteCollection houdt dingen vast voor maar pagina oproep. In de Symfony source zie je ook wel de Bin klassen terug, deze houden ook data vast.
Hmm, maar het is toch niet omdat er storages inzitten dat het direct een MVC is? Want bijvoorbeeld SessionStorages hebben toch niks te maken met models?
Thanks!
Thanks!
Quote:
Want bijvoorbeeld SessionStorages hebben toch niks te maken met models?
Jawel, Models zijn klassen die voor interactie met 'een' database zorgen.
Wouter J op 07/12/2012 23:06:27:
Jawel, Models zijn klassen die voor interactie met 'een' database zorgen.
Quote:
Want bijvoorbeeld SessionStorages hebben toch niks te maken met models?
Jawel, Models zijn klassen die voor interactie met 'een' database zorgen.
Maar sessies hebben toch niks met databases te maken? Of versta ik je nu verkeerd?
Sessies slaan data op en zijn dus een database. De database die jij bedoelt (MySQL enzo) zijn SQL databases. Maar "Een database is een ander woord voor gegevensbank, het is een systeem voor de opslag van gegevens."
Ah ja, als je het zo bekijkt! Ik snap het nu, bedankt!
Misschien is het wel handig om het boek: "Head First Design Pattersn" te lezen. Je kan hem zo kopen bij bol ofzo. Maar het boek is gericht op Java, en dus niet PHP. Maar ik vind het voor de uitleg van de Patterns heel handig. Ik ben aan het proberen de code te vertalen naar PHP. Maar ik zit nog maar aan het 3de pattern.
LEDfan, de code is niet heel moeilijk te lezen. De JAVA code lijkt behoorlijk op PHP behalve dat JAVA. Dat boek is inderdaad een perfect boek en is het schakelpunt geweest in mijn OO denken.
Op bol.com is hij helaas niet te koop, de nederlandse versie in elk geval niet. Ik heb hem een jaar geleden bij Lannoo gekocht.
Op bol.com is hij helaas niet te koop, de nederlandse versie in elk geval niet. Ik heb hem een jaar geleden bij Lannoo gekocht.
Ik heb het boek ook ergens gezien in de Symfony documentatie als tip, ik zal het zeker eens bekijken.
(misschien een goed idee voor de boeken sectie hier op phphulp?)
(misschien een goed idee voor de boeken sectie hier op phphulp?)
Gewijzigd op 08/12/2012 12:16:16 door - Raoul -
Ik lees de Engelse op men E-reader.
Soms is het wel handig om de code uit te kunnen voeren. Ik begrijp de code wel, maar het is handig om te weten hoe je zoiets toepast in PHP.
Soms is het wel handig om de code uit te kunnen voeren. Ik begrijp de code wel, maar het is handig om te weten hoe je zoiets toepast in PHP.
Gewijzigd op 08/12/2012 13:46:07 door LEDfan nvt




