Wat is MVC? Maak kennis met deze software-architectuur!

Leren over Wat is MVC? En aangezien dit nieuwe type software een revolutie teweeg heeft gebracht in de wereld van code en zijn belangrijkste kenmerken, dit alles dankzij wat we je hieronder zullen vertellen.

wat-is-mvc-2

MVC of Model View Controller, de nieuwe manier om codes te maken

Wat is MVC?

De MVC staat voor Model View Controller, het doel is om als basis voor softwareontwerp te dienen. Een software-architectuur zijn handleidingen die de constructie van deze elementen vergemakkelijken en een model geven van hoe het zou moeten zijn.

De MVC maakt, in tegenstelling tot andere software-architecturen, elke code los om een ​​specifieke taak uit te voeren, op deze manier wordt de code in één enkele taak ontwikkeld en wordt deze zonder onderbreking uitgevoerd.

Gebruik de gebruikersinterface om het gebruik ervan te vergemakkelijken, omdat deze gemakkelijk te begrijpen is en de computer rechtstreeks met de internetgebruiker verbindt. Evenzo kan de MVC-code voor verschillende programma's of schema's worden gebruikt.

De gebruikstijd is lang, praktisch en de interactie is eenvoudig, omdat het software probeert te maken zonder zoveel complexiteit, zoals in het verleden. Het systeem gebruikt verschillende codes, zelfs als ze worden gebruikt, en scheidt ze zodat ze elk maar aan één taak of concept werken.

Zoals hierboven uitgelegd, is het een architectuur, maar waarom? Welnu, net als een bouwplan stelt het drie verschillende werkplannen vast; model, weergave en controller.

Dit idee van afscheiding van het concept van codes is oud en kwam in een stroomversnelling door de goede kaders die naar voren kwamen. Frameworks zijn een soort software die een probleem probeert op te lossen en de constructie ervan is gebaseerd op het probleem zelf.

Wat is MVC?: Geschiedenis van het model, weergaven en controllers

Het idee van het Model, Views & Controllers zou zijn geweest vóór het maken van een webpagina. Het was een idee afkomstig van de GUI of de grafische video-interfaces; GUI's zijn tools die werken met gebruikersinterfaces, die software gebruiken die met visuele inhoud de gegevens weergeeft die beschikbaar zijn in het systeem.

Het was een van de baanbrekende innovaties om software te gebruiken die de concepten in verschillende functies verdeelde. Het begon als een concept in de jaren '70, later in de jaren '80 werd een versie voor Smalltalk-80 geïmplementeerd.

Smalltalk-80 is een actieve programmeertaal die, in tegenstelling tot MCV, zijn concepten en functies niet scheidt. De vereniging van MCV zou worden gegeven voor een werkende bibliotheek, het testen van haar bases.

Eindelijk, eind jaren negentig, werd MVC uitgebracht als een eigen concept, gescheiden van Smalltalk-80. In de begindagen was MCV een zeer basaal programma dat de functie voor het scheiden van codes nog niet had geïmplementeerd, alleen gebaseerd op de invoermodus.

Met de ontwikkeling van een paar maanden kwam hier verandering in, het implementeren van de weergave, dat het outputmodel was, en het combineren met het inputmodel. In de loop der jaren voldeed dit type model niet meer voor huidige toepassingen, daarom evolueerde de MVC naar het concept dat vandaag de dag bekend is, maar het heeft verschillende versies doorlopen totdat het werd wat het nu is.

Hiërarchische Model View Controller (HMVC)

Het is een van de eerste variaties, het ontstond begin 2000. In tegenstelling tot de MVC configureert de HMCV eerst het model en aan het einde het uitzicht, wat een iets langer proces is; Deze versie staat de weergave niet toe om de gegevens rechtstreeks te bekijken of te openen.

Modelweergave-adapter (MVA)

Het is een versie die dicht in de buurt komt van wat de MVC zal zijn, met een vergelijkbare architectuur om elke taak of code op niveaus te scheiden. In tegenstelling tot zijn voorganger, nivelleert de MVA elke taak, maar staat geen enkele verbinding tussen het model en de weergave toe zoals de MVC.

