Forskel mellem MVC og MVP Forskellen mellem
MVC vs MVP
Model View Controller (også kendt som MVC) er et mønster af arkitektonisk karakter, der anvendes specifikt inden for software engineering. Dette særlige mønster bruges til at isolere det såkaldte 'domain logic' - som simpelthen er logikken i en applikation til brugeren. Det er isoleret fra input og præsentation (kendt som GUI), og tillader uafhængig udvikling.
Model View Presenter (også kendt som MVP) er en direkte permutation af MVC. Det er et software mønster (mere specifikt et brugergrænseflades designmønster) designet specifikt til at hjælpe testen af automatiserede enheder og forbedre det såkaldte adskillelse af bekymringer i præsentationslogikken. Adskillelsen af bekymringer er i grunden en proces, hvorved et computerprogram adskilles i forskellige funktioner, der ikke overlapper hinanden, hvad angår deres funktion.
Modeldelen af MVC er i det væsentlige et mønster, der repræsenterer data via bestemte domæner, de data, der bruges til at tillade applikationen at fungere. Visningsdelen forvandler modellen til en interaktion, der passer til brugere - dette er normalt et brugergrænsefladeelement. Endelig modtager styreenheden mest input. Ved at træffe beslutninger for de objekter, der findes i modellen, fungerer styreenheden som en katalysator for svaret.
Modeldelen af MVP definerer de data, der skal vises (eller handles) i brugergrænsefladen. Visningsdelen viser de data, der er defineret i modellen, og sender brugeroplysningstegn (kendt som begivenheder) til presentatoren (hvem vil handle på disse data). Præsentanten handler derefter på modellen og modelens opfattelse. Som sådan er det i stand til at hente data fra repositorier (findes i modellen), fortsætte dataene og formatere det, så det let kan vises i visningen.
Der er forskellige varianter af MVC. Som sådan er strømmen af kontrollen i en meget streng rækkefølge: For det første vil brugeren interagere med grænsefladen (f.eks. Ved at trykke på en knap på musen), og så styrer regulatoren indgangshændelsen og ændrer den ind i den relevante bruger handling. Derefter meddeler controlleren modellen for, hvad brugeren har gjort, hvilket sandsynligvis vil medføre, at modellen ændrer sin tilstand (som en opdatering, for eksempel). Visningen stiller derefter et spørgsmål til modellen for at generere brugergrænsefladen. Endelig venter brugergrænsefladen for instruktioner, som genstarter cyklusen.
Sammendrag:
1. MVC er et arkitektonisk mønster der isolerer domæne logik; MVP er en efterkommer af MVC designet til at hjælpe med at teste automatiserede enheder og forbedre adskillelsen af bekymringer.
2. Med hensyn til MVC repræsenterer modellen dataene, formen ændrer modellen til en brugervenlig interaktion, og controlleren modtager input; Med hensyn til MVP definerer modellen dataene, visningen viser det, og præsentanten virker på modellen og dens opfattelse.