“Que pesada é a profe!” é o que debe pensar o alumnado cando insisto unha e outra vez en que se debe traballar con orde e limpeza cando se realizan traballos prácticos de calquera tipo. “Eu xa me entendo así” ou “que máis dá se funciona” son respostas habituais, e non hai maneira de convencelos. Algo de caso me fan cando digo que iso baixa a nota, pero iso non consegue mudar o procedemento, senón que só conduce a se pasen traballo extra “pasando a limpo” cando preferiría que ese tempo o dedicasen a outro tipo de traballos.
Con este artigo intentarei ilustrar como non se deben facer as cousas. Sexa o que sexa o que se faga (un programa informático, unha instalación eléctrica, unha montaxe electrónica, un circuíto pneumático, etc.) o código, montaxe ou instalación creada debe ser suficientemente intelixible, fácil de manter e de modificar, non unicamente pola persoa que a creou, senón tamén por calquera outra que se achegue a ela para revisala, manipulala, actualizala ou mantela.
Programas informáticos
Hai moitos estándares e normas obxectivas que se deben considerar, pero para empezar, unha das máis básicas é estruturar os programas de xeito que se podan diferenciar os diferentes bloques e instrucións a simple vista.
Comparade os seguintes programas. No primeiro podemos observar a estrutura a simple vista, e no segundo custa bastante máis, verdade? Os nomes das variables tamén deben ser significativos e non debe haber código repetido ou redundante.
void loop() { estado=digitalRead(pulsador); if (estado == 1) { for (int a=0;a<5;a++) { for(int b=0;b<3;b++) { digitalWrite(led1,HIGH); delay(100); digitalWrite(led1,LOW); delay(100); } digitalWrite(led2,HIGH); delay(200); digitalWrite(led2,LOW); delay(200); } } } |
void loop(){ cataplin=digitalRead(2); if (cataplin == 1){ for (int a=0;a<5;a++){ for(int b=0;b<3;b++){ digitalWrite(led1,HIGH); delay(100); digitalWrite(led1,LOW); delay(100);} digitalWrite(led2,HIGH); delay(200); digitalWrite(led2,LOW); delay(200);}}} |
Instalacións eléctricas
Se vos pareceron caóticos os cableados que atopastes ao facerdes os traballos de instalacións eléctricas nas vosas vivendas, mirade estas imaxes e imaxinade que o voso traballo fose o mantemento destas instalacións.
(Imaxes obtidas das galerías de darkroastedblend.com)
Comunicación e redes
Nas instalacións de comunicación tamén debemos ter ben ordenados e etiquetados os cables para poder facer algunha substitución, reparación ou engadir un novo rack. Observade a diferenza entre usar sempre a mesma cor e respectar un código de cores que axuda a identificar os cables.
Na primeira imaxe os cables están ben ordenados e identificados. Imaxinades a ese técnico de sistemas traballando nas instalacións que aparecen a continuación? Para volverse tolo!
(Imaxes obtidas das galerías de darkroastedblend.com)
Recomendacións:
Poderiamos poñer máis exemplos doutros tipos de instalacións e montaxes, pero penso que estes exemplos chegan, aínda que sexan moi esaxerados.
En conclusión, sempre que fagades algo, pensade:
- Se non funciona, é doado revisar o programa, montaxe ou instalación para identificar o fallo?
- Despois de pasado un mes ou máis de facer o programa, montaxe ou instalación, serías quen de entendelo facilmente?
- Outra persoa entendería facilmente o que fixestes?
- Se un problema se pode resolver de varias formas, a máis simple sempre é a mellor. Se podes conectar algo con dous cables, non uses catro, ou cinco, ou seis… Se podes conseguir algo con 4 liñas de código non uses 40.
- …
O menos importante de todo é a nota que vos vai poñer a profe, aínda que tamén conta. Se desde o inicio vos ides acostumando a traballar de forma limpa e ordenada despois todo será moito máis fácil.
O cableado lémbrame ao servidor do meu centro ;) Boas as túas recomendacións, que serven para calquera traballo.
Grazas JJ. Si que serven para calquera traballo, pero especialmente para aqueles que van ser utilizados por terceiras persoas, e como no ensino inculcamos o hábito de traballar individualmente, entregar o traballo e aí remata a faena resulta difícil concienciar sobre isto. Non sei :-(