No quiero vuestra basura en Android

32
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

Transcript of No quiero vuestra basura en Android

Page 1: No quiero vuestra basura en Android

No quiero vuestra basura en Android

guía del autoestopista galáctico hacia un mejor código

Antonio Nicolás Pina @ANPez

BetabeersMurcia 2016

Page 2: No quiero vuestra basura en Android

Índice

● Herramientas● HTTP● Base de datos● Custom views● Usa tu cabeza

Page 3: No quiero vuestra basura en Android

Herramientas

Page 4: No quiero vuestra basura en Android

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.

Page 5: No quiero vuestra basura en Android

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.

Page 6: No quiero vuestra basura en Android

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.

Page 7: No quiero vuestra basura en Android

HTTP

Page 8: No quiero vuestra basura en Android

Retrofit

Page 9: No quiero vuestra basura en Android
Page 10: No quiero vuestra basura en Android

Retrofit

Page 11: No quiero vuestra basura en Android

Retrofit (II). Sin RxJava

Page 12: No quiero vuestra basura en Android

Retrofit (III). Inicialización

Page 13: No quiero vuestra basura en Android

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

Page 14: No quiero vuestra basura en Android

Retrofit (y V). Uso

Page 15: No quiero vuestra basura en Android

Base de datos

Page 16: No quiero vuestra basura en Android
Page 17: No quiero vuestra basura en Android

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.

Page 18: No quiero vuestra basura en Android
Page 19: No quiero vuestra basura en Android

Utiliza un ORM

Page 20: No quiero vuestra basura en Android

Retrofit + DBFlow

Page 21: No quiero vuestra basura en Android

Vistas

Page 22: No quiero vuestra basura en Android
Page 23: No quiero vuestra basura en Android
Page 24: No quiero vuestra basura en Android

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

Page 25: No quiero vuestra basura en Android

Define todo lo que puedas en el XML

Page 26: No quiero vuestra basura en Android
Page 27: No quiero vuestra basura en Android

Usa tu cabeza

Page 28: No quiero vuestra basura en Android
Page 29: No quiero vuestra basura en Android

Intents

Justificación: ¿Entonces por qué Bitmap es Parcelable?

Page 30: No quiero vuestra basura en Android

Intents

● ÚSALOS.● No los uses.● No confíes en singletons entre activities.● Considera utilizar un Navigator.

Page 31: No quiero vuestra basura en Android
Page 32: No quiero vuestra basura en Android

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