Javi Moreno Apuntes Fichas de Lectura Archivo Sobre mi
Blog Logo

Javi


3 minutos de lectura

Después de un gran parón en mis hábitos nocturnos de desarrollo he vuelto a las andadas. Hace un par de semanas me dio por mirar las valoraciones de TasaTuCoche y me quede muy sorprendido al ver que todavía tenia buenos comentarios pese a no haber sido actualizada desde hace más de tres años. Se que la aplicación se sigue descargando porque todos los meses recibo un pago de Apple por un importe más o menos constante y durante todo este tiempo he ido reflexionando, a cuentagotas, sobre como evolucionarla ya que se ha quedado bastante atrás, principalmente en el diseño (todavía no esta adaptada a iOS 7).

El caso es que al ver los comentarios tan positivos y aprovechando que vuelvo a tener una vida relativamente normal (al menos tan normal como la tenía allá por 2011 o 2012) me he decido a crear la versión 2.0 de TasaTuCoche.

El primer cambio está en el nombre: TasaTuCoche pasará a llamarse TasaCoches. De esta forma la aplicación estará alineada con tasacoches.net, una web que hice en 2013 y que tiene el mismo origen de información. La web todavía tiene bastantes fallos que espero ir solucionando poco a poco.

Como han pasado bastantes años desde la última actualización se me han ido acumulando los cambios tecnologicos: adaptación a iOS 7, storyboards, autolayout, swift... ¿qué tendrá TasaCoches? pues todo, para que nos vamos a andar con remilgos.

TasaCoches está completamente escrita desde 0. Bueno, desde 0 no. El modelo y la base de datos es la misma, las funcionalidades presentes en la aplicación serán, de partida, las mismas lo que me permite avanzar relativamente rápido al tener un buen documento de requisitos. En lugar de estar en Objective-C la estoy programando toda en Swift. En este punto he de decir que me he quedado gratamente sorprendido con el nuevo lenguaje de programación de Apple. No me siento muy incomodo con el lenguaje a pesar de las interrogaciones, las admiraciones y los continuos consejos del compilador (que me recuerda a Clippy, todo sea dicho). Cuando programé TasaTuCoche no tenía mucha experiencia ni en orientación a objetos ni en el lenguaje de programación. Leía mucho y tenía en la cabeza muchas ideas de reutilización y construcción de clases sofisticadas que me hicieran la vida, en el futuro, más fácil. El resultado es un código caótico a más no poder. En la nueva versión estoy siendo mucho más práctico. Seguro que muchos lo verán y dirán: "yo no repitiría este código aquí y buscaría una forma de forma de reusarlo de forma generica...". Mi realidad es que quizá no vuelva a tocar esté código hasta dentro de un mes. Entonces no tendré tiempo de preguntarme a mi yo de hace un mes en que estaba pensando cuando escondía tanto la funcionalidad.

Otra diferencia es el uso de Storyboards. La versión 1.x no usa ni storyboards ni xibs, toda la navegación se orquesta mediante programación. El uso de Stoyboards en este punto de la película (finales de 2015) me está permitiendo usar todas las ventajas de Autolayout para que la aplicación sea multidispositivo así como incluir alguna característica de forma más sencilla. Aquí también he de destacar que me está resultando todo mucho más sencillo que en 2013, cuando empecé una versión inacabada de esta aplicación con Storyboards y Autolayout.

El caso es que estoy bastante contento con el resultado: me lo estoy pasando bien programando en Swift, no me estoy encontrando grandes problemas en el desarrollo y lo que voy haciendo funciona como espero... Esto último es mucho más de lo que sentía con Objective-C. ;-)

Mi idea es tener una versión estable para testing en una o dos semanas, como mucho. Voy a colgar un formulario de Google para que los que estéis interesados en echarme una mano con las pruebas os apuntéis. Tampoco esperéis gran cosa, es una aplicación bastante sencilla.