Modelweergave presentator (MVP)

De Model View Presenter wordt nog steeds gebruikt om de verbindingspunten tussen de gebruiker en de pc te ontwerpen. Het wordt gebruikt voor tests waarbij de server autonome antwoorden geeft en de gegevens transformeert die het model hem geeft en comprimeert voor de weergave.

Modelweergave Viewmodel (MVVM)

Dit type software-architectuur ontgrendelt de volledige structuur van het model en de weergave, die met elkaar zijn verbonden, waardoor een volledige overdracht van de gegevens wordt bereikt. Dit ontwikkelt een goed visueel model en biedt een goede grafische ontwikkeling in applicaties.

Wat heb je aan MVC?

Deze tool is een systeem voor het maken van software, dat wordt gebruikt om applicaties van uitstekende kwaliteit te vormen, daarom wordt tegenwoordig gezocht naar de beste kwaliteit en het gemak van programmeren.

Sinds de creatie van het web en computers heeft programmeren een hoge vlucht genomen en systeemingenieurs hebben een belangrijke rol gespeeld, omdat ze geweldige applicaties of software ontwerpen die een revolutie teweeg hebben gebracht in de hele wereld. Voor het maken van elk programma is het noodzakelijk om een ​​geschikt codesysteem te gebruiken.

Programmeren was vroeger iets zwaars en ingewikkelds, wat lang kon duren om iets nieuws als systeem of applicatie te brengen, maar beetje bij beetje werden diensten of programma's ontwikkeld die het proces vergemakkelijken. Van programma's die de code scheidden of erin slaagden om samen te stellen, zelfs één voor één.

De Model View Controller was de perfecte oplossing voor systeemingenieurs of programmeurs, omdat hij elke bewerking die de code moest uitvoeren op niveaus had georganiseerd en geen enkele taak de andere onderbrak.

Het programmeerproces is veel eenvoudiger gemaakt door de manier waarop de MVC toestaat dat de codes opnieuw worden gebruikt, waardoor elk element dat geprogrammeerd is volledig vloeiend wordt.

De MVC zorgt niet alleen voor programmeergemak, maar zorgt er ook voor dat het sneller kan en resulteert in hoogwaardige apps.

Als je dit artikel leuk vindt, nodig ik je uit om te lezen "Klassen en objecten in Java", een compleet werk van concepten over Java, je zult het zeker leuk vinden.

HTML zonder MVC

Het kan in eerste instantie vaag zijn om alle uitleg van deze software-architectuur te geven, maar ze houden rekening met bijvoorbeeld HTML-, CSS- en PHP-elementen.

Elk van hen wordt gebruikt om een ​​pagina te programmeren of te ontwerpen; De meest voorkomende is HTML, die in het begin niet zo'n goed gevormde structuur had en op het moment van programmeren geen van zijn functies scheidde, als gevolg daarvan was de code gemengd en als je iets wilde veranderen, je moest de hele code veranderen.

Het HTML-probleem maakte de programmeertaak erg vervelend, maar sommige codeschrijvers hadden het geweldige idee om iets te creëren om de verantwoordelijkheden bij het programmeren te scheiden: ze creëerden de CSS-taal. De CSS-taal maakt het mogelijk om de taak van elke code toe te wijzen en te differentiëren, waardoor de vervelende activiteit van het herhalen of wijzigen van een hele code wordt geëlimineerd.

Spaghetticode

Het geval van HTML gebeurt niet alleen met hem; Normaal gesproken combineert u, om verschillende pagina's te maken, codes die verschillende functies vervullen. De codes hebben de neiging om samen te komen, zodat het gewenste wordt weergegeven, iets dat gunstig is, maar door de geringste fout in sommige codes te maken, dwingt het het hele proces te herhalen.

De taal die wordt gebruikt, wordt gecombineerd en heeft tot gevolg dat de programmeur stap voor stap dingen moet repareren die misschien niets met elkaar te maken hebben.

