Arquitectura de software
La arquitectura de un programa no es más que su organización interna, los componentes en los que se divide y la relación entre ellos. Si buscas bibliografía sobre el tema verás centenares de libros que hablan de la arquitectura de software como una evolución de la artesanía a la ingeniería en el campo del software. No leerás en este manual nada sobre esto, porque sigo pensando que la programación es una labor artesanal, como el trabajo de los mejores ingenieros. Y como tal tiene que tener un componente estético muy importante. Valorar y entrenar el arte de programar es una parte importante de la profesionalización de la actividad.
Podemos escribir decenas de páginas sobre requisitos, diseño arquitectónico, diseño detallado, etc. Pero nada de esto podrá despertar el gusanillo de los hackers originales, los apasionados por la tecnología, que hacían de la mejora continua su propia forma de vida.
En este capítulo te ofrecemos una posible forma de organizar tu código. Ni es la única posible ni posiblemente sea la mejor. Cumple con su función de equilibrar la eficiencia con la simplicidad y la facilidad de uso por programadores principiantes. Pero si tienes sugerencias sobre posibles mejoras no te las guardes, envianos realimentación para mejorar las próximas ediciones.