Como veteranos desarrolladores de aplicaciones móviles, con experiencia en muchas de las plataformas mas populares de la pasada década, sabemos que la plataforma Android es una de las mas accesibles para los nuevos programadores. Herramientas de desarrollo baratas, una comunidad de desarrollo muy amigable, un lenguaje de desarrollo comúnmente conocido (Java), el desarrollo de aplicaciones Android nunca ha sido mas sencillo. Dicho esto, sigo viendo un gran numero de errores que los programadores, que son relativamente nuevos en Android, siguen cometiendo una vez tras otra. Las 10 meteduras de pata mas comunes son:

1. No se lee la documentación de Android

El sitio web de Android para desarrollo (Android Developer Website) existe para ayudarnos. Enormes cantidades de documentación pueden ser descargadas junto al SDK e incluso lo tenemos todo disponible online (formato preferido por muchos por que esta en constante actualización). La documentación es mucho mas que un Javadoc del API. Incluye muchas guías, tutoriales, vídeos, formación y otro material de ayuda para la creación de aplicaciones Android..

El site de formación sobre Android (Android Training) es la ultima novedad relacionada, mediante la organización de tutoriales en clases y lecciones para guiarnos en la resolución de un determinado problema o en la implementación de funcionalidades particulares.

2. No nos familiarizamos con las herramientas Android

El SDK de Android es mucho mas que una librería que se usa para compilar nuestra aplicación para hacerla correr en nuestros teléfonos Android; el SDK tiene por lo menos una docena de herramientas que nos pueden ayudar en la construcción de las aplicaciones. Algunas de estas herramientas nos pueden ayudar en el diseño de los gráficos y layouts de nuestras aplicaciones. Otras por el contrario son herramientas de linea de comandos, que proporcionan acceso al emulador y al hardware del dispositivo de una forma sencilla y ademas habilitan características de script. Por ultimo también existen herramientas que nos van a permitir realizar un tuneado/perfilado fino del desarrollo.

Podéis encontrar toda la información sobre estas herramientas (Android tools) en la documentación del SDK(Android SDK documentation).

3. No solemos pedir ayuda de la comunidad Android

La comunidad Android es bastante grande y además, por lo poco que he podido ya ver, es bastante amigable. Cuando tengas una duda que no tenga respuesta en la documentación del SDK de Android, te recomiendo que te pases por la página StackOverflow.com, en la que puedes encontrar una etiqueta especifica para desarrollo Android. Otro recurso muy interesante es la lista de correo de Google y otros sitios con tutoriales tales como Android Development Center o en español http://www.sgoliver.net. Dentro de este mismo site teneis una etiqueta Android en la que ire agregando todos aquellos enlaces que considere de interés, y ademas en la página de desarrollo de Invisible Friend, al final de la misma, tambien tenéis los que voy usando en el propio desarrollo.

4. Somos perezosos debido a que las aplicaciones Android son Java

Java es una lenguaje de programación de alto nivel que se ejecuta en una máquina virtual que logra hacer que el desarrollo sea lo mas sencillo posible, pero esto no nos da ningún derecho a convertirnos en desarrolladores perezosos. Los estándar de programación son guías que todavía debemos seguir y defender, esto es lo que diferencia a un desarrollador profesional de un pelanas sin formación de consultora. La mayor parte de los dispositivos Android tienen una capacidad de proceso y de almacenamiento local limitadas (no como mi S2 que es la puta máquina) comparados con los ordenadores tradicionales, por lo tanto, practicas de programación incorrectas o ineficientes tienen mucho mayor impacto sobre el rendimiento general y también sobre la experiencia de usuario.

5. Asunción de que los desarrollos móviles pueden realizarse con poco Dinero/Recursos

Pantalla pequeña != Proyecto pequeño (como ejemplo podeis echar un vistazo al desarrollo de [intlink id="2433" type="page"]IF [/intlink]en este mismo site). Muchos nuevos desarrolladores para móviles (y, desafortunadamente, sus jefes) tienen la errónea impresión de que los proyectos de desarrollo para móviles pueden ser realizados mas o menos un fin de semana y por estudiantes hasta las trancas de café (sip, yo también lo he visto por desgracia. Desde entonces tengo pesadillas). No obstante, la realidad es que la mayor parte de los proyectos fructuosos requieren especificaciones funcionales, programación de tareas, seguimiento de errores, ingenieros y diseñadores dedicados, aseguramiento de la calidad y planes de versiones y mantenimiento, al igual que los proyectos de desarrollo de software tradicional.