Al dit soort fouten of situaties worden opgelost met een eenvoudige taalscheiding, waarbij wordt toegevoegd dat elk zich op de taak richt. Er zijn niet alleen scheidingsfouten, maar ook de brutaliteit op het moment van het willen hergebruiken van een code, die voorheen verstrikt was geraakt.

Als dezelfde code zou worden gebruikt voor een ander programma of klus, moest dat heel langzaam, dankzij MVC is dit niet meer nodig, omdat de code wordt hergebruikt en wat al in één moment was gevormd.

Dit is hoe het MVC-systeem werkt, een eenvoudige weergave van hoe het proces verloopt

Inleiding tot de Model View Presenter

Vanaf het begin van het artikel is uitgelegd hoe het werkt en waarom het model werkt, maar elk van zijn onderdelen is niet specifiek uitgelegd: het model, de weergave en de controller.

Het model

Het is het eerste niveau en lokaliseert alle gegevens met betrekking tot het systeem en de werking ervan, dat wil zeggen, het behandelt de inhoud van het systeem, de mogelijke updates.

Er is ook de "bedrijfslogica", die bestaat uit hoe het systeem de informatie opslaat, transformeert en verandert voor de visualisatie ervan.

Het model stelt de gebruiker in staat om de informatie te gebruiken die hij nodig heeft, zonder door eindeloze bestanden te hoeven zoeken, hij hoeft alleen maar in te voeren en het zal via de "weergave" laten zien wat hij nodig heeft. Om iets in het systeem of informatie te wijzigen, moet u door de "controller" gaan, die de informatie naar het model stuurt.

Normaal gesproken wordt de informatie met andere controllers bewerkt en in plaats van SQL te gebruiken (een systeemtaal om volledige controle over de gegevens te hebben), wordt deze rechtstreeks gefixeerd op de andere delen van de gegevens, bestaande uit de klasse en het object.

La Vista

De weergave is de sport waar de informatie die door het model wordt verzonden, wordt weergegeven voor de gebruiker, waarbij de inhoud wordt weergegeven in een optische interface. De programmacode wordt weergegeven, waaraan zal worden gewerkt en weergegeven in de gebruikersinterfaces.

Dit element werkt met HTML- en PHP-codes, omdat dit de meest geschikte codes zijn voor het bouwen van een pagina, server, enz. Deze codes worden naar de uitvoer gestuurd, wat de totale transformatie is van de informatie die door het model wordt verzonden.

De controller

De controller is degene die de antwoorden geeft op de verzoeken van de gebruiker, gedaan via het model. De verzoeken hebben betrekking op informatie, van het bewerken, maken of doorzoeken van elk type informatie.

Het is een tool waarmee u ook kunt bewerken hoe de informatie wordt weergegeven, dat wil zeggen, hoe de informatie wordt verwerkt en weergegeven in "de weergave", dit is op zijn beurt een verandering in hoe het model de informatie geeft. Simpel gezegd, de controller is een brug tussen het model en de weergave, die een verzoek accepteert en de weergave kan bereiken om deze op een andere manier weer te geven.

De controller is degene die een antwoord geeft op wat het programma dat wordt gemaakt of de applicatie die wordt gemaakt nodig heeft, het uiteindelijke doel is dat alle informatie van het begin tot het einde arriveert.

wat is mvc

Hoe werken de componenten op elkaar in?

