2011-02-23 14 views
7

Además de conocer Java, ¿qué patrones de diseño debo aprender antes de comenzar a buscar en el SDK de Android?¿Qué patrones de diseño debo aprender antes de iniciar el desarrollo de Android?

Editar: La razón por la que estoy haciendo esta pregunta, porque después de ver el SDK, que que, no estoy seguro de eso, que es en gran medida utilizando adapter y me preguntaba si puedo saber qué otros Patrones que está utilizando y puede ayudar en mi proceso de aprendizaje.

Gracias.

Respuesta

4

Uno de los mayores saltos de ir a la programación de escritorio en Java a la programación de Android es el uso de XML para diseñar y controlar diseños de interfaz. Definitivamente me tomaría un tiempo para sentirme cómodo con XML si quieres ver la programación del sistema Android. No estoy muy familiarizado con las prácticas de diseño exactas, pero el sistema modelo-vista-controlador está muy enfatizado en el desarrollo de iOS, y no me sorprendería si lo mismo ocurre con los programas de Android.

Por supuesto, el sitio de desarrolladores sería un gran lugar para buscar también por los recursos: http://developer.android.com/index.html

En este artículo me encontré con el fin de semana, mientras que en una competición de codificación también puede ayudar a que te vas por el camino correcto http://answers.oreilly.com/topic/1133-how-to-start-programming-in-android/

4

No hay necesidad de aprender ningún patrón de diseño para comenzar a usar Android SDK (conocer el patrón Observer/Listener lo ayudará a familiarizarse con el manejo de eventos en Android).

Obviamente, saber sobre ellos te ayudará a entender las intenciones detrás de algunas partes de la API.

0

Opiniones? Solo comienza a piratear. El Developers Guide puede guiarlo en el camino.

1

Los marcos de alto nivel como Android tienden a seguir un conjunto de patrones de diseño. Es casi como si estuvieras aprendiendo los patrones en el trabajo. Un gran ejemplo es el modelo de editor/suscriptor de las interfaces OnXXXListener. Si sigues el ejemplo que establece el marco, realmente solo llega a ti (en mi opinión, por supuesto). Por ejemplo, creé una vista del selector de color. Quiero que los consumidores de la Vista (Actividades) puedan recibir notificaciones como "color seleccionado". Simplemente observé cómo las clases de SDK harían esto y seguí su ejemplo (creé una interfaz OnColorSelectedListener con un método onColorSelected, expongo esta funcionalidad a través de setOnColorSelectedListener en mi selector de color, etc.).

Viniendo de un fondo .Net a Android/Java, realmente veo las diferencias. .Net tiene muchos patrones de diseño diferentes a lo largo de los cuales proporciona una muy buena guía para sus clases personalizadas. La buena noticia es que los ingenieros detrás de .Net BCL y Android SDK hicieron un gran trabajo al implementar algunos patrones de diseño muy comunes, por lo que hay excelentes ejemplos a seguir.

1

En mi opinión, puede comenzar a escribir código primero, y cuando encuentra su código feo o se encuentra escribiendo código redundante, puede buscar patrones de diseño para mejorar su diseño.

0

No veo cómo puede salir mal al separar los algoritmos de su aplicación (modelo) del código de manejo de eventos (ActivityClass) y el código de presentación (XML). Las ideas clave serían la separación de preocupaciones y el acoplamiento flexible.

JAL