martes, 30 de junio de 2015

Save Words

Hace como unas seis semanas empecé un curso de desarrollo para Android, realizado por Barcelona Android Student Club. Para obtener el certificado tenías que crear una aplicación para Android aplicando y cumpliendo todo lo aprendido. En este post quiero explicar que es lo que he hecho y como lo he hecho. Pero antes de hacerlo voy a dar un poco más de información sobre el curso realizado.

El curso

El curso está orientado a programadores con experiencia que deseen empezar a programar para Android. Al final del curso aprenderás a crear una aplicación de Android con una buena base, siguiendo los patrones de diseño de Android y con una buena experiencia de usuario.

Gran parte del material esta sacado de Udacity y la página de referencia de Android. Además el curso está patrocinado por Google, actual desarrollador del sistema operativo.

La aplicación

Como he mencionado anteriormente para obtener el certificado es imprescindible crear una aplicación para Android que cumpla con todos los conocimientos impartidos en el curso. En mi caso me decidí a solucionar un problema que tenía des de hacía tiempo.

Problema

El problema que quise solucionar es el de aprender palabras en un idioma concreto. Por ejemplo, yo cuando leo o escucho una palabra en inglés que no sé su significado busco su traducción. Durante unos días puedo retener su significado, pero si no utilizo esa palabra durante un tiempo entonces se me acaba olvidando.

Solución

Para solucionar este problema pienso que la única forma de hacerlo es practicar. Por eso mi propuesta es que el usuario pueda añadir las palabras nuevas y su traducción en la aplicación y entonces este pueda realizar un examen o control. En el examen o control se le mostrará la palabra a traducir y cuatro posibles traducciones, donde solo una es correcta. Al seleccionar una traducción se le mostrará un aviso de si ha acertado o fallado, y en caso de que haya fallado cual era la solución correcta.

El algoritmo de selección intenta seleccionar las palabras más difíciles para el usuario, por ejemplo las palabras que menos han salido en los exámenes o las que más ha fallado el usuario.

Aplicación

El desarrollo de la aplicación coincidió con los exámenes finales de la facultad, por lo tanto tuve que organizarme bien. He intentado simplificarme las cosas por lo tanto la funcionalidad y el diseño de la aplicación son bastante básicos, pero todo el código y la base se puede ampliar fácilmente para que la aplicación sea mejor. A finales de agosto quiero publicar una versión a la Play Store con una versión más trabajada.

A continuación dejo algunas imágenes de la aplicación:

Vista principal

Esto es lo que el usuario ve al abrir la aplicación. Hay dos botones “Add Word” que sirve para añadir una nueva palabra y su traducción y “Start Exam” que sirve para realizar un nuevo examen. Justo debajo se pueden ver las últimas palabras añadidas con el número de aciertos y de fallos, esto se ve si se hace clic en “Words”. Si el usuario selecciona la opción “Exams” puede ver los últimos exámenes realizados con el número de aciertos y fallos. En una tablet de siete pulgadas o más se ven las palabras y los examenes para provechar mejor el espacio.

Vista principal en el móvil

Vista principal en la tablet

Examen

En el caso de la vista del examen se ve la palabra que se quiere traducir y cuatro posibles traducciones, donde solo una es la correcta. Al seleccionar una traducción se muestra un mensaje que dice al usuario si la palabra es correcta o en caso contrario cual era la solución.
Vista examen en el móvil

Vista examen en la tableta