Forum: Rails-ES Tutorial de introducción para el concep to MVC?

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
33c1d4830ab745d030c4e2e9f0cd8f25?d=identicon&s=25 Jeremies Pérez Morata (Guest)
on 2009-01-29 22:05
(Received via mailing list)
Buenas, acabo de empezar con Rails, y me preguntaba si me podriais
aconsejar algun tutorial que explique el concepto de MVC ya que Rails se
basa en el.
Si, ya se que está explicado en muchos sitios, la wikipedia, etc. Pero
no
logro comprender los conceptos de vista, controlador y modelo. Es decir
que partes de "la web" van en cada sitio, etc.

Gracias.
Adce10d7f1dbabcdab8f525a59cec32f?d=identicon&s=25 Andrés Gutiérrez (andresgutgon)
on 2009-01-29 22:19
(Received via mailing list)
*MODELO (M): *Es la parte que se encarga de hablar con la Base de datos.
Sacar la información, validar que los datos que metamos sean del tipo
especificado. No puedo meter en un campo definido como fecha un string
o al menos no interesa. En fin validar la entrada de datos.
*VISTA(V): *es donde se muestran los datos, el frontend, lo que ven los
usuarios de la web. Ahí es donde se escribe el HTML y se usa el
javascript y
las css*
CONTROLADOR (C)*: Es el que recibe las peticiones del usuario (request)
y le
dice a los modelos lo que tienen que sacar de la BBDD y luego le dice a
las
vistas lo que tienen que poner.Tambien desde el controlador se decide
que vista ha de verse en funcion de lo que el usuario haya pedido.

Pero esto es muy básico, si no lo pillas te recomiendo que aprendas un
poco
de programacion OO, de Ruby más concretamente, porque cuando empieces a
leer
un tutorial de rails te van a empezar a hablar de metodos de clases de
vaiables de instancia,...y no vas a saber por donde te da el aire.

Una duda personal.
¿Por qué es *MVC*? ¿Por qué ese orden en el nombre
MODELO_VISTA_CONTROLADOR?
Siempre he tenido la curiosidad,...

Un saludo
El 29 de enero de 2009 20:58, Jeremies Pérez Morata
<jeremiespm@gmail.com>escribió:
33a24a134536b312b0d5334c2a9152db?d=identicon&s=25 Pablo Formoso Estrada (Guest)
on 2009-01-29 22:41
(Received via mailing list)
El 29/01/2009, a las 22:18, Andrés gutiérrez escribió:

> y luego le dice a las vistas lo que tienen que poner.Tambien desde
> ¿Por qué es MVC? ¿Por qué ese orden en el nombre
> MODELO_VISTA_CONTROLADOR? Siempre he tenido la curiosidad,...

La verdad nunca me lo había planteado y ahora que lo dices... no se
puede que sea por que Modelo y Vista son tratados desde el controlador
por eso se deja para el final... habría que preguntarle a Fowler o
algún guru de patrones a ver que opina.
7841fbf022cfe78bff34942b50c483e1?d=identicon&s=25 Ceritium (Guest)
on 2009-01-29 23:36
(Received via mailing list)
2009/1/29 Pablo Formoso Estrada <pablo@pabloformoso.com>

> CONTROLADOR (C)*: Es el que recibe las peticiones del usuario (request) y
> ¿Por qué es *MVC*? ¿Por qué ese orden en el nombre
> MODELO_VISTA_CONTROLADOR? Siempre he tenido la curiosidad,...
>
>
> La verdad nunca me lo había planteado y ahora que lo dices... no se puede
> que sea por que Modelo y Vista son tratados desde el controlador por eso se
> deja para el final... habría que preguntarle a Fowler o algún guru de
> patrones a ver que opina.
>

Probad a pronunciarlos en inglés en otro orden :P
1f2eadfb41362800ebc2cf211b91d0f7?d=identicon&s=25 javier ramirez (Guest)
on 2009-01-30 01:11
(Received via mailing list)
>> ¿Por qué es *MVC*? ¿Por qué ese orden en el nombre
>> MODELO_VISTA_CONTROLADOR? Siempre he tenido la curiosidad,...

Hasta donde sé, tiene que ver con cómo se llegó hasta MVC.

Inicialmente, para resolver problemas complejos se pensó que era buena
idea encapsular las diferentes partes de un sistema en Modelos
independientes autocontenidos que se comunicaban mediante interfaces
definidos entre ellos.

Después se vio que era interesante separar la parte pura de
implementación y la parte de presentación de datos, llegándose así a la
metáfora Modelo-Editor. Esto en el mundo de los patrones y sobre todo en
el mundo JAVA es lo que se acabó llamando Model 1.

Trabajando sobre este patrón, se vio que en la capa del Editor había dos
conceptos claramente diferenciados. El proceso de la entrada de datos, y
el proceso de la salida/presentación, planteándose la metáfora
Thing-Model-View-Editor que después acabó evolucionando para convertirse
en el patrón MVC, donde el Modelo representa una abstracción que tiene
sentido para el dominio concreto, la Vista representa las diferentes
presentaciones de los modelos, y el Controlador representa las
diferentes entradas del usuario y las acciones a realizar/presentar como
consecuencia. Por cerrarlo todo, esto es lo que en el mundo de los
patrones y sobre todo en JAVA se acabó llamando Model 2.

Conforme se fueron añadiendo los diferentes componentes a la
arquitectura, se fueron encolando las siglas.

saludos,


--
javier ramírez

..i do ruby on rails development in madrid, spain, at
http://www.aspgems.com
..you can find out more about me on http://formatinternet.wordpress.com
and http://workingwithrails.com/person/5987-javier-ramirez
Adce10d7f1dbabcdab8f525a59cec32f?d=identicon&s=25 Andrés Gutiérrez (andresgutgon)
on 2009-01-30 10:23
(Received via mailing list)
Sabia que esta pregunta os iba a molar xD
Gracias Javier por la explicación.

Jeremies, en la wikipedia te explican mucho mejor lo que yo te he
explicado
[1]

Un saludo

[1] http://es.wikipedia.org/wiki/Modelo_Vista_Controlador
El 30 de enero de 2009 1:11, javier ramirez <jramirez@aspgems.com>
escribió:
This topic is locked and can not be replied to.