Persistencia de datos - AndroidesPixelados/gestor-partidas GitHub Wiki
Para persistir los datos de la partida, vamos a utilizar la base de datos incorporada a la mayoría de dispositivos móviles. SQLite.
La forma "estándar" de interactuar con la base de datos que propone Google nos parece aberrante, por lo que hemos mirado varias alternativas. En un principio nuestra intención es usar MyBatis, ya que cumple el propósito de ser ligero y permitir al desarrollador de trabajar más de cerca con los datos reales, en vez de complicar el asunto con ORMs más sofisticados como Hibernate. Si no podemos usar MyBatis por compatibilidad de código con la máquina virtual Dalvik, seguramente optemos por un ORM de los disponibles para Android.
Actualizado a 22 de abril de 2013: No podemos hacer funcionar MyBatis en Android, ni tampoco nos gustan los ORMs alternativos, por lo que para no retrasar el proyecto, hemos optado por una solución intermedia, antes que implementar nosotros mismos algo parecido a MyBatis: crear un componente de base de datos, almacenar las consultas como recursos String, con parametraje al estilo MyBatis, y utilizar ese componente en los DAOs. El propio sistema de recursos de Android nos permite seleccionar las consultas por un nombre en forma de constante.
La parte de modelo mapeará los datos de las tablas a entidades POJO, que son las que se pasarán entre las distintas capas de la aplicación (DAOs y Negocio, principalmente). Estas entidades pojos deberán ser capaces de proporcionar el código necesario para ser serializadas a JSON, ya que es el lenguaje escogido para comunicar los datos desde y al repositorio central.