La revolución de los dispositivos inteligentes ha sido uno de los mayores movimientos de la industria tecnológica en la última década. Se trata de un mercado que no ha parado de crecer y que cuenta con miles de millones de usuarios en todo el mundo.
Hoy en día casi todo el mundo tiene un smartphone o tablet y tenemos decenas de aplicaciones instaladas, cada una para solucionar un problema del mundo real. Pero ¿alguna vez te has preguntado cómo se hace una aplicación? ¿Qué es lo que hace falta?
Incluso te estés preguntando si el crear aplicaciones es una posibilidad para tu futuro ¿Qué es lo que necesito saber para realizar una aplicación? ¿Puedo trabajar como programador de aplicaciones Android?
Ya sea para satisfacer tu curiosidad o porque tengas simple interés en conocer como una persona pasa desde cero hasta poder crear una aplicación, este artículo es para ti, donde os contaré cómo está siendo mi experiencia creando una aplicación real.
Es importante considerar que se trata de una experiencia personal. Además de escribir en El Androide Libre soy estudiante de ingeniería informática, una carrera donde hemos aprendido mucho de programación y teoría, pero en la que puedes llegar al final sin haber creado una aplicación por ti mismo. Dicen que la universidad solo te prepara para lo básico y que una vez terminas es cuando realmente comienza el camino. Y en esta serie de artículos es donde voy a narrar mis aventuras en el camino para poder crear mi primera aplicación. Hoy vamos con algunos de los conceptos básicos. ¿Qué necesito para comenzar a programar aplicaciones?
Lo más básico para crear aplicaciones: Un ordenador
Para programar necesitas sí o sí un ordenador. ¿Qué clase de ordenador? ¿Necesita unas especificaciones concretas para poder programar o me vale cualquier equipo que tenga ya en casa?
Lo primero que tenemos que plantearnos es si tenemos un ordenador que cumpla con las especificaciones mínimas necesarias para ejecutar Android Studio. Según la propia página web de Android Developers, esto es lo que necesita tu ordenador como mínimo:
- Sistema operativo:
- Windows 7 / 8 / 10 de 32 / 64 bits.
- Mac OS 10.10 en adelante.
- Linux con entorno de escritorio Gnome o KDE.
- Memoria RAM: 4 GB mínimo, 8 GB como recomendado.
- Disco duro: 2 GB de espacio libre como mínimo. 4 GB de espacio libre como recomendado.
- Pantalla con resolución mínima de 1200 x 800.
Prácticamente cualquier ordenador de los últimos 10 años está capacitado para funcionar con Android Studio. Tienes que considerar, eso si, que el entorno de desarrollo es pesado, por lo que si tu ordenador cumple con los requisitos mínimos puede que sea el único programa que debas tener abierto para que funcione bien. También es importante considerar que según la magnitud del proyecto requeriremos un equipo más avanzado.
En mi caso personal utilizo dos equipos para programar: el primero es un Macbook Pro de 2013, y el segundo un Lenovo Thinkpad T440p de 2014 con KDE Neon (una distribución Linux que recomiendo completamente), ambos tienen disco duro SSD y 8 GB de memoria RAM y mueven el entorno de desarrollo con solvencia. También programé un tiempo en un HP Pavillion de 2011 sin problemas.
Una idea que tengas ganas de hacer
Lo más importante para empezar a hacer una aplicación, más allá de un ordenador es tener una idea de lo que quieres hacer. Tienes que crear algo que utilizarías en tu día a día, algo que será un gran incentivo para mantenerte firme en el camino con la motivación.
¿Pero cómo consigues una idea para hacer una aplicación? En mi opinión es un proceso repetitivo en dos pasos:
- Vive tu día a día cotidiano: ¿Existe alguna tarea que te resulte molesta o complicada?
- ¿Puedo solucionar el problema con una app? una vez te encuentres un problema, piensa si la solución se puede hacer con programación.
No es necesario que sea una aplicación que cambie tu vida. De hecho, si nunca has hecho una aplicación lo idóneo es que pienses en algo mientras más simple, mejor. Si piensas en crear una aplicación sofisticada sin experiencia probablemente abandones a mitad del camino.
El paso más difícil para hacer aplicaciones es crear la primera. Una vez la termines tendrás mucha más experiencia, conocimiento y motivación para crear las siguientes. Esto no pasa sólo con programación, sino en cualquier actividad desafiante.
En mi caso particular la idea en la que estoy trabajando es una aplicación que solucione mi problema con las listas de la compra
Saber Inglés (y contar con un buen traductor)
A día de hoy entender Inglés es fundamental. Existen contenidos en castellano, pero la mayor parte de los recursos están en Inglés. No hace falta ser un catedrático en Ingles, ni siquiera saber hablar Inglés. Sólo tener una comprensión lectora aceptable, ya que el inglés técnico es asequible de entender.
Tener un traductor o diccionario es clave. Si hay algo que no entiendas pásalo al traductor y poco a poco verás como cada vez tienes menos dudas.
Necesitas saber programar, pero ¿por dónde debería comenzar? ¿tengo que pagar un curso?
Esta es la mayor barrera para comenzar a programar, para programar aplicaciones necesitas saber programar. No existe ningún atajo mágico a día de hoy para que una aplicación se cree sin estos conocimientos, por lo que es importante echar horas. ¿Y por dónde debería empezar si no sé nada?
- Este curso gratuito de Google nos introduce a la programación.
- Además del cursillo, Google tiene una aplicación móvil llamada Grasshopper. Esta aplicación enseña de forma visual y sencilla a superar los primeros pasos del mundo de la programación y está diseñada para que los niños puedan aprender a programar. Más asequible, imposible.
- En este curso gratuito de Udemy puedes aprender de forma simple los conceptos imprescindibles de la programación en Pseudocódigo.
Ver vídeo
Este vídeo lo explica realmente bien.
¿Qué es eso del pseudocódigo? en si mismo, no es un lenguaje de programación, sino una especie de metalenguaje común a casi cualquier lenguaje de programación. Sabiendo hacer pseudocódigo sabrás entender la lógica de programación, algo que hará que puedas aprender cualquier lenguaje de programación en cuestión de días.
¿Y eso de los lenguajes de programación? es la forma en la que damos órdenes a las aplicaciones. A día de hoy, si tienes que aprender un lenguaje de programación que te meta directamente en el mercado de las aplicaciones, estos deberían ser los principales, según el tipo de aplicaciones que debas saber.
- Javascript: a día de hoy es el lenguaje más versátil, ya que con él puedes escribir aplicaciones para móviles, así como aplicaciones para la web.
- Kotlin: si quieres especializarte creando aplicaciones exclusivas para Android, este es el lenguaje que deberías dominar, ya que es un lenguaje de primer nivel para Google y uno de los que tiene mayor proyección a futuro.
- Swift: si quieres especializarte en el desarrollo de aplicaciones para iOS, Swift es el lenguaje que deberías aprender. Si tienes un iPhone o iPad descarga Swift Playgrounds, una aplicación oficial de Apple para aprender a programar de forma extremadamente fácil.
- Dart: Dart es una apuesta personal para mi proyecto. Se trata de un lenguaje de programación creado por la propia Google, el cual es el motor de Flutter, el entorno de desarrollo de Google para hacer aplicaciones de Android y iPhone con el mismo código. Es un entorno muy joven e inmaduro, pero con una gran proyección de futuro.
¿Necesito saber de diseño gráfico?
No. De hecho, yo no sé absolutamente nada de diseño gráfico.
Esto hasta hace unos años era un gran problema, porque muchos programadores eran incapaces de crear aplicaciones que además de ser funcionales fuesen bonitas. A día de hoy, basta con seguir las guías de estilo de Material Design para poder crear una aplicación que tenga un gran diseño sin tener ni idea.
La planificación, organización y paciencia son tus mejores armas para crear aplicaciones
Sabiendo todos estos datos ¿es difícil programar? pues con mi experiencia podría decir que no. Cualquiera puede programar, y como muestra de ellos aplicaciones como Grasshopper o Swift Playgrounds son capaces de enseñar a cualquier persona los conceptos clave.
¿Es duro aprender a programar y crear aplicaciones? depende más de tu paciencia y los objetivos que te propongas.
Imagina que ves un rascacielos y te propones subir hasta el último piso por las escaleras. Así de primeras parece muy duro, pero ¿y si en lugar de proponerte subirlo al completo te propones subir la mitad? ¿Y si rebajas tu propósito a subir una planta?
Sigue siendo demasiado. Antes de subir una planta proponte subir un solo escalón y continúa cada día subiendo cada escalón. Poco a poco y con el tiempo verás como vas subiendo al rascacielos, y aquello que parecía tan inmenso no es más que una sucesión continua de pequeños desafíos.
La entrada ¿Cómo crear aplicaciones para Android? todo lo que necesitas para comenzar aparece primero en El Androide Libre.