Què és MVC? Coneix aquesta arquitectura de programari!

aprèn sobre Què és MVC? i com aquest nou tipus de programari ha revolucionat el món de el codi i les seves característiques més importants, tot això gràcies al que et comptarem a continuació.

que-és-mvc-2

MVC o Model de Vista Controlador, la nova manera de fer codis

Què és MVC?

El MVC significa Model de Vista Controlador, el seu objectiu és servir com una base de disseny de programari. Una arquitectura de programari són guies que faciliten la construcció d'aquests elements, donant un model de com hauria de ser.

El MVC, a diferència d'altres arquitectures de programari, deslliga cada codi perquè s'encarreguin d'una tasca concreta, d'aquesta manera, el codi es va desenvolupant en un sol treball i el va realitzant sense interrupció.

Per facilitar el seu ús, utilitza la interfície d'usuari, ja que aquests són senzilles de comprendre i connecten directament l'equip amb l'internauta. De la mateixa manera, el codi de MVC es pot usar per a diversos programes o esquemes.

El seu temps d'ús és llarg, pràctic i la seva interacció senzilla, a causa que es busca crear un programari sense tantes complexitats, com en el passat. El sistema fa servir diferents codis, així ja siguin usats, i els deslliga perquè només treballin en una tasca o concepte cadascun.

Com es va explicar anteriorment, és una arquitectura, però Per què? Bé, com un pla de construcció, estableix tres plans diferents de treball; model, vista i controlador.

Aquesta idea de separació de el concepte de codis és antiga i va agafar impuls a causa dels bons Frameworks que van sorgir. Els Frameworks, són un tipus de programari que busquen solucionar algun problema i la seva construcció es basa en el problema en si.

Què és MVC ?: Història de l'Model, Views & Controllers

La idea d'el Model, Views & Controllers es diu que va estar abans de la mateixa creació d'alguna pàgina web. Va ser una idea provinent de l'GUI o les interfícies gràfiques de vídeo; les GUI són eines que funcionen amb les interfícies d'usuari, la qual usa un programari que representa amb contingut visual, les dades que estan disponibles en el sistema.

Va ser una de les innovacions pioneres per utilitzar programari que divideixin els seus conceptes en diferents funcions. Va començar com un concepte en els anys 70, temps després, en els anys 80 es va implementar una versió per Smalltalk-80.

La Smalltalk-80, és un llenguatge de programació actiu, que a diferència de MCV, aquest no separa els seus conceptes i funcions. La unió de MCV es donaria per a una biblioteca de treball, provant les seves bases.

Finalment, a la fi dels noranta, MVC es va llançar com un concepte propi, sent separat de l'Smalltalk-80. En els seus inicis, el MCV era un programa molt bàsic que encara no implementava la seva característica separació de codis, basant-se només en la manera d'entrada.

Amb el desenvolupament d'alguns mesos això va anar canviant, implementant la vista, que era el model de sortida i combinant-ho amb el model d'entrada. A el passar dels anys, aquest tipus de model ja no era suficient per a les aplicacions actuals, per tant, el MVC va evolucionar a el concepte que es coneix avui dia, però, pas per diferents versions fins arribar a ser a la qual és actualment .

Hierarchical Model View Controller (HMVC)

És una de les primeres variacions, va sorgir a principi de l'any 2000. A diferència de l'MVC, el HMCV configura primer el model i a la fi la vista, sent un procés una mica més llarg; aquesta versió no permet a la vista directament revisar o accedir a les dades.

Model View Adapter (MVA)

És una versió propera al que serà el MVC, tenint una arquitectura semblant de separar cada tasca o codi per nivells. A diferència del seu predecessor, el MVA divideix per nivells cada tasca, però no permet cap connexió entre el model i la vista com el MVC.

Model View Presenter (MVP)

El Model View Presentar segueix sent usat per dissenyar els punts de connexió entre l'usuari i la PC. S'usa per a proves on el servidor dóna respostes autònomes i transforma les dades que li dóna el model i se'ls comprimeix per a la vista.

Model View Viewmodel (MVVM)

Aquest tipus d'arquitectura de programari va desenlazando tota l'estructura de el model i la vista, les quals es connecten entre si, aconseguint una transferència completa de les dades. Això desenvolupa un bon model visual i ofereix un bon desenvolupament de gràfics en les aplicacions.

De què serveix MVC?

Aquesta eina és un sistema de creació de programari, el qual és utilitzat per formar aplicacions de qualitat excel·lent, per tant, avui en dia es busca la millor qualitat i facilitat a l'hora de programar.

Des de la creació de la web i els ordinadors, la programació va prendre un alt auge i els enginyers de sistema van prendre un paper important, pel fet que aquests dissenyen grans aplicacions o programari que van revolucionar tot el món. Per a la creació de cada programa és necessari utilitzar un sistema de codi adequat.

Programar abans era una mica pesat i complicat, que aconseguia trigar molt per portar alguna cosa nova com a sistema o aplicació, però, poc a poc es van anar desenvolupant serveis o programes que faciliten el procés. Des programes que separaven el codi o aconseguien armar, així fos un per un.

El Model View Controller, va ser la solució perfecta per als enginyers en sistemes o programadors, pel fet que organitzava per nivells cada operació que havia de fer el codi i cap tasca interrompia a l'altra.

El procés de programar es fa molt més senzill per la forma en què el MVC permet reutilitzar els codis, obtenint una fluïdesa completa en qualsevol element que es programi.

El MVC no només dóna una facilitat per programar, sinó que permet que es realitzi de manera més ràpida i dóna com a resultats, apps de gran qualitat.

Si t'està agradant aquest sentit, li convido a llegir «Classes i Objectes en Java», Un treball complet de conceptes sobre Java, segur t'agradarà.

HTML sense MVC

Pot ser difús a el principi tota l'explicació d'aquesta arquitectura de programari, però, tenen en compte alguna cosa com els elemetnos HTML, CSS i PHP.

Cada un d'ells serveix per programar o dissenyar alguna pàgina; el més comú és l'HTML, el qual en els seus inicis no tenia una estructura tan formada i a l'hora de programar no separava cap de les seves funcions, com a conseqüència, el codi es barrejava i si es volia canviar alguna cosa, calia canviar tot el codi .

El problema d'HTML, feia molt tediós la tasca de programar, més alguns redactors de codis van tenir la gran idea de crear alguna cosa per separar les responsabilitats a l'hora de programar: van crear el llenguatge CSS. El llenguatge CSS, permet assignar i diferenciar la tasca de cada codi, llevant l'activitat tediosa de repetir o canviar tot un codi.

codi Espagueti

El cas d'HTML, no només passa amb ell; normalment, per crear diferents pàgines es tendeix a combinar codis, els quals compleixen funcions diferents. Els codis tendeixen a unir-se perquè es visualitzi el que es desitja, cosa beneficiosa, però, a l'cometre el més mínim error en alguns dels codis, obliga a repetir tot el procés.

El llenguatge que es fa servir, es combina i dóna com a conseqüència que el programador hagi d'anar pas per pas arreglant coses que, potser, ni relacionades estan.

Tot aquest tipus d'errors o situacions es resolen amb una simple separació de el llenguatge, afegint, que cadascú se centri en la tasca que li toca. No solament hi ha errors de separació, també la impertinència a l'hora de voler reutilitzar un codi, la qual cosa abans era enredat.

Si s'anava a utilitzar un mateix codi per a un altre programa o treball, s'havia de fer de manera molt lenta, gràcies a MVC això ja no cal, pel fet que es reutilitza el codi i s'arma de nou el que s'havia format ja en un moment.

Així funciona el sistema de l'MVC, una representació simple de com dóna el procés

Introducció a l'Model View Presenter

Des del principi de l'article s'ha explicat com treballa i el per què de el model, però, no s'ha explicat en concret cadascuna de les seves parts: El Model, La Vista i El Controlador.

el Model

És el primer nivell i situa totes les dades relacionades amb el sistema i el seu funcionament, és a dir, maneja el contingut de el sistema, les actualitzacions possibles.

Es troba també la «lògica de negocis», la qual consisteix en com el sistema emmagatzema, transforma i canvia la informació per a la seva visualització.

El model permet a l'usuari utilitzar la informació que necessita, sense necessitat de buscar en una infinitat d'arxius, només necessita ingressar i se li mostrarà, per mitjà de la «vista», el que necessiti. Per modificar una mica de sistema o la informació, s'ha de passar pel «controlador», el qual envia la informació a el model.

Normalment, la informació es treballa amb altres controladors i, en comptes d'usar SQL (un llenguatge de sistema per tal de tenir control complet sobre les dades), es fixa directament en els altres parts de les dades, que consisteix en la seva classe i objecte.

la Vista

La vista és l'esglaó on la informació que envia el model, es representa per a l'usuari, mostrant el contingut en una interfície òptica. Es reflecteix el codi de el programa, el qual serà treballat i mostrat en les interfícies d'usuari.

Aquest element treballa amb codis HTML i PHP, pel fet que són els codis més adequats per a la construcció d'una pàgina, servidor, etc. Aquests codis són enviats a les sortida, la qual és la transformació total de la informació enviada pel model.

el Controlador

El controlador és el que dóna les respostes a les sol·licituds de l'usuari, realitzades per mitjà de el model. Les peticions estan relacionades amb informació, des editar, crear o buscar qualsevol tipus d'informació.

