No quiero vuestra basura en Android
-
Upload
antonio-nicolas-pina -
Category
Software
-
view
46 -
download
2
Transcript of 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
Índice
● Herramientas● HTTP● Base de datos● Custom views● Usa tu cabeza
Herramientas
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.
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.
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.
HTTP
Retrofit
Retrofit
Retrofit (II). Sin RxJava
Retrofit (III). Inicialización
Retrofit (IV). Inicialización (y II)
Retrofit (y V). Uso
Base de datos
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.
Utiliza un ORM
Retrofit + DBFlow
Vistas
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
Define todo lo que puedas en el XML
Usa tu cabeza
Intents
Justificación: ¿Entonces por qué Bitmap es Parcelable?
Intents
● ÚSALOS.● No los uses.● No confíes en singletons entre activities.● Considera utilizar un Navigator.
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