miércoles, 6 de marzo de 2013

Desarrollo Android: ¿Que Hardware requieres para Empezar?

¿Quieres empezar en la programación para Android?.
La verdad tienes muchas opciones en cuanto a software, en lo personal me gusta Linux para trabajar, ya llevo varios años con el y hasta ahora me va bien... :p

Sin embargo en la parte de Hardware es otro tema, todos dicen que con poca máquina es suficiente, pero en la práctica es otra cosa, lo único que tienes que invertir para desarrollar en Android es en Hardware.

Lo que recomiendo en este artículo es lo mínimo óptimo para trabajar Desarrollando Android, pues utilizar menos es perder tiempo en tratar de que tu hardware responda o que se comporte de forma inesperada.
Actualmente trabajo en dos máquinas, una con W7/Linux con Dual Core a 2.93 Ghz y 4GB de RAM y una Lenovo G475 donde me pongo a llorar mientras trato de trabajar.

Los ADV.
Los ADV (Android Device Emulator) son dispositivos Android emulados. Utilizan por los general las Instrucciones ARM, aunque puedes emular MIPS y x86, este ultimo impulsado por Intel y muy de moda ultimamente ;) .
Google usa como base el omnipresente Qemu, así que es recomendable que tengas algún Kernel con KVM o  los Virtual (Linux :p). de preferencia debes tener Android 2.3.x, 3.2. y 4.2 emulados, ya que son los más extendidos en el mercado. La gran presencia de distintas versiones Android hace la necesidad de emularlos, o de tener algún dispositivo físico para cada versión(?).

Los Dispositivos Físicos.
Es cualquier dispositivo (Tablet, smartphone, etc) que soporte el ADB o depurado por conexión física. Tener un dispositivo físico es esencial para aterrizar la usabilidad de App, NUNCA se comparará con la emulación. La emulación es para pruebas rápidas y el Dispositivo físico es como para sacar un Release candidate de tu app. Otra ventaja del Dispositivo físico es que al trabajar con ello le quitas carga a tu entorno de desarrollo, ya que no emulas nada.

La CPU.
El punto más crítico. Es requerido de al menos dos núcleos físicos con velocidad superior a 1.8 Ghz. Uno que esté dedicado a emular ARM, este núcleo practicamente queda inhabilitado para su uso. El segundo se dedicará a eclipse y sus herramientas de desarrollo. Tener un dispositivo físico conectado a ADB tal como una Tablet o Smartphone hace más rápido tu entorno de trabajo, pues le quita al sistema la emulación ARM. Cabe notar que tanto la Emulación ARM/MIPS como la x86 son igual de pesadas, aunque es lógico que por la traducción de instrucciones ARM-x86, ARM cobre más factura. Es muy recomendable (por no decir indispensable) que tu CPU tenga capacidades de Virtualización aunque sirva de poco en traducciones ARM/x86.

La RAM.
Lo recomendable para trabajar son más de 3GB en RAM, ya que entre el sistema, por su propia naturaleza, consume muchos recursos en RAM, por decir que si emulas una máquina Android 4.2 con un mínimo de 512 de RAM, estos recursos serán tomados de la máquina host. Otra vez cabe aclarar que los dispositivos físicos permiten eliminar esa necesidad. sin embargo no debemos descartar que los recursos como Java y tu navegador favorito, consumen al menos unos 750 MB de RAM.

El espacio en disco.
Bueno, en este caso debemos de estar sobrados, pues bastaría con unos 5 GB libres para trabajar con máquinas virtuales (3 tal vez, el SDK de Android, cache, y Eclipse).

El GPU con RAM Dedicada.
Tener un GPU dedicado es altamente recomendable, ya que versiones modernas de Android en emuladores pueden sacar jugo a esto. Además que un GPU le quita carga al CPU, al no tener que renderizar nada... otrora la RAM que integra la GPU.

Internet:
Haaa!!! Que es la Vida sin Internet?... no hay nada más que decir...

Bueno, hasta aqui este pequeño aporte, de novato a novato... que tengas suerte.

@pata_de_jaguar

No hay comentarios: