Prácticas para mejorar la calidad del código

herramientasHay muchísimas prácticas que podemos adoptar para mejorar la calidad de nuestro código. ¿Por dónde empezar? ¿Existe una lista única y completa? En este artículo veremos un pequeño listado de buenas prácticas, que nos pueden ayudar a comenzar ese largo camino que implica trabajar con más profesionalismo, mejorando los productos que desarrollamos.

Leer más...

¿Por qué un Enterprise Service Bus (ESB)?

mundo-en-redSe ha hablado mucho en los últimos años sobre los ESB, los web services y el fenómeno SOA en general. Gartner pronosticó que SOA sería usado en más del 80% de los procesos de negocio y aplicaciones críticas que se desarrollen en 2010. Estamos en 2010 y mi percepción es que, al menos en España, aún no hemos llegado a esos porcentajes en lo que se refiere al despliegue de soluciones SOA. Lo que sí es cierto sin embargo es que el ascenso de SOA y los ESB como solución tecnológica parece imparable en la mayoría de organizaciones y sectores.

Leer más...

¿Sos inteligente o tonto?

tablero-de-ajedrez¿Cuál es la diferencia entre ser inteligente o ser tonto? Creo que podría resumirse en dos cosas: qué tan lejos en el futuro podés pensar, y qué tan rápido podés generar este pensamiento. Cuando alguien juega ajedrez, o poker, sus habilidades están determinadas por cuántas movidas puede pensar por adelantado. Cuánta historia pueden recordar, y así planificar el siguiente movimiento.

En el desarrollo de software, ¿qué tan lejos podés mirar? ¿Estás usando prácticas destructivas porque estás muy ocupado "terminando el trabajo"? ¿Estás ignorando buenas prácticas que podrían ahorrarte tiempo?

Leer más...

Las tres C de la arquitectura

arquitecturaEn nuestro trabajo con clientes a menudo tenemos discusiones sobre la función de la arquitectura y el rol de los arquitectos. Estas discusiones ocurren porque la arquitectura no contribuye de forma visible a los objetivos organizacionales, y por lo tanto se la percibe como una molestia para los proyectos. Muchas discusiones se origina por la falta de entendimiento sobre el rol y el lugar de los arquitectos dentro de la organización. Hemos definido tres objetivos de la función de la arquitectura en organizaciones de TI: Las Tres C de la Arquitectura. Estas son: Conexión, Cohesión y Cambiabilidad. Al tomar estos conceptos como principios básicos de la arquitectura logramos enfocarnos en qué hacer y cómo posicionar a la arquitectura dentro de la organización.

Leer más...

Integración Continua para mantener el proyecto en rumbo

engranajes-en-cajaHoy en día tenemos muchas herramientas que dicen limpiar de forma mágica nuestro código. Mueven, modifican, emprolijan y mágicamente resuelven todos nuestros problemas. Lamentablemente, como la mayoría ya sabe, escribir buen código lleva trabajo. No existen herramientas mágicas que puedan salvarnos (y no importa lo que nos digan los vendedores), pero si hay una herramienta que funciona muy bien para ayudarnos a mantenernos en forma.

Leer más...

Lista de comprobación para hacer TDD

semaforoEl Desarrollo Guiado por Pruebas (o TDD) se suele describir como un ciclo de rojo-verde-refactor, que se repite continuamente, para ir agregando nuevas características o arreglar bugs. La siguiente lista de comprobación que comparte Giorgio Sironi contiene un grupo de preguntas que deberíamos hacernos a nosotros mismos mientras avanzamos por las fases de TDD, para no olvidarnos de la esencia de esta técnica.

Leer más...

Estándares de código... ¿para qué?

aplicacion-xmlComo desarrolladores, nuestro entregable es el código fuente, es lo que producimos, y por lo tanto debemos hacer que se vea bien. Pero, ¿qué significa "bien"? ¿Cómo debería verse? Podríamos armar debates interminables sobre el tema, y los resultados nos desilusionarían. No existe algo como el Mejor Estilo De Codificación.

Leer más...

El concepto de "terminado terminado"

todo-con-tarea-terminada¿No estaría bueno si, una vez que termináramos una historia, nunca tuviéramos que volver a agarrarla? Esta es la idea detrás del "terminado terminado". Una historia no es un desparramo de código sin integrar, sin probar. La historia debe estar lista para ser desplegada.

Leer más...

¡Dejen de reportar errores! (y escriban pruebas automatizadas)

bugLos sistemas de gestión de errores (o "bug trackers") son cuellos de botella, y perpetúan el continuo idea y vuelta entre testers y desarrolladores, además de requerir de mucha documentación para mantenerlos.

Alberto Gutierrez comparte una interesante reflexión sobre cómo crear el mejor sistema de gestión de errores: ¡dejar de reportar errores y empezar a escribir pruebas automatizadas!

Leer más...

¿Qué es el código testeable?

codigo malicioso¿Qué es el código "testeable"? ¿Cómo saber si mi código es testable o no? En los equipos ágiles se habla mucho sobre asegurarse de construir código testable, pero ¿qué significa exactamente? John Boal nos ayuda a definir este concepto con más precisión.

Leer más...

La ley y el principio de Shalloway

DuplicadoDando vueltas por ahí me encuentro con un divertido post en el blog de Alan Shalloway, en donde el autor desvaría brevemente sobre el problema de la redundancia en el código, llegando así a dos simpáticos postulados, nombrados en su propio honor. Veamos...

Leer más...

Seguinos en Facebook.

Publicá tus artículos.

Publicar Convertite en redactor para Dos Ideas y compartí tus conocimientos a una comunidad que sigue creciendo!
Quiero publicar

Los Comentarios.

Hanna Taller
Measure indicators of your commercial performance with mobile applications android and ios using ric...
Alinamike
Great step you have define it is really helpful for all developer making a website
Dai
Es broma?
busquen el significado de cinismo.
esta el antiguo significado y el moderno,
el moderno...
Yan
Hola:
Unas duda, Drools ¿tiene una interfaz gráfica para poder generar y editar reglas? o todo se t...
Maxi
Gracias por la info, esta bien explicado y funciono como solución a mi problema que tenia con el mét...

Inspiración.

"Si tú tienes una manzana y yo tengo una manzana e intercambiamos las manzanas, entonces tanto tú como yo seguiremos teniendo una manzana cada uno. Pero si tú tienes una idea y yo tengo una idea, e intercambiamos las ideas, entonces ambos tendremos dos ideas"

Bernard Shaw