no quiero vuestra basura en android

Post on 15-Feb-2017

47 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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

top related