És una eina que permet també editar com es visualitza la informació, és a dir, com la informació va ser processada i reflectida en «la vista», això al seu torn és un canvi en com el model dóna la informació. En poques paraules, el controlador és un pont entre el model i la vista, el qual accepta una petició i pot arribar a la vista perquè ho reflecteixi d'una altra manera.

El controlador és qui dóna resposta per al que necessita el programa que es fa o l'aplicació que s'està creant, el seu objectiu final és que tota la informació arribi des del seu inici fins a la seva sortida.

que és mvc

Com interaccionen els components?

El treball de cada component com es pot observar, es genera donat per un ordre i cada un influeix en el treball de l'altre. El controlador, s'uneix als altres, aconseguint que el treball flueixi més i es vagi donant per crear el programa o aplicació, però, aquesta és una millor explicació de com es realitza tot el procés:

  1. L'internauta comença a fer servir les diferents opcions per entrar a la interfície d'usuari, és a dir, ingressa per algun complement a la pàgina o servidor.
  2. La sol·licitud és rebuda pel controlador, el qual mana el missatge a vista i a el model. Tota sol·licitud és accionada a través d'un gestor d'esdeveniments (un codi Java o HTML, el qual dóna una resposta de codi externa).
  3. El controlador per completar la sol·licitud, ingressa en el model, on fa servir la informació i modifica l'acció per al que necessiti. Per poder fer alguna accions, el controlador, ha d'usar diferents codis encapsulats, en poques paraules, un patró de comandament.
  4.  En alguns casos, el controlador per complir amb la tasca completa, farà servir més dades de el model, els quals ha d'enviar a vista, funcionant com a pont.
  5. El controlador envia tota la informació i l'ordre donada per l'internauta a vista, la qual ha de desplegar una visualització del que seria desitjable.
  6. La vista, per poder donar una bona visualització, utilitza tota la informació que pugui de el model i reflecteix tot el que està en ell.
  7. El model com no pot tenir informació del que succeeix en vista, fa servir un tipus de programari que li adverteix algun canvi i, d'aquesta manera, realitza el canvi necessari en la informació o la interfície.
  8. La interfície repeteix el procés depenent de cada interacció que tingui l'internauta en la quantitat d'accions que faci.

Com s'usa en aplicacions web?

Quan es va crear el programari MVC, es va pensar per implementar en eines d'escriptori, ja que el seu funcionament i resposta seria de manera immediata. Els avenços tecnològics van aconseguir que es pogués adaptar el programari a les aplicacions virtuals, aconseguint donar resposta sense estar predeterminada com els programes d'escriptori.

El MVC es va adaptar als llenguatges virtuals, aconseguint que els diferents nivells poguessin estar en harmonia amb llenguatges com l'HTML o el JavaScript, entre d'altres. S'usen frameworks per tal de poder conciliar l'arquitectura de l'MVC, formant una pròpia per a les web.

L'arquitectura MVC per a la resposta virtual és el de «client i servidor», en aquest esquema el client realitza un requeriment i el servidor serà el receptor, el qual donarà un resultat o una resposta del que sol·licita.

En els inicis, per implementar aquest tipus d'arquitectures, el desenvolupament web no estava tan complet, per tant, l'enfocament va ser per a una estructura de «client lleuger». El client lleuger, és una estructura primària, a causa de que la resposta es dóna al servidor central i, per això, la mateixa pot ser una mica més tardana; l'enllaç de resposta és directament entre l'entrada i la sortida, sense cap pont o procés.

Aquest enfocament va ser molt ben treballat, tot es dóna des que l'internauta ingressa a l'enllaç, d'aquí en endavant l'acció que llança a l'enllaç, passa pel controlador i dóna l'ordre a la vista perquè reflecteixi la imatge que l'usuari ha de visualitzar . Els tres components de l'MVC es troben al servidor virtual, el qual és qui donarà la resposta.

MVC i les bases de dades

Els avenços tecnològics han permès un desenvolupament de servidors i de nous llenguatges que generen un millor desenvolupament de l'MVC, els quals permeten que la resposta sigui menys complicada i més directa per a l'usuari.

Les aplicacions perquè puguin tenir un bon desenvolupament, el MVC ha de tenir una base de dades que li serveixi com a suport. La base de dades, és un sistema de gestió de tota la informació de l'aplicació, sent un suport per al model, aconseguint que emmagatzemi o modifiqui tot el que necessiti.

La vista i el controlador es mantenen a l'marge de la base de dades, donat al fet que, es dóna una separació per capes, permetent que la part gràfica s'optimitzi de la millor manera, donant un enfocament visual complet de tota la informació i cada complement treballi pel seu costat.

Si et va agradar aquest article et convido a llegir els «Tipus d'arranjaments en la programació», Explica la seva completa importància en la formació de programes, sé que et va agradar.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Actualitat Bloc
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.