Empezar en Android con buen pie



Documentos relacionados
Proceso de cifrado. La fortaleza de los algoritmos es que son públicos, es decir, se conocen todas las transformaciones que se aplican al documento

Curso Internet Básico - Aularagon

Curso de Android con Java

Implantar Microsoft Software Updates Service (SUS)

Curso de Spring Framework

Diseño de aplicaciones móviles seguras en Android.

MANUAL COPIAS DE SEGURIDAD

En la siguiente imagen se muestra la pantalla principal del portafolio de un usuario que será utilizado para explicar cada aspecto del mismo.

Historial de Versiones: Velneo vversion. Funcionamiento. Repositorio de versiones. Funcionalidades del Historial de Versiones. Bloquear.

Tutorial del administrador de la web del departamento

Figura 1. Pantalla principal de la aplicación. Bits de inteligencia. Nos lleva al espacio dedicado a este tema.

NORMATIVA DE USO DE LA NUEVA OFICINA ELECTRÓNICA

Un pequeñísimo tutorial para explicar cómo darse de alta al MEJOR SISTEMA de compartición, backup... en la web.

Monitoreo remoto de tus venta: A traves de internet puedes monitorear las ventas de tu negocio en tiempo real.

Ciclo de vida y Metodologías para el desarrollo de SW Definición de la metodología

ARQUITECTURA DE DISTRIBUCIÓN DE DATOS

Vamos a relacionar los aspectos más importantes a la hora de determinar cuál es el banco más adecuado para nosotros:

GUIA PARA GENERAR PROSPECTOS Y VENTAS EN WEB

Guía rápida del alumno. Versión 6.2

11/06/2011. Alumno: José Antonio García Andreu Tutor: Jairo Sarrias Guzman

BLOQUE 0: LA ADMINISTRACIÓN GENERAL DEL ESTADO

Tras obtener la información necesaria es preciso identificar los problemas

PAGOS DOMICILIADOS - GESTIÓN DE PAGOS PAGOS DOMICILIADOS Y GESTIÓN DE PAGOS

Introducción al Proceso de Pruebas.

Microsoft Lync 2010: Introducción al nuevo software de mensajería instantánea y conferencias

ESOFT 3 Nice Screen Scraper. Héctor López Sacanell hlopez1@alumnes.udl.cat

BASE DE DATOS DE ENTIDADES CON EXPERIENCIA EN LA REALIZACIÓN DE ESTUDIOS DE ANALISIS Y DETECCION DE NECESIDADES EN EMPRESAS ( ENTIDADES EADN )

MANUAL DE USUARIO DE LA APLICACIÓN DE ACREDITACION DE ACTIVIDADES DE FORMACION CONTINUADA. Perfil Entidad Proveedora

Crear una Activity en Android. Paso por paso

Utilidades para el control de stock de los artículos

MANUAL DE FACTURACIÓN

Una solución a la medida de tus necesidades

Los objetivos por los que otros han participado en el Programa TANDEM son:

Análisis y diseño del sistema CAPÍTULO 3

Una App para Facebook

Mantenimiento Limpieza

Internet como herramientas de comunicación: El correo electrónico

Resumen Ejecutivo. Febrero de 2014

Arquitectura de Aplicaciones

Presentamos ONYX Servicios Profesionales

Tarifa. Opciones de Búsqueda. A través de este buscador podrás encontrar fácilmente los ítems dados de alta en tu tarifa.

Redes de alta velocidad. William Stallings Traducido por Horacio Goetendía Bonilla

La crisis económica obliga a las organizaciones, a ejecutar estrategias de promoción efectivas, con la menor inversión posible.

Introducción a la extensión de scripting en gvsig 2.0

Para realizar este análisis y conocer qué cookies usa tu web, si lo haces tú mismo, puedes:

La Verdad Sobre Ser Un Coach y el Coaching"

Desarrolladores: Christian David Merino Cruz. Bryan Alexis Peraza Navas. Erik Alberto Renderos Morales.