6. Uso de prototipos como inicio del desarrollo de aplicaciones Android

Demasiadas veces hemos visto una aplicación que básicamente era un hola mundo con un montón de código de ejemplo pegado en lugares al azar. No existe ningún tipo de previsión (requerimientos) ni tampoco se hace ningún tipo de diseño en el código, tampoco existe en muchas ocasiones un fichero de proyecto.

Tomémonos nuestro tiempo para aprender y experimentar con la plataforma Android en un primer momento. Más tarde, sentémonos con el equipo y pensemos en cómo realmente queremos empezar a construir y a empezar desde cero. Al final, ahorraremos tiempo y frustraciones innecesarias y obtendremos código de calidad mas sencillo de mantener en futuras versiones.

7. Integración con el Sistema Operativo lamentable o pobre en el mejor de los casos

La plataforma Android proporciona muchas funcionalidades para que los desarrolladores integren sus trabajos con el propio sistema e incluso con otras aplicaciones. Debemos aprovechar las ventajas de dichas funcionalidades tales como widgets de escritorio, Content Providers, intent handling, y otras muchas (no traduzco por que me queda como el culo). El usar estas características de la plataforma es lo que diferenciará nuestra aplicación de otra mas genérica.

8. Errónea definición de los detalles de configuración de la aplicación

El fichero de configuración de la aplicación (Android Manifest file) es el eje central de la misma, el problema es que la información que contiene es en muchas ocasiones errónea, incluso en aplicaciones ya publicadas. Muchos desarrolladores no especifican de forma correcta las características del dispositivo soportado.

Otro error bastante común en el fichero de configuración de la aplicación es el registro de permisos innecesarios. Estos errores pueden producir que la aplicación se publique incorrectamente en Android Market, lo que resulte en puntuaciones bajas por parte de los usuarios y otras muchas cosas.

9. Desarrollando una aplicacion iPhone para Android

Seguro que lo has visto. Yo lo he visto. Te descargas la mega aplicación para tu flamante nuevo terminal, y resulta que la aplicación se comporta y luce exactamente igual que una aplicación típica de iOS (iKaka). No es divertido para nadie y menos para mi, que no lo puedo ni ver. La plataforma Android tiene su propio look&feel y su propio comportamiento, que ademas es el que los usuarios Android esperamos — recordemos que hemos preferido comprar un dispositivo Android en primer lugar en vez de un iKaka. Estas aplicaciones son de forma frecuente las que ademas no están integradas en el sistema, no usan widgets, no usan proveedores de contenidos, etc, en definitiva no usan las características que provee la propia plataforma, y que hacen que la aplicación quede mas fuera de lugar si cabe.

10. Falta de mantenimiento después de la publicación

¿Te has parado a mirar en tu terminal cuantas de las aplicaciones que tienes instaladas nunca han sufrido ninguna actualización, mientras otras son actualizadas de forma constante? Para lograr que las aplicaciones mantengan su relevancia, los desarrolladores deben permanecer al tanto de las actualizaciones de las mismas, me explico. La plataforma Android se encuentra madurando a un ritmo constante. Debemos prestar especial atención a las comunicaciones que recibimos del Market Android pues muy frecuentemente avisan de los cambios necesarios que los desarrolladores deben acometer en sus aplicaciones. Sin esas actualizaciones, algunas aplicaciones pueden quedar descolgadas. Asegúrate de que tu aplicación no es una de ellas.

En consecuencia, si somos conscientes, lo podremos evitar….

La mejor forma de evitar cometer un error es ser conscientes del peligro de hacerlo en primer lugar. Aquí he mostrado los primeros 10 errores mas comunes que he visto en el poco tiempo que llevo con este asunto. Seguro que esta simple alerta te vacunan a ti y a tu equipo contra estos errores absurdos.

 

Un saludo a todos.

You must be logged in to post a comment.