Het werk van elk onderdeel, zoals te zien is, wordt gegenereerd door een opdracht en elk beïnvloedt het werk van de ander. De controller voegt zich bij de anderen, waardoor de workflow meer wordt en wordt gegeven om het programma of de applicatie te maken, maar dit is een betere uitleg van hoe het hele proces wordt gedaan:

  1. De internetgebruiker begint de verschillende opties te gebruiken om de gebruikersinterface binnen te gaan, dat wil zeggen, hij gaat de pagina of server binnen via een of andere aanvulling.
  2. Het verzoek wordt ontvangen door de controller, die het bericht naar het model verzendt. Elk verzoek wordt geactiveerd via een gebeurtenishandler (een Java- of HTML-code, die een externe codereactie geeft).
  3. De verwerkingsverantwoordelijke om aan het verzoek te voldoen, voert het model in, waar hij de informatie gebruikt en de actie aanpast voor wat hij nodig heeft. Om bepaalde acties uit te voeren, moet de controller verschillende ingekapselde codes gebruiken, kortom een ​​commandopatroon.
  4.  In sommige gevallen zal de controller om de volledige taak uit te voeren meer gegevens van het model gebruiken, die hij als een brug moet verzenden om te bekijken.
  5. De controller stuurt alle informatie en de opdracht van de internetgebruiker op zicht, die een visualisatie moet weergeven van wat gewenst is.
  6. Het aanzicht, om een ​​goede visualisatie te geven, gebruikt zoveel mogelijk informatie uit het model en weerspiegelt alles wat erin zit.
  7. Omdat het model geen informatie kan hebben over wat er in zicht is, gebruikt het een soort software die het waarschuwt voor elke verandering en op deze manier de noodzakelijke verandering in de informatie of de interface aanbrengt.
  8. De interface herhaalt het proces afhankelijk van elke interactie die de internetgebruiker heeft in het aantal acties dat hij doet.

Hoe wordt het gebruikt in webapplicaties?

Toen de MVC-software werd gemaakt, werd gedacht dat deze zou worden geïmplementeerd in desktoptools, omdat de werking en respons onmiddellijk zouden zijn. Technologische vooruitgang maakte het mogelijk om de software aan te passen aan virtuele applicaties, en slaagde erin te reageren zonder vooraf bepaald te zijn, zoals desktopprogramma's.

De MVC werd aangepast aan virtuele talen, waardoor de verschillende niveaus in harmonie konden zijn met talen zoals HTML of JavaScript, onder andere. Frameworks worden gebruikt om de MVC-architectuur met elkaar te verzoenen en een eigen architectuur te vormen voor het web.

De MVC-architectuur voor de virtuele respons is die van "client en server", in dit schema doet de client een verzoek en de server zal de ontvanger zijn, die een resultaat of een antwoord op het verzoek zal geven.

Om dit soort architecturen te implementeren, was in het begin de webontwikkeling niet zo compleet, daarom lag de focus op een "thin client"-structuur. De thin client is een primaire structuur, omdat het antwoord op de centrale server wordt gegeven en het daarom iets later kan zijn; de reply link zit direct tussen de input en de output, zonder overbrugging of verwerking.

Deze aanpak werkte heel goed, alles wordt gegeven vanaf het moment dat de internetgebruiker de link invoert, vanaf dat moment gaat de actie die de link start, door de controller en geeft de opdracht om te bekijken, zodat deze het beeld weerspiegelt dat de gebruiker moet bekijken. De drie componenten van de MVC bevinden zich in de virtuele server, die het antwoord zal geven.

MVC en databases

Technologische vooruitgang heeft de ontwikkeling van servers en nieuwe talen mogelijk gemaakt die een betere ontwikkeling van de MVC genereren, waardoor de reactie minder gecompliceerd en directer voor de gebruiker kan zijn.

Om applicaties een goede ontwikkeling te laten hebben, moet de MVC een database hebben die als ondersteuning dient. De database is een beheersysteem voor alle informatie van de applicatie, omdat het een ondersteuning is voor het model, waardoor het alles wat het nodig heeft kan opslaan of wijzigen.

De weergave en de controller worden gescheiden gehouden van de database, omdat er een scheiding is door lagen, waardoor het grafische gedeelte op de beste manier kan worden geoptimaliseerd, waardoor een complete visuele benadering van alle informatie en elk complementair werk aan uw zijde wordt gegeven.

Als je dit artikel leuk vond, nodig ik je uit om de "Soorten arrangementen in de programmering", verklaart het volledige belang ervan bij de vorming van programma's, ik weet dat je het leuk zult vinden.


Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Actualidad Blog
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.