Parece que empieza a ser costumbre que, cuando se me ocurre algo sobre lo que postear sea sobre programación. ¿Será degeneración telemática? Quién sabe. Lo que si que es cierto es que jamás habría imaginado que podría estar escribiendo sobre un tema del que hace unos años unos profesores
siniestros de mi etapa en la ETSIT quitaron toda mis ganas de aprender más sobre una materia que empecé a desarrollar, por pura curiosidad, a los 12 años. Desde entonces he perdido ténica y velocidad de pensamiento, pero gracias a la caña que
Rafilla me dio durante el curso pasado he conseguido recuperar, más o menos, el nivel aceptable que ya poseía y que había dejado anclado en un rincón bajo llave de mi corazón. El caso, es que ahora disfruto, cosa que no me imaginé que pasaría, pero el caso es que lo ha hecho. Ha pasado. Ha vuelto...
Pero en fin, que este post no es sobre lo que ha vuelto o se ha perdido para siempre, sino de una nueva técnica de programación orientada a objetos (
OOP,
Object Oriented Programming) como es
UML (
Unified Modeling Language o Lenguaje unificado de modelado) que estoy aprendiendo y que trata de ayudarte a establecer una jerarquí de clases y métodos para la resolución de problemas de manera visual, haciendo así, más amigable la programación.
No se trata, no, de desarrollar programas sin programar, estilo Dreamweaver para desarrollo web, sino más bien sirve para facilitarte la declaración de métodos y objetos que te van a hacer falta de cara a resolver el problema que se te plantea de una manera más sencilla, evitándote así, posibles incompatibilidades con mecanismos de herencia y polimorfismo propios de la
OOP.
En fin, que así como la realización de diagramas de flujo para la programación imperativa (como, por ejemplo, cuando utilizamos lenguaje C) facilita enormemente el desarrollo posterior de la aplicación, UML trata de facilitarnos la programación cuando usamos objetos y más cuando vamos a usar objetos que nosotros no hemos implementado, ayudándonos a abstraernos de ciertos problemas que se dan en la programación imperativa y centrarnos más en el diseño de la aplicación, que será donde realmente tardemos a la hora de desarrollar programas.
Por último, y como curiosidad, dos programas que te ayudan a la realización de esos diagramas, uno para Güindous (por si acaso me cobran por nombrar la poderosa empresa de Redmon) y otro para Linux.
- StarUML, para windows (enlace aquí)
- Umbrello, para Linux (con apt-get install umbrello debería bastar, si no fuera así, el enlace es éste)
Ya me diréis, aquellos, por supuesto, que os dedicáis al desarrollo de aplicaciones, si debo conocer algo más alguna aplicación más interesante que las mencionadas.
Saludos sabatinos con sabor a remodelado de casa, servicios y otros enseres...
FoN