Mejores Practicas

Links del dia #1

Ya que de perdido paso 2 horas al día leyendo artículos técnicos sobre desarrollo de software o cosas relacionadas a sistemas, y durante los últimos 5 años la mayoría de lo que he aprendido ha sido en base a blog posts, he decido empezar una serie de posts recomendado uno o más artículo/posts que haya leído durante ese día, categorizados por tecnología o área.

No se si logre hacer esto diariamente, pero al menos el intento se hará. Aquí estan los primeros artículos interesantes que he leído el día de hoy:

SQL

Introduction to JOINS – Basic of JOINS: Escrito por Pinal Dave, un experto de SQL. Mucha gente no sabe explicar los JOINS en SQL o la diferencia exacta entre ellos, buen artículo.

Personal Improvement

Basic Presentation Skills Training – Notes from Joel Abrahamsson: Parte de mi rol de trabajo es dar algunas presentaciones técnicas, y la verdad es que la mayoría de la gente no somos buenos para esto. Buenas notas y tips de este desarrollador que está tomando un curso al respecto.

.NET / C# / ASP.NET

ALT.Next – ALT.NET es un “movimiento” o “corriente” integrado por varios desarrolladores enfocados en traer las mejores prácticas y herramientas de otras comunidades de desarrollo (Java, Ruby, Python, etc) a la comunidad de Microsoft y .NET en general. Aunque su auge más fuerte ya pasó, este artículo da una idea de hacia donde van.

Desarrollo de Sistemas en General

Metodologies at a GlanceJ.D. Meier, un Principal Program Manager de Microsoft, en el equipo de Patterns & Practices, escribe posts muy útiles constantemente. Este post es un mapa de algunas actividades/artefactos clave en varios procesos de desarrollo de software.

That’s it. Read on.

Principios de Diseño Orientado a Objetos (OOD)

Siguiendo con esas cosas que todos deberían saber…pero que muchos no comprenden totalmente:

Robert Martin, mejor conocido como Uncle Bob, explica de manera muy clara los principios básicos de diseño orientado a objetos. No solo es necesario poder recitar estos principios, sino que hay que entenderlos y poder explicar las razones de su importancia.

Precisamente de este articulo que voy a poner la liga, cito un párrafo que es muy cierto:

“All too often today’s programmers are unaware of the principles that are the foundation of the disciplines that their languages were derived around.”

Los primeros 5 principios son los famosos SOLID (que en muchas ocasiones les tocará leer el acrónimo en artículos) y son orientados a diseño de clases. Los 3 siguientes son orientados a Cohesión de librerías de código, y los últimos 3 son orientados a dependencias entre librerías de código.

Los principios SOLID:

  • Single Responsibility Principle (SRP)
  • Open-Closed Principle (OCP)
  • Liskov Substitution Principle (LSP)
  • Interface Segregation Principle (ISP)
  • Dependency Inversion Principle (DIP)

Incluso cada uno de los principios está claramente explicado y disponible para bajarse en PDF por separado. La siguiente es la liga:

The principles of Object Oriented Design, by UncleBob

Usar solamente string.Format para unir strings y variables

Los desarrolladores que apenas vayan empezando, acostúmbrense a usar el método string.Format en lugar de estar concatenando strings y variables!!

Incluso varios desarrolladores avanzados siguen concatenando en lugar de usar string.Format(), lo cual definitivamente hace mucho más difícil que los desarrolladores principiantes se acostumbren a seguir estándares y Mejores Practicas.

La sintaxis para usarlo es de lo más simple, y además hace la línea de código muchísimo más legible, por ejemplo:

labelMensaje.Text = "El usuario " + userName + " realizo el pedido " + numPedido + " el dia " + DateTime.Now.ToString();

Odio ver ese tipo de líneas de código, cuando se puede tener algo tan sencillo como esto:

labelMensaje.Text = string.Format("El usuario {0} realizo el pedido {1} el dia {2}", userName, numPedido, DateTime.Now);

Si la legibilidad no es suficiente mejora, también hay que notar que escribir todo el mensaje en un solo string evita posibles errores de falta de espacios entre palabras y variables, lo cual es muy común que suceda cuando se concatenan variables, es muy fácil que se coman el espacio al terminar un string antes de concatenar, o al iniciar el string después de haber concatenado.

About SCRUM

En mi primer trabajo usabamos mucho el SCRUM, y siempre se me hizo una practica muy buena, a la cual como principal ventaja le veia no el hecho de que todos estuvieran enterados del estatus de todos, sino que evita mucho el re-trabajo, en funcion de que al platicar un problema con el cual llevabamos un dia o algunas horas batallando, algun desarrollador que estaba en la junta de SCRUM explicaba que ya habia enfrentado ese mismo problema, y como lo habia resuelto.

En el proyecto donde usamos SCRUM en esa compañia, probablemente eramos entre 20 y 30 desarrolladores los que integrabamos el equipo, mas administradores de proyecto, por lo cual definitivamente era muy util tener estas juntas.

Todo esto viene a que encontre este site dedicado al SCRUM, llamado About Scrum. Tiene pocos articulos y un par de videos, pero el contenido es de calidad.

Les recomiendo que lo visiten si quieren saber mas sobre esta practica.

 Scroll to top