Upgrade to Pro — share decks privately, control downloads, hide ads and more …

No quiero vuestra basura en Android

No quiero vuestra basura en Android

Presentación sobre buenas prácticas en Android en Betabeers Murcia XIII.

423bd2335188925f7b389d36dcf7cfd1?s=128

Antonio Nicolás Pina

June 30, 2016
Tweet

More Decks by Antonio Nicolás Pina

Other Decks in Programming

Transcript

  1. No quiero vuestra basura en Android guía del autoestopista galáctico

    hacia un mejor código Antonio Nicolás Pina @ANPez Betabeers Murcia 2016
  2. Índice • Herramientas • HTTP • Base de datos •

    Custom views • Usa tu cabeza
  3. Herramientas

  4. Android Studio • Es el IDE oficial. • Además, desde

    finales de 2015, Eclipse no está soportado. • La migración “no” es muy complicada. • Gradle te simplificará mucho las cosas a largo plazo. • ES • EL • IDE • OFICIAL.
  5. Librerías • Siempre que puedas, utiliza una librería externa. •

    No copies el código de una librería en tu proyecto. Utiliza gradle. • Organiza tus dependencias en bloques. Te ayudará a mantenerlas. • Utiliza variables para las versiones.
  6. Librerías (y II) • Una dependencia no se usa, se

    adopta. ◦ Cuando importas a tu proyecto código externo, se convierte en tuyo. ◦ Úsalo como si fuera tuyo. ◦ Modifícalo como si fuera tuyo. ◦ Publícalo como si fuera tuyo. • Ten en mente siempre a NPM y left-pad. • Usa-tu-cabeza.
  7. HTTP

  8. Retrofit

  9. None
  10. Retrofit

  11. Retrofit (II). Sin RxJava

  12. Retrofit (III). Inicialización

  13. Retrofit (IV). Inicialización (y II)

  14. Retrofit (y V). Uso

  15. Base de datos

  16. None
  17. SQLite • SQLite es leeeeeeeeeeeeeeeento. No lo uses en el

    hilo de la UI. • NO utilices DatabaseOpenHelper como un God Object. • Utiliza transacciones siempre que vayas a insertar datos. • No hagas como yo hice, no intentes ser más listo que la plataforma.
  18. None
  19. Utiliza un ORM

  20. Retrofit + DBFlow

  21. Vistas

  22. None
  23. None
  24. Vistas • No crees vistas con muchos niveles de anidación,

    como en el ejemplo. • Utiliza XML siempre que sea posible. • No temas utilizar tamaños absolutos (android:layout_width=”50dp”). • Piensa en cómo mejorar la legibilidad de tu XML. • Utiliza nombres de ficheros que tengan sentido. Por ejemplo: ◦ activity_main.xml ◦ activity_list_elections.xml ◦ activity_list_elections_cell.xml
  25. Define todo lo que puedas en el XML

  26. None
  27. Usa tu cabeza

  28. None
  29. Intents Justificación: ¿Entonces por qué Bitmap es Parcelable?

  30. Intents • ÚSALOS. • No los uses. • No confíes

    en singletons entre activities. • Considera utilizar un Navigator.
  31. None
  32. Conclusiones • Párate a pensar 5 segundos antes de tomar

    una decisión. • Utiliza las herramientas que la plataforma te provee. • Busca si tu problema ya lo ha resuelto alguien y, si puedes, úsalo. • Una dependencia no se usa, se adopta. Antonio Nicolás Pina @ANPez