haqbar Skrevet 25. januar 2012 Del Skrevet 25. januar 2012 (endret) Sitter og skal lage en app for et firma som en del av hovedprosjektet mitt på skolen. Har satt meg godt inn i MVC-patternet og har fått en god grunnleggende forståelse for dette, men det er en ting jeg er litt usikker på. Jeg har en main controller med en index method som genererer standard index forsiden. Denne siden skal ha info fra hele systemet, dvs data som helst skal hentes ut fra noen av de andre modellene og kontrollerene. Hvordan gjøres dette? Jeg kan lage spørringene som henter ut riktig data for meg i index modellen, men da er jo litt av poenget med oop og dry prinsippet litt bortkastet da disse spørringene allerede ligger i andre modeller. Er det så enkelt som at jeg i index methoden instanserer de modellene og kontrollerene jeg trenger og henter data derifra? Eller har jeg misforstått noe grunnleggende? Det er veldig mulig at dette i mitt hode virker mer avansert enn det egentlig er, men vil bare høre hvilke innspill/teknikker dere bruker for å oppnå dette. Noe annet jeg har tenkt på, om det er så enkelt som at man inkluderer og instanserer de modellene man trenger, hvordan vil man gjøre dette i en stor applikasjon med rundt 100vis av modeller og kontrollere? (min applikasjon har ca. 15-20 kontrollere med tilhørende modeller og views.) Endret 25. januar 2012 av haqbar Lenke til kommentar
dskg Skrevet 27. januar 2012 Del Skrevet 27. januar 2012 (endret) Det vanlige er å bruke modeller for å hente ut, sette inn og endre data i databasen. Da initierer man modellene man trenger i kontrolleren man trenger de. Det er ikke vanlig å ha mer enn en kontroller instansiert om gangen. I større applikasjoner bruker man gjerne autoloadere på modeller, slik at man enkelt kan instansiere og bruke de. I tillegg er det viktig å bruke singleton-pattern der hvor man kan. Kontrollere blir som regel instansiert basert på URIen. Endret 27. januar 2012 av danielss Lenke til kommentar
dahuff Skrevet 28. januar 2012 Del Skrevet 28. januar 2012 Singleton-pattern bør brukes så lite som mulig fordi globale objekter* kan ha skjulte avhengigheter og du bryter med OOP konvensjon om at objekter helst skal kommunisere med relaterte, nabo, objekter, og man må alltid prøve å få til ett design med løsere binding. *Singleton oppfører seg som globale objekter, men instansieres først når de kalles. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå