Archivos de la categoría ‘Enlaces’

Feliz año a todos!!!

Quisiera compartir con vosotros un enlace al apartado de descargas de mi página web.

Allí podéis descargar gratuitamente tres juegos de escritorio y una aplicación para dispositivos Android:

  • VBAhorcado: clásico juego del ahorcado, programado íntegramente en Visual Basic .NET
  • JMastermind: emulador del clásico Matermind, programado íntegramente en Java.
  • Gana un millón: emulador del concurso de televisión “Atrapa un millón”, programado íntegramente en Visual Basic .NET
  • Aplicación “Numbering System Converter” para dispositivos Android: se trata de una calculadora que permite convertir cifras entre distintos sistemas numéricos (decimal, binario, octal y hexadecimal). La principal diferencia que presenta frente a otras muchas aplicaciones similares existentes en Google Play, es que permite operar con cifras extremadamente grandes sin ningún tipo de error, bug o desbordamiento. Muy útil para desarrolladores.

Espero que os gusten.

Enlace:

Descargas

Un saludo.

A colación del artículo anterior sobre TDD, he creído oportuno dedicar uno a esta metodología ágil híbrida.

La adopción de una metodología de desarrollo en una empresa de software es fundamental para el buen funcionamiento y rendimiento en el futuro.

Las eternas discusiones que surgen sobre qué o cuál modelo adoptar, como única panacea posible para el éxito, son, y siempre han sido, algo que no tiene mucho sentido. Discutir si hay que elegir entre esta o aquella metodología como si fueran antagonistas, y abanderarlas como verdad absoluta, carece de toda lógica desde el momento en que es la metodología misma la que debe adaptarse a las condiciones y características de la empresa y no al contrario. No se trata de elegir una sola manera, o quizás sí dependiendo de las necesidades de la empresa, sino de estudiar las diferentes posibilidades que nos ofrecen las distintas metodologías para aprovechar lo mejor de ellas y aplicarlas a la empresa. Es posible, ¿por qué no?, que la empresa, por su estructura o necesidades, deba asumir una metodología predictiva en vez de una ágil, a pesar de todo aquello que se ha escrito y dicho en su contra.

De la idea del estudio y colaboración entre lo mejor de distintas metodologías surge el término Scrumban, de la simbiosis entre dos metodologías denominadas ágiles: Scrum y Kanban. Aunque lo cierto es que, más que una metodología, Kanban es un marco de trabajo basado en señalizaciones. Lo mejor de ambos dan como resultado una metodología robusta y adaptable.
Scrum, hoy día, y desde hace algunos años, se erige como un buen comienzo de adaptabilidad para una empresa que desee encaminarse hacia el desarrollo ágil. Kanban, más adaptativo incluso que Scrum, se acopla perfectamente a su marco de trabajo ofreciendo un sistema de seguimiento que le asiste durante el desarrollo del product backlog y los sprints.

Para aquellos que sean neófitos en la materia, así como para otros que deseen profundizar en estas dos metodologías, os dejo unos enlaces a unos PDF interesantísimos que cubrirán todas las expectativas. En ellos, entre otras cosas, se estudia la crisis del sofware en 1968, el reinado de las metodologías predictivas, la aparición del famoso artículo en 1986 de Hirotaka Takeuchi y Ikujiro Nonaka “New New Product Development Game”, donde se ponía en duda la eficacia de las metodologías predictivas y se resaltaban los resultados de las incipientes metodologías ágiles; los pros y contras de Scrum y Kanban, la eficaz colaboración de ambos en Scrumban…etc.
Espero que los disfrutéis:

Flexibilidad con Scrum
Scrum Manager
Kanban vs Scrum

Hacer software no es una tarea sencilla. Si añadimos la necesidad de ser productivos en dicho proceso, además de escribir código reutilizable y robusto, la dificultad aumenta considerablemente.
Para enfrentarnos al problema contamos con muchas y variadas herramientas y técnicas al margen, claro está, del lenguaje de programación que vayamos a utilizar que, por supuesto, deberemos dominar sin lugar a dudas.
Una de esas técnicas de desarrollo, que ya lleva en funcionamiento muchos años con éxito, es el TDD o Test-Driven development.
Consiste en realizar los test de pruebas antes de implementar el código. Habitualmente dichas pruebas suelen realizarse después de la codificación, pero TDD nos ofrece una alternativa. Esto que puede parecer una pérdida de tiempo para muchos, no lo es si tenemos en cuenta el ahorro que nos supondrá tener un código fiable desde el principio. Esto nos evitará tener que volver a revisarlo posteriormente una y otra vez en busca de errores, bugs y demás.
Esta técnica, que ha sido aceptada en países como Estados Unidos, es casi una herejía para muchas empresas o jefes de proyecto que ven en ello un retraso en el desarrollo inmediato del software que ha solicitado el cliente. Es cierto que se requiere de una buena inversión de tiempo y recursos a corto plazo, pero nos reportará una garantía que será válida a largo plazo. Es decir, lo que hoy parece retrasarnos mañana será un avance en tiempo y costos.
Para introducirnos en este interesante tema os dejo el enlace a un libro gratuito escrito por Carlos Blé Jurado, titulado Diseño ágil con TDD.
Os aseguro que se trata de un libro fascinante que se lee apasionadamente. La explicación es llana y sencilla, acompañada a partir de la mitad del libro de un proyecto desde cero, donde se pueden ir siguiendo los pasos poco a poco para ir comprendiendo a fondo cómo debemos aplicar esta técnica, porque no se trata de hacerlo maquinalmente sino de aprehenderlo y hacerlo parte de nuestro trabajo, como una filosofía propia a la hora de desarrollar.
En definitiva un libro necesario e imprescindible.
Descargar PDF “Diseño ágil con TDD”
Descargar PDF (versión para lectores electrónicos) “Diseño ágil con TDD”

