Diverses vegades, en aquest i altres blogs de Linux, es publiquen llistes d'eines de programació amb una breu descripció de les seves característiques. En aquesta sèrie d'articles ens proposem anar un pas més enllà i donar-li als usuaris els conceptes bàsics que necessiten per prendre les seves pròpies decisions.
En el article anteriorsr havíem establert les diferències entre programar (el conjunt de tasques que van des de determinar les necessitats de l'usuari fins al desenvolupament d'una aplicació que la satisfaci) i la codificació (Instruir, usant un llenguatge de programació comprensible per al dispositiu sobre les tasques que han de realitzar)
Vam dir també, que la diferència entre un editor de codis i un entorn integrat de desenvolupament, és que el segon inclou eines per a totes les etapes de l'procés de programació.
Etapes per crear programes
La tasca de programar consta dels següents passos:
- Definició de el problema
- Planejament de la solució
- Codificació de el programa
- Provar el programa
- Documentar el programa
Definició de el problema
La paraula problema s'ha de prendre en sentit ampli. Potser seria més adequat canviar-la per projecte. Bàsicament hi ha un usuari que té determinades necessitats que poden satisfer a través del processament per part d'un computador de les dades disponibles.
Podem dividir aquesta etapa en dues activitats:
- Determinar els requisits
- Establir les especificacions
Determinar els requisits
Aquí és on vam decidir que és el que el programa haurà de fer
Per exemple, durant la quarantena els restaurants van veure canviar la seva activitat principal de la venda de menjar en el seu saló al lliurament a domicili. És probable llavors que hagin hagut d'actualitzar els seus sistemes de facturació. Una bona idea seria integrar el sistema de facturació a les aplicacions de comandes. Així com se suma a la facturació del dia les comandes efectivament lliurats, el sistema ha de restar aquells que per algun motiu no van poder ser-ho.
Establir les especificacions
Un cop determinats els requisits queda per decidir el que ha de fer la solució per satisfer-los.
En el nostre exemple presumim que seria una bona idea que la solució registrés automàticament les comandes fets des de les aplicacions. No obstant això, això implicaria tenir accés als seus servidors i és probable que no ho obtinguem. Per tant, el més adequat seria establir un codi en el sistema de facturació per a cadascuna i que, excepte indicació expressa dels repartidors, se les consideri lliurades.
Els programadors compten amb dues eines molt útils per ajudar en l'etapa de definició de el problema. Els diagrames de flux i l'escriptura de pseudocodi. I, com no podia ser d'altra manera, hi ha aplicacions disponibles per a Linux que ens permeten usar-les.
Els diagrames de flux són representacions pictòriques del que se suposa que el programa ha de fer i com va fer-ho. Les figures geomètriques indiquen accions i les fletxes la seva seqüència.
L'American National Standards Institute (ANSI) ha desenvolupat un conjunt estàndard de símbols de diagrames de flux. Alguns d'ells són:
rectangle: Aquest símbol s'utilitza quan mitjançant una operació manual o al dispositiu es realitza un canvi en un element o entrada. Dins el rectangle s'inclou una breu descripció de l'activitat realitzada.
diamant: Aquest símbol s'utilitza per indicar la necessitat de prendre una decisió. D'acord al que es prengui es seguirà un determinat camí, de manera que des del diamant es produeix una bifurcació en el procés. A cadascuna de les alternatives li correspon una branca amb el seu nom. En el diamant s'inclou una breu descripció de la naturalesa de la decisió.
fletxa: Connecta les activitats i decisions indicant l'ordre en què es produeixen.
cercle gran: Indica una detenció de l'procés per permetre fer una revisió o atorgar aprovació. Dins el cercle s'inclou una breu descripció.
Triangle: indica el fitxer d'una sortida.
En el proper article veurem que és el pseudocodi que programa uitilizar per escriure i per fer diagrames de flux.
Genial idea fer aquests posts per crear programes en Linux !!
Gràcias