android

Páginas: 7 (1732 palabras) Publicado: 21 de enero de 2014
CINCO PECADOS MORTALES Y CINCO VIRTUDES GLORIOSAS A LA HORA DE PROGRAMAR EN ANDROID

Me encontré una presentación hecha por Reto Meier para el Google I/O 10 con cinco malas  y  cinco buenas prácticas a la hora de programar en Android. Él la llamó “Los cinco pecados mortales y las cinco virtudes gloriosas”. Me parece genial compartirla con ustedes; aunque es una presentación un poco vieja meparece que tiene mucha validez y resalta varios aspectos cruciales al momento de programar en Android.

Los pecados mortales

1. Pereza: programar nuestros fragmentos o actividades sin que nos  importe el rendimiento que puedan tener. Recordemos que, aunque los teléfonos avanzan cada vez más en velocidad de procesamiento, no todas las personas  tienen móviles de alta gama ni pueden compraruno. Entonces ¿cuáles reglas seguir para aumentar el rendimiento de nuestra aplicación? Algunos tips:

   * No hagas trabajo innecesario.    
   * No asignes memoria si lo puedes evadir.    
   * Optimiza juiciosamente.    
   * Evita crear objetos.    
   * Usa métodos nativos.    
   * Declara constantes como “final”.    
   * Evita getter y setters internos.    
   * Evita floats y enums.   
   * Evita diálogos y actividades modales.    
   * Usa hilos y tareas asíncronas en los servicios.    
   * Recuerda que los usuarios perciben lags mayores de 100 - 200 ms.

Puedes crear una tarea asíncrona así:
protected void doInBackground(Void… arg0) {
// Haz la tarea necesaria
publishProgress();
return null;
}
protected void onProgressUpdate(Void… arg0) {
}protected void onPostExecute(Void result) {
}

Y recuerda siempre: "Sé rápido. Sé adaptativo".

2. Gula: ¿recuerdas la primera mala práctica? Bueno, diría que esta también va ligada a ella. Consiste en hacer aplicaciones que usan demasiados recursos del sistema para funcionar, lo que lleva a que este empiece a operar de una manera poco cómoda para el usuario. Reto nos sugiere algunas buenas ymalas prácticas al respecto:

No hacer
  * Evita usar wakelocks (obligar al procesador a estar activo y a la pantalla a estar prendida).    
  * No actualices widgets muy seguido.   
  * No actualices la posición del usuario de manera innecesaria.    
  * No uses servicios para tratar de anular los que tenga el usuario o el sistema.
Hacer
   * Usa receptores y alarmas, no servicios e hilos.  
   * Deja que el usuario administre las actualizaciones.    
   * Minimiza la contención de recursos.

3. Hostilidad: citaré la frase que aparece en la presentación ya que me parece que describe a perfección este punto: "no pelees con tus usuarios … hacer lo que el usuario espera con respecto a la navegación es tremendamente importante para su satisfacción general".

4. Arrogancia:Estos son los tips que nos da Reto para evitar este pecado, creo que no hay necesidad de explicarlos porque son suficientemente claros.

  * No luches contra el sistema.    
  * No uses APIs sin documentación.    
  * Haz que tu aplicación se comporte de forma consistente con el sistema.    
  * Respeta el modelo del ciclo de vida de las aplicaciones.

5. Discriminación: lo había dicho en laprimera mala práctica, no todos los usuarios tienen móviles de alta gama o modernos, por lo que deberíamos crear nuestras aplicaciones de tal forma que podamos abarcarlos  todos, o al menos una gran cantidad de móviles en el mercado. ¿Cómo dirigirse a este objetivo?

  * No hagas supuestos de tamaños de pantalla o resolución, piensa en el diseño adaptativo  (responsive design).   
  * Nuncahagas hard-code.    
  * Usa diseños relativos (relative layouts) y píxeles independientes del dispositivo.    
  * Optimiza los assets para las diferentes resoluciones.    
  * Programa para las versiones de Android más utilizadas, se debería pensar en soportar desde 2.2+.





Las cinco virtudes gloriosas

1. Belleza: contrata a un diseñador. Recuerda que, en la mayoría de los casos,...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • android
  • Andro
  • android
  • Android
  • Android
  • Android
  • Android
  • Android

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS