És sorprenent l'acollida que ha tingut el bon Mar.io ia dir veritat és el primer article que publico que genera més de 10 mil vistes, això posa la tanca una mica alta per als següents i espero no defraudar-los Moltes gràcies per trobar els meus escrits prou interessants com per compartir-los dit sigui de pas
Programació
Aquest és un tema de moda, tothom vol programar, o almenys tothom pensa que és una habilitat cada cop més necessària, ia dir veritat a mi m'agradaria escriure tot un llibre sobre programació, GNU/Linux, seguretat, i potser en algun moment ho pugui fer, només aprengui com escriure llibres lliures i en format agradable .
La tecnologia avança ràpidament
Aquest és un dels motius pels quals encara no he escrit el llibre ja que vull fer alguna cosa que pugui superar la barrera del temps en un camp on les coses no solen durar més d'uns dies de forma vigent. És per això que en aquest article els vull explicar una mica dels conceptes més que les implementacions, d'aquesta manera podrem tornar a llegir aquestes línies en un temps i continuaran sent vigents.
Els principis es mantenen més temps
Tot i que hi ha molts llenguatges de programació ara per ara, molts dels conpceptos es remunten als mateixos orígens. Amb això vull dir que moltes de les coses que avui s'aprenen, han estat vàlides per molt temps, i probablement ho continuaran sent, això a causa que la programació és feta per persones i mentre segueixin sent ells els que desenvolupin, alguns conceptes es mantindran.
Coneixent les bases
Ja hi ha molts cursos, alguns gratuïts i d'altres no, que exposen gran part de la sintaxi de molts dels llenguatges de programació més populars d'avui dia. Però no ho farem aquí jo vull explicar-los una mica del que tot pogramador hauria de pensar abans de començar a programar per poder fer una feina decent.
Entrar a la ment de l'programador és certament una cosa necessària, ja en un article una mica antic vam tractar el tema. Ara entrarem una mica en els conceptes que ens permeten escriure el codi.
Variables i funcions
Les variables són espais de memòria, pensem en les bústies que tenen els grans edificis, estan dissenyats per emmagatzemar cert tipus d'objectes, els hi ha grans i petits, poden estar sols o en grup. Una variable és un valor que tu saps que es farà servir al llarg de el temps, encara exactament no coneixes el seu valor en el principi, si el coneixes i saps que no variarà, estem davant d'una constant.
Les funcions d'altra banda, són conjunts d'instruccions. Una instrucció és el més bàsic que pot fer un processador, la raó de ser de les funcions és permetre el programador agrupar conjunts d'ordres per poder repetir-les al llarg d'un programa. vegem un exemple senzill i alhora ple de detalls.
Disseny propi. Christopher Díaz Riveros
Aquest és un petit programa escrit en C, tenim la funció principal, la variable saludo, I la funció printf que prové de la biblioteca stdio.h. Anem a modificar una mica l'exemple i després compilar-lo per veure què passa.
Disseny propi. Christopher Díaz Riveros
Hem afegit una petita funció anomenada saludar la qual pren com a argument una variable anomenada saludo i la imprimeix. Això no canvia molt el resultat final de el programa però ens permet mostrar un gran i útil principi de la programació, la abstracció. Vegem el resultat:
Disseny propi. Christopher Díaz Riveros
Un simple programa, que està ple de coneixement i treball.
Biblioteques
El motiu pel qual vaig crear la funció saludar va ser simplement per mostrar un dels principis més grans de el desenvolupament de programari, que ja hem anomenat: l'abstracció. Així com hem definit saludar, printf() ha estat definit en algun lloc del nostre sistema operatiu (la biblioteca estàndard de C de GNU), aquest lloc es coneix comunament com a biblioteca / mòdul / llibreria. Les bibliotecass són conjunts de funcions que ens permeten afegir funcionalitat als nostres programes sense haver de tornar a inventar la roda. En aquest cas, gràcies a printf no hem de preocupar-nos de tota la lògica necessària per poder mostrar en una terminal el missatge que desitgem.
Les biblioteques són presents en gairebé tots els llenguatges de programació actuals, ja que a el poder comptar amb seccions de codi per triar i implementar és més senzill que crear cada funció des de zero.
abstracció
Imaginem el sistema de correu, nosaltres no necessitem conèixer tota la logística necessària per poder enviar o rebre una carta, el mateix succeeix amb la programació, abstreure és essencial per generar codi durador i elegant. Aquest procés permet utilitzar noms generals per definir processos generals. En altres paraules, si vam crear la funció enviarCarta() sabem de manera general que aquesta funció s'encarregarà d'enviar una carta, però no necessàriament quins passos es requereixen per fer-ho. I aquest és un altre punt pel qual l'abstracció és tan bona, ja que ens permet encapsular segments de processos.
encapsulament
La nostra funció saludar és un clar exemple d'encapsulament, ens permet tenir un bloc tancat amb instruccions específiques que podem usar una o mil vegades dins d'un programa. Això fa que el codi sigui més fàcil de llegir i que sigui més fàcil de depurar ja que si algun error sorgeix, sabem exactament quins són els límits de la nostra funció, i coneixem cada instrucció en un espai reduït. Això ens porta a un principi de la programació bastant comú en UNIX
Fes una cosa, fes-la molt bé
Una bona funció és la que només fa una cosa, però la fa molt bé. Pensem en això per uns instants ... enviarCarta() probablement faria moltes coses, el que no pot ser bo si volem depurar el procés, mentre saludar() només fa un. Al llarg de el temps, si sorgeixen problemes la segona serà més fàcil de reparar que la primera. Una opció per evitar aquest problema seria generar diferents nivells d'abstracció per enviarCarta(), Això vol dir que dins de la funció existirien altres com verificarSobre() i potser dins d'aquesta una com l' verificarRemitente(). En definitiva aquesta última funció (verificarRemitente()) És molt més específica que només enviarCarta() i d'aquesta manera podem encapsular parts de el codi perquè facin el que és necessari i només una cosa alhora.
practicar
Per aprendre l'art de la programació cal practicar, i ja que jo ara he donat un cop d'ull molt general a el tema, cal que practiquin amb diversos llenguatges, o diversos problemes. Primer intentant generar funcions específiques, després augmentant la complexitat. Com sempre, si sorgeixen dubtes, o suggeriments o comentaris, m'ajuden molt a saber quins aspectes reforçar. Moltes gràcies i que aquest 2018 estigui ple d'èxits i projectes sorprenents. Salutacions