Entradas

Mostrando entradas de agosto, 2019

Instalar Kotlin en Windows

Imagen
Kotlin es un lenguaje de programación de tipado estático introducido por la empresa JetBrians en el año 2012. El lenguaje corre en la Java Virtual Machine, lo que lo hace oficialmente soportado por Android y multiplataforma pudiendo generar código nativo o Javascript. Esto lo convierte en una buena opción para aprender un nuevo lenguaje de programación. Primero debemos debemos verificar que tengamos instalado java en una versión 1.6 o superior. Posteriormente tendremos que descargar el compilador disponible en GitHub . Después de descargarlo deberemos extraerlo en la ruta que queramos, en este caso c:\kotlinc . Para que kotlinc se encuentre disponible en todo el sistema debemos agregar la variable de entorno de la ruta del compilador. Por último debemos reiniciar el equipo. Podemos verificar la instalación con el comando kotlinc -version.

Diccionario de recursos y multilenguaje en Xamarin Forms

Imagen
Una buena práctica en nuestros proyectos es utilizar diccionarios que nos ayuden a gestionar los recursos de las aplicaciones, esto hace que nuestro código esté mejor estructurado, sea más escalable y facilite el mantenimiento del mismo. Estos nos dan grandes beneficios, por ejemplo proporcionar de manera sencilla el multilenguaje a nuestras aplicaciones o solo cambiar una vez el valor en nuestro diccionario y que todos los elementos que hagan referencia a él se vean reflejados inmediatamente. Para empezar deberíamos agregar un nuevo Resources File Podemos tener varios diccionarios por lenguaje, diferenciando los por el código del lenguaje. En caso de no agregarle un código de lenguaje ese será el diccionario por default . Una vez creados deberemos agregar los elementos con un formato de llave-valor en el que el Name será la llave y Value el valor. La llave deberá estar presente en ambos archivos. Para llamarlo en nuestro código XAML es bastante se...

Cómo crear librería Android y compartirla

Imagen
Cuando trabajamos en una tecnología detectamos patrones, controles, helpers etc. que pueden ser reutilizados por nosotros mismos en otros proyectos y así reducir tiempo de desarrollo en algo que previamente ya trabajamos o simplemente queremos compartirlo con la comunidad. Es por eso la creación de librerías es importante. Lo primero que debemos hacer es crear un nuevo proyecto en Android Studio. Una vez creado dando clic derecho al proyecto agregamos un nuevo módulo y seleccionamos el tipo Android Library El módulo tiene una estructura parecida a un proyecto android, en el que podemos crear recursos, utilizar las API de android etc. Una vez que terminemos de programar nuestra librería es necesario realicemos un Commit and Push en el repositorio GitHub que alojará el proyecto. Después del Push registramos un nuevo release en GitHub Por último ingresamos a https://jitpack.io/ e ingresamos nuestro repositorio de Git y damos clic en...

Reseña Asus Thinker Board

Imagen
Hace un par de meses me encontré en la necesidad de adquirir un equipo de computo, nada del otro mundo, solo que me permitiera realizar tareas simples de ofimática y navegación. Analizando varias opciones llegue a la conclusión de que mi mejor opción era una computadora de una sola tarjeta, por su precio, versatilidad y opciones casi infinitas de experimentación. La primer tarjeta que llego a mi mente fué la Raspberry Pi 3 model B, buscando más opciones encontré la Asus Thinkerboard que ofrecía mejor rendimiento que la Raspberry por un precio poco mayor (75 USD para ser exactos). Para prueba de esto, los resultados de desempeño del CPU. También siendo superior la Thinkerboard en el desempeño del GPU, Rendimiento y flujo de memoria y velocidad de escritura. Cuando realice la compra aún no se anunciaba la Raspberry Pi 4, que en rendimiento podría estar más equilibrado con la ThinkerBoard. Otra cosa por la que me decidí en la compra era por la compatibilidad con los compo...

Patrón ViewHolder en Android

Imagen
El uso de listas en las apps es una buena opción al momento de mostrar información, solo hay que analizar la aplicación de twitter para darnos cuenta que cada tweet es un elemento de una lista, solo por mencionar un ejemplo de las muchas aplicaciones que lo implementan. Cuando nosotros vemos una lista renderizada en Android significa que solo ha sido creada la parte que visualizamos, cuando realizamos un scroll down se van creando los nuevos elementos que se van a mostrar. Cada que creamos un nuevo elemento debemos buscar elemento de nuestro Layout al que le vamos a realizar el Bind de los datos, esto lo hacemos con el método findViewById, esta función puede parecer simple pero si tomamos en cuenta que podemos tener una lista muy grande entonces se convierte en un tema de performance que puede afectar el rendimiento de la aplicación. Para esto con el patrón ViewHolder, crearemos una clase que contenga los elementos que vamos a enlazar con los datos y en el método sobrescri...

Patrón MVP en Android

Imagen
Los patrones de diseño son estructuras de código estrictas, pretenden solucionar problemas de performance, diseño, seguridad etc. Una buena práctica para nuestros proyectos es aplicar patrones de diseño, estos no ayudan a reducir errores, tener código más limpio y mantenible entre otras cosas. Para cada tecnología hay diferentes patrones que cubren distintas necesidades.. Uno de los patrones de diseño más conocido en Android es MVP (Model-View-Presenter), que divide el código en tres capas. Model: Estructura que representa nuestros datos. View: Son las activities solo se deben encargar de actualizar los datos notificados por el Presenter y todo lo relacionado con la UI. Presenter: Tiene toda la lógica de negocio y no debe incluir ninguna librería android, se encargará de notificar a la vista cuando algo cambie. En el siguiente ejemplo en nuestro View tendremos un simple formulario para guardar los datos de una persona y un contador de personas almacenadas, es...

Construye aplicaciones nativas multiplataforma con Xamarin

Imagen
Hoy en día el desarrollo de aplicaciones móviles tiene una demanda brutal, si a esto añadimos las oportunidades que podemos explotar en el mercado móvil, el desarrollo de apps se convierte en una opción atractiva para todos los desarrolladores. Cuando empecé a programar aplicaciones nativas para Android en Java y para IOS en swift, me topé con el inconveniente de el tiempo de desarrollo se ampliaba bastante al tener que desarrollar la misma aplicación para 2 plataformas, más para equipos de desarrollo pequeños y proyectos personales, por lo que busqué alternativas que me ayudarán a solucionar este problema. La primer alternativa que probé fue React Native(en la cuál hablaré en otro blog), la segunda opción bastante obvia fué Xamarin, ya que actualmente trabajo con tecnologías Microsoft como asp net, azure etc. La proyecto Xamarin fué fundado en 2011 por los creadores del proyecto Mono y en Febrero del 2016 es comprada por Microsoft. La intención de Microsoft inicialmente e...