316 votos

¿Patrón MVC en Android?

¿Es posible implementar el patrón Model-View-Controller en Java para Android? ¿O ya se implementa a través de actividades? ¿O hay una mejor manera de implementar el patrón MVC para Android?

169voto

Pentium10 Puntos 68884

En Android no tiene MVC, pero usted tiene los siguientes:

  • Definir la interfaz de usuario en varios archivos XML mediante resolución, hardware, etc.
  • Define sus recursos en varios archivos XML de configuración regional, etc.
  • Extender clases como ListActivity, TabActivity y hacer uso de el archivo XML por inflaters.
  • Usted puede crear tantas clases como usted desea para su lógica de negocio.
  • Un montón de Utilidades han sido ya escritos para usted - DatabaseUtils, Html.

145voto

Ramon Chan Puntos 777

No es universalmente único patrón MVC. MVC es un concepto más que un sólido marco de programación. Usted puede implementar su propio MVC en cualquiera de las plataformas. Mientras usted se pega a la siguiente idea básica, que son la implementación de MVC:

  • Modelo: Qué mostrar
  • Vista: Cómo hacer
  • Controlador: Eventos, la entrada de usuario

También piense de esta manera, cuando usted programa su modelo, el modelo no necesita preocuparse acerca de la representación (o de la plataforma de código específico). El modelo diría a la vista, no me importa su representación es Android o iOS o Windows Phone, esto es lo que deben representar. La opinión podría manejar sólo las específicas de la plataforma de renderizado de código.

Esto es particularmente útil cuando se utiliza Mono para compartir el modelo con el fin de desarrollar aplicaciones multiplataforma.

32voto

Derick Bailey Puntos 37859

Las acciones, opiniones y actividades en Android son el horno en forma de trabajar con la interfaz de usuario de Android y son una implementación de un patrón modelo, vista, vista de modelo, el cual es estructuralmente similar (en la misma familia) Model-View-Controller.

A lo mejor de mi conocimiento, es imposible escapar de este modelo. Probablemente se puede hacer, pero es probable que perderían todos los beneficios que tiene el modelo existente y tendrá que reescribir su propia capa de interfaz de usuario para que funcione.

24voto

JustDanyul Puntos 6108

He escrito una respuesta a una pregunta similar aquí: que los patrones de diseño se utilizan en Android?

Si alguien debería estar interesado en darle una lectura. En resumen, creo que MVP queda mucho mejor para el desarrollo de Android.

13voto

RoflcoptrException Puntos 22111

No existe un único Patrón MVC podría obedecer. MVC sólo estados más o menos que no deben mezclarse los datos y la vista, así que por ejemplo. las vistas son responsables para la celebración de datos o clases de procesamiento de datos están afectando directamente a la vista.

Pero, sin embargo, la forma en que Android se ocupa de las clases y de los recursos, que a veces incluso se ve obligado a seguir el patrón MVC. Más complicado que en mi opinión son las actividades que son responsables a veces de la vista pero, sin embargo, actuar como un controlador en el mismo tiempo.

Si usted definir sus puntos de vista y las presentaciones de los archivos xml, la carga de sus recursos desde la carpeta res, y si usted evitar que más o menos se mezclan las cosas en su código, entonces usted está de todos modos siguiendo un patrón MVC.

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X