LISTA DE MEJORAS PARA MEJORAR LOS RESULTADOS DE LA EVALUACIÓN

Instrucciones LOPD -ONline

EXPERTOS EN DESARROLLO WEB

Bloque de Experiencias YO Y MI COLEGIO

SUBIR FOTOGRAFÍAS A INTERNET

PLANTILLAS EN MICROSOFT WORD

Demo. TDD desde Cero. Acceptance Test Driven Development.

Qué. rol tienes. en clase? en casa? con los amigos?

MANUAL DE USUARIO PLAN GENÉRICO DE AUTOCONTROL EN HOSTELERÍA ASOCIACIÓN DE EMPRESARIOS DE HOSTELERÍA DE GIPUZKOA 1

Servicio de Informática

MANUAL DE USUARIO APLICACIÓN SYSACTIVOS

Una computadora de cualquier forma que se vea tiene dos tipos de componentes: El Hardware y el Software.

PLATAFORMA PASEN Escuela TIC 2.0 NOTA INFORMATIVA A PADRES Y MADRES

Combinar correspondencia (I)

FORMULACIÓN Y PLANEACIÓN DE LA PROPUESTA DE SOLUCIÓN

Gestor de Contenidos CMS. Prof: Ing. Henrry Servitá

Persuades o disuades? 3 claves para vender salud laboral

25 preguntas típicas en una entrevista de Trabajo

VIII Seminario Iberoamericano de Seguridad en Tecnologías de Información y MORGAN: ORGANIZADOR DE MUESTRAS DE PROGRAMAS MALIGNOS

1 Quiénes somos? 2 Comencemos

ACUERDO DE COMPROMISO PARA USUARIOS DE LA SECCIÓN D DEL CENTRO OCUPACIONAL I DE LA FUNDACIÓN ADEMO.

Gestión de Empresas Visual e Interactiva E.R.P.

Menos importe. Más artículos

Proceso de desarrollo del software modelo en cascada

Figura 4.6: Prototipo de la pantalla de inicio.

Puedo dejar de pagar la cuota del mes en que me jubile y el anterior?

Migrar una organización Microsoft Exchange 2003 a Microsoft Exchange 2007

EL MARKETING RELACIONAL Y NUEVAS TENDENCIAS DE MARKETING

Manual del Alumno de la plataforma de e-learning.

EL PROGRAMA DE PRESENTACIONES IMPRESS (I)

9. Comercio electrónico

NORMA 34.14(SEPA) 05/11/2013

INSTALACIÓN Y REGISTRO

Dirección de Sistemas de Información Departamento CERES

GUÍA DE USUARIO: GOOGLE DRIVE

Guía de uso del Cloud Datacenter de acens

CURSOS PRÁCTICOS SEDEN SEDEN

OPERACIÓN DE INICIO DE CURSO EN EL PROGRAMA ESCUELA

PORTAL DE CLIENTE MANUAL DE FUNCIONAMIENTO PARA EL CLIENTE TAX. Manual de funcionamiento para CLIENTE TAX cliente

Paso 1 Define los objetivos.

INFORMATICA Y REDES, SA DE CV.

Sistema Integrado de Control de Presencia Dactilar

Pasos en esta pantalla se te mostrará un directorio de pagos, del que deberás de seleccionar el rubro de tu interés. En este caso será Cable.

Desarrollo de un Sistema de Gestión de Proyectos mediante el framework GWT

Tutorial DC++ Usarlo es muy sencillo y configurarlo también, aunque tiene algunos trucos importentes.

Implantar el iphone y el ipad Apple Configurator

Manual de Funcionamiento de Cursos On Line Acceso a los cursos desde la Plataforma de Formación ASPY PREVENCIÓN

Sistema de detección de incendios. Sergio Menéndez Muñiz Consultor: Jordi Bécares Ferrés Fecha: Junio 2012

Transcripción:

Empezar en Android con buen pie Obture CODE Cristina Folgueral Gutiérrez @lady_vanilla Carlos Álvarez Novoa @husky

