Fa un temps, qui em va ensenyar HTML, CSS i JavaScript em va parlar de figma, una eina que serveix per representar com quedaran aplicacions o pàgines web. És una cosa que es pot fer amb una llibreta i un llapis, però aquest tipus de programari ajuda, sobretot si es vol donar una imatge més professional. Pel que fa a programació, el que es fan servir són models UML, un tipus de presentacions de què parlarem avui aquí.
Unified Modeling Language (UML) és un llenguatge de modelatge de sistemes de programari utilitzat per descriure, visualitzar, estructurar i documentar els components dun sistema de programari. S'utilitza per mostrar l'estructura d'un sistema, les interaccions i les responsabilitats, així com per representar els processos i els fluxos de dades del sistema. També es pot fer servir per representar diagrames de classes, diagrames d'objectes, diagrames de components i diagrames de desplegament.
Per què utilitzar aquest tipus d'eines UML
No m'agrada parlar de la meva vida personal, però quan ho faig tampoc és que en doni gaires detalls. Recentment se m'ha demanat que distribueixi tres «coses» i les ordeni perquè tinguin un sentit per a una hipotètica aplicació. El que jo vaig fer va ser mirar les tres llistes amb aquestes coses i començar a treballar. Quan en ficava una en algun lloc que tenia sentit, li posava una X al punt en qüestió, i seguia… El «cacau meravellós» amb què ni tan sols vaig acabar va ser de valent. Més tard, una altra persona em va ensenyar com havia pensat que s'havia de fer la tasca, començant per un disseny creat gràcies a l'UML.
Un cop vaig veure la imatge, tot va ser molt més senzill, i així ho vaig pensar. Un se sent estúpid quan pensa i fa molt i al final veu que les coses podrien haver estat molt més senzilles. I aquí no es tracta de ser més o menys capaç, sinó de entendre el que hem de fer i saber com planificar-ho. Al món del programari, aquesta planificació es fa amb eines d'UML, ja que podem representar gràficament i en temps real tot el que pensem. Si veiem alguna cosa que no quadra, podem moure les peces del puzle fins que alguna cosa quedi el més afinat possible.
Les millors opcions de programari UML, gratuïtes i disponibles per a Linux
Hi ha moltes eines d'aquest tipus de modelatge que són multiplataforma, però no tantes si volem que siguin lliures, senzillament gratuïtes i que es puguin fer servir a Linux. Potser per a molts no són les millors, però jo començaria amb dues que creen els desenvolupadors de dos dels escriptoris Linux més usats, o gent relacionada amb ells.
Umbrello
No tinc gaire clar d'on li ve el nom, però comença per «UM», com el llenguatge UML, i és el que a l'espanyol es traduiria com a «paragües» o alguna cosa així, i part dels dissenys creats amb UML tenen una estructura tipus paraigües. Sigui com sigui, és l'opció que ens ofereix KDE, i ja sabem com són els de l'equip K. Pot ser que les vostres aplicacions no siguin tan intuïtives com les dels altres, però sí que estan plenes de funcions.
A la captura anterior veiem com es pot afegir tota mena d'informació, com ara tipus de dades booleanes, decimals, cadenes…
Gàfor
L'opció del GNOME, o del cercle, és Gàfor. Segueix la filosofia del GNOME, escrita a GTK i amb un disseny més intuïtiu, i en la seva darrera versió han introduït suport per als temes clars i foscos. Si es tria el tema fosc, els diagrames també s'enfosquiran, tal com es veu a la captura anterior.
PlantUML
PlantUML és una de les millors opcions si es busca alguna cosa que estigui per a qualsevol plataforma, ja que també és present a la Google Play. És lliure i de codi obert, i és una de les eines amb millor puntuació per part de la comunitat Linux.
diagrams.net, UML des del navegador
Si no dominem res d'UML, una de les millors opcions és la que ens ofereixen a diagrames.net. No requereix registre, i crear representacions d'aquest tipus és tan senzill com ho seria si uséssim el Paint de Windows. A més, no és que estigui disponible per a Linux; és que ho està des de qualsevol sistema operatiu que tingui un navegador web.
Important: això no és només «crear dibuixos»
UML és un llenguatge de modelatge, i encara que es pugui fer servir per crear una mena de mapa per facilitar-nos les coses, en realitat cal entendre com funciona, com es fan les relacions i la resta. Si només necessitem aquesta mena de mapa o dibuix, n'hi hauria prou amb estirar Tux Paint, Dibuix o fins i tot GIMP. Això és per representar altres coses, com lorganització dun programari que tindrà classes, mètodes, etc. A més, allò creat es pot exportar a codi per afegir-lo als projectes de llenguatges com Python, Java o C++, entre molts altres.
Un cop entès, ja es poden fer servir aquests programes i aprofitar-ne tots el potencial. I per als que ja ho dominin, teniu algun suggeriment que afegiríeu a aquesta petita llista?