Android Kit Kat 4.4 ya está aquí

Publicado: febrero 7, PM en Enlaces, Noticias
Etiquetas:,

Como lo prometido es deuda vamos a ver, resumidas, las novedades que nos trae esta nueva versión del pequeño, pero enorme, robot verde.
Lo nuevo que nos aporta Kit Kat 4.4 no solo es a nivel de experiencia de usuario sino, por supuesto, también a nivel de desarrollo. Todo está preparado para dar un salto cualitativo en las funcionalidades de los dispositivos que ya disfrutan, a fecha de hoy, de sus excelencias, como pueden ser el Samsung Galaxy s4, HTC One, Nexus 4, 7 o 10 entre otros muchos que estarán disponibles en un breve lapso de tiempo.
Sin más veamos cuáles son algunas de esas novedades:

1) LAUNCHER RENOVADO: Google Now se incorpora a la pantalla de inicio totalmente mejorada y con nuevas opciones. Los iconos son ahora algo más grandes y algunos han sido rediseñados para que se vean mejor. La barra de notificaciones es ahora transparente lo que permite que el fondo de pantalla se extienda por toda la superficie dando lugar a una estética mejorada.

2) MEJORAS INTERNAS: La multitarea es ahora más veloz que nunca. Las aplicaciones en segundo plano consumen menos memoria. Con Chromium WebView se facilita a los desarrolladores una manera más sencilla de generar y mostrar contenido basado en internet. Se incluye más soporte HTML5, CSS3 y JavaScript. El sistema ha sido diseñado para adaptarse perfectamente tanto a dispositivos de gama baja como de gama alta. Todas las aplicaciones y funcionalidades de la versión han sido rediseñadas para lograrlo. Nuevo soporte NFC. Sistema inteligente de reproducción de video adaptativa que alterna entre resoluciones en base a la conexión WIFI para conseguir la mejor opción de visionado.

3) LA NUBE: Función Cloud Print incorporada. Google drive permite el acceso a sus carpetas a través de aplicaciones como QuickOffice.

4) MAIL: Actualizado con nuevos gestos y opciones para gestionar los correos.

5) APP TELÉFONO: Se identifica a los números de las llamadas recibidas y realizadas comparándolas con los de las empresas. De esta forma se pueden evitar llamadas comerciales no deseadas. Importación y exportación de contactos desde la tarjeta SD o desde una cuenta en la nube. Los contactos pueden ser ordenados en grupos y categorías.

6) APP MENSAJES SMS: Desaparece. Ahora los mensajes se envían a través de Google Now.

7) GOOGLE+ FOTOS: Nueva aplicación para editar, cargar y compartir imágenes. Dispone de un potente paquete de herramientas de edición de imágenes como por ejemplo poder crear una película uniendo varias fotos. Igualmente están disponibles un sinfín de filtros.

8) HDR+ FOTOS: Trabaja junto a la App Google+ Fotos y permite tomar imágenes espectaculares. Se accede a través de la App Cámara y usa una opción al estilo ráfaga que reconstruye y elige el mejor disparo de una amplia gama de imágenes.

9) INTERFAZ INTELIGENTE: Opción pantalla completa al leer un libro o ver un vídeo. Se muestra la portada del álbum o la película que se esté viendo como pantalla de bloqueo mientras se hace streaming a otro dispositivo. Nueva App de descargas con nuevas funcionalidades que facilitan el seguimiento. Notificaciones renovadas más atractivas y que se pueden usar con otras apps.

Bueno, hecho este repaso a lo más importante solo me queda dejar un enlace a las novedades que presenta esta versión desde el punto de vista del desarrollador:
Developer Android Kit Kat
Espero que os haya gustado y que fomente vuestro interés por este nuevo paso en la carrera del gigante Android.

Decorator Patrón de diseño

Decorator Patrón de diseño

Los patrones de diseño son esenciales en el desarrollo de software. La famosa banda de los cuatro formada por Erich Gamma, Richard Helm, Ralph Johnson y John Vlissides es toda una referencia en el campo del diseño orientado a objetos. No solo basta con el conocimiento de los patrones sino saber cómo y cuándo emplearlos. Como sabemos, no existen para complicar la vida del programador, sino todo lo contrario. Se intenta garantizar con ellos la efectividad en la resolución de problemas comunes en todo desarrollo de software complejo así como la reusabilidad de los mismos en futuros proyectos. Es evidente que se trata de un tema con enjundia que conviene siempre tener a mano. Por ello voy a dejaros un enlace al canal de youtube de Alexys Lozada, un muchacho que ha realizado un excelente trabajo sobre patrones de diseño y que muestra, con sus videotutoriales de ejemplo, nada menos que 19 de ellos usando Java como lenguaje de programación.
Además, en el canal podréis encontraros, siempre dentro del mundo de Java, con otros temas tan interesantes como la recursividad, manejo de excepciones y estructura de datos.
Imprescindible.
http://www.youtube.com/user/Alexyslozada
Los códigos de los videotutoriales pueden obtenerse desde aquí:
https://github.com/alexyslozada/CursoPatronesDiseno