Consejos para hacer aplicaciones en Android

Los ejemplos son ejemplos

Separa cada aspecto de tu aplicación

Separa cada aspecto de tu aplicación Por qué? Reutilización, fácil de mantener (para ti y para otros), solidez frente a cambios

Separa cada aspecto de tu aplicación Capas Las que necesites Nuestras tres: Vistas, Entidades+Modelos y Datos

Separa cada aspecto de tu aplicación Datos De donde obtenemos la información Comunicación con web services, bases de datos o ficheros

Separa cada aspecto de tu aplicación Entidades + Modelos Entidades: clases de negocio de tu aplicación Modelos: usan las Entidades para responder las necesidades del usuario Aquí tiene que ir la lógica de tu aplicación

Separa cada aspecto de tu aplicación Vista Parte visual Obligatoriamente Activities y tus clases vista o Fragments

Separa cada aspecto de tu aplicación Retocar y volver a empezar Cada proyecto es una oportunidad para utilizar y mejorar tu arquitectura

Activity pequeña, modelo grande

Activity pequeña, modelo grande Muy poco código en tu Activity Solicitar información a los modelos y pintar Cualquier decisión de negocio la debe tomar el modelo

Activity pequeña, modelo grande Parte tu vista Divide una pantalla en tantas vistas como necesites Enfoca esa división a reutilización

Comunicación entre capas que permita asincronismo

Comunicación entre capas asíncrona Por qué? Quien pide los datos no tiene por qué saber que tiene que esperar un tiempo por ellos

Comunicación entre capas asíncrona Cómo lo podemos hacer? Hay un montón de formas. A nosotros nos gusta utilizar el bus de eventos y/o funciones de retrollamada (patrón delegado)

Comunicación entre capas asíncrona Bus de eventos Comunica tus módulos de forma eficiente manteniéndolos desacomplados

Comunicación entre capas asíncrona Retrollamadas El que hace la petición recibe la respuesta en otro método definido por una interfaz.

Mantén los 60 fps

Mantén los 60 fps Hilo principal Encargado de manejar eventos del sistema, refresco de pantalla, detección de gestos, etc Cambiar vista fuera del hilo principal => Excepción

Mantén los 60 fps Déjalo libre Petición a la capa de datos, parseo de información, ordenación: en otro hilo

Mantén los 60 fps Opciones AsyncTask: Cola de hilos para ejecutar tareas Threads Los hilos hay que pararlos manualmente

Caché, si lo tienes, no lo pidas

Caché, si lo tienes, no lo pidas Ahorra datos y tiempo Una buena política de caché permitirá ahorrar datos y mejorar la experiencia de usuario

Caché, si lo tienes, no lo pidas Datos frescos VS experiencia de usuario Factor delicado: caducidad de la caché Dos tipos de cancelaciones: manual (por acción de usuario) y automática (al cabo de un tiempo)

Tu paquete Utils

Tu paquete Utils Tu caja de herramientas Los trozos de código que se encarguen de tareas repetitivas (formatear fechas, cadenas, etc) conviértelos en métodos estáticos Reutilízalos en todas tus aplicaciones

Hacia dónde nos queremos dirigir

Hacia dónde nos queremos dirigir Organizar mejor la capa de vista Implementar patrones que permitan reutilizar partes de vista y la desacoplen más del resto de capas MVVM, MVP

Hacia dónde nos queremos dirigir Testing Test automatizados en favor de test de aceptación manuales

Hacia dónde nos queremos dirigir Refactoring Introducir la refactorización como parte importante en el proceso de desarrollo de forma continua

Lee

Lee Artículos de referencia Clean architecture en general: http://bit.ly/1gi1qtw Clean architecture en Android: http://bit.ly/1zsgtrb Patrón repositorio: http://bit.ly/1m1hx1w

Gracias! Obture CODE Cristina Folgueral Gutiérrez @lady_vanilla Carlos Álvarez Novoa @husky