2013-03-31

97/5 cosas que todos los programadores deberían saber


La belleza está en la simplicidad

Hay una cita que creo que es particularmente bueno para todos los desarrolladores de software para conocer y mantenerse cerca de sus corazones:
Belleza de estilo y armonía, gracia y buen ritmo depende de la sencillez -. Platón
En una frase Creo que esto resume los valores que nosotros, como desarrolladores de software deberían aspirar.
Hay una serie de cosas que nos esforzamos en nuestro código:
  • Legibilidad
  • Mantenibilidad
  • La velocidad de desarrollo
  • La cualidad elusiva de la belleza
Platón nos está diciendo que el factor facilitador de todas estas cualidades es la simplicidad.
¿Qué es el código bella? Esto es potencialmente una cuestión muy subjetiva. La percepción de la belleza depende en gran medida de fondo individual, al igual que gran parte de nuestra percepción de cualquier cosa depende de nuestro fondo. Las personas educadas en las artes tienen una percepción diferente de (o por lo menos acercamiento a) la belleza de la gente educada en las ciencias. Artes mayores tienden a acercarse a la belleza de software mediante la comparación de software a las obras de arte, mientras que comandantes de la ciencia tienden a hablar acerca de la simetría y la proporción áurea, tratando de reducir las cosas a las fórmulas. En mi experiencia, la sencillez es la base de la mayor parte de los argumentos de ambas partes.
Piensa en el código fuente que usted ha estudiado. Si usted no ha pasado tiempo estudiando código de otras personas, deje de leer esto ahora mismo y encontrar algo de código fuente abierto para estudiar. ¡En serio! Lo digo en serio! Ir buscar en la web desde hace algún código en el idioma de su elección, escrito por algún experto muy conocido, reconocido.
Has vuelto? Bueno. ¿Dónde estábamos? Ah sí ... He encontrado que el código que resuena en mí y que me parece hermosa tiene un número de características en común. El principal de ellos es la simplicidad. Me parece que no importa cuán complejo sea el total de la aplicación o sistema, las partes individuales tienen que ser simples. Objetos simples con una sola responsabilidad que contiene igualmente simples, los métodos centrados con nombres descriptivos. Algunas personas piensan que la idea de tener métodos cortos de cinco a diez líneas de código es extrema, y ​​algunas lenguas hacen que sea muy difícil hacer esto, pero creo que tal brevedad es un objetivo deseable, no obstante.
La conclusión es que el código es precioso sencillo código. Cada parte individual se mantiene simple con responsabilidades simples y relaciones simples con las otras partes del sistema. Esta es la forma en que podemos mantener nuestro sistema mantenible en el tiempo, con la limpieza, el código simple, comprobable, manteniendo constante la velocidad de desarrollo de alta a lo largo de la vida útil del sistema.
La belleza se nace y se encuentra en la simplicidad.