Comencem l'any programant

És sorprenent l'acollida que ha tingut el bon Mar.io i francament és el primer article que va publicar que genera més de 10 mil vistes, això posa la tanca alguna cosa alta per als següents i espero no defraudar-amb aquest 🙂 Moltes gràcies per trobar els meus escrits prou interessants com per compartir-dit sigui de pas 🙂

programació

Aquest és un tema de moda, tothom vol programar, o al menys tothom pensa que és una habilitat cada vegada més necessària, i francament a mi m'agradaria escriure tot un llibre sobre programació, GNU / Linux, seguretat, i potser en algun moment ho pugui fer, tot just aprengui com escriure llibres lliures i en format agradable 😛.

La tecnologia avança ràpidament

Aquest és un dels motius pels quals no he escrit el llibre encara 😛 ja que vull fer alguna cosa que pugui superar la barrera el temps en un camp en el qual les coses no solen durar més d'uns dies de forma vigent. És per això que en aquest article 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 seguiran 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 altres no, que exposen gran part de la sintaxi de molts dels llenguatges de programació més populars d'avui en dia. Però no farem això aquí 🙂 jo vull explicar una mica del que tot pogramador hauria de pensar abans de començar a programar per poder fer un treball 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 saludarprintf() 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


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: Miguel Ángel Gatón
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.

  1.   Juanjo va dir

    Sóc un apassionat de linux des que canviï des windows gràcies s vosaltres ja programe en bash i al c per a trucades a sistema gràcies

    1.    ChrisADR va dir

      Fantàstic Juanjo! Segueix així 😉 potser abans que te n'adonis ja estaràs ajudant a projectes de programari lliure i codi obert al llarg de el món. una salutació

  2.   Rodrigo va dir

    Molt interessant, mes quan també estic per donar les meves primeres passes en programació i estic planificant que el 2018 sigui l'any en què aprengui a programar. Gairebé com si haguessis olorat l'aire eteri de la xarxa.
    Gràcies per aquest article, espero ens puguis donar a llum més en temes de seguretat informàtica que tant fa falta a les ments informàtiques.

    Salutacions

    1.    ChrisADR va dir

      Hola Rodrigo, doncs certament aquest 2018 estarà plens d'articles sobre programació i seguretat, sempre que aconsegueixi una feina que em permeti fer-ho 😛 però mentrestant puc assegurar que la primera meitat de l'any sí podré escriure seguit, al menys fins a acabar els estudis jajaja

      Salutacions i sort amb el teu propòsit d'aprendre a programar aquest any que ve 🙂

  3.   Ernesto Guillermo Vitali va dir

    Moltes gràcies per escriure un article tan interessant. Sos un molt bon docent.
    L'article sobre Mar.io va transcendir més del que sospitaves. És excel·lent i està molt ben escrit.
    Feliç Any Nou !!!
    EG Vitali

    1.    ChrisADR va dir

      Moltes gràcies Ernest, molt amables paraules.

      Certament ha estat més del que vaig pensar que seria, i això em motiva a seguir escrivint cada vegada més i millor, i certament estic buscant un lloc on poder exercir una tasca docent, seria una cosa molt gratificant per a mi i suposo que em donaria oportunitat de escriure més temes sobre programació i seguretat i la resta de coses que la curiositat sempre porta a la meva ment 🙂

      Salutacions i feliç any nou també 🙂

  4.   Tecprog World va dir

    Molt bo el post meu amic, moltes salutacions des de Lima - Perú, nosaltres també confiem que la programació millora la vida de les persones, esperant segueixis publicant més entrades ens acomiadem, una abraçada.

    1.    ChrisADR va dir

      Moltes gràcies i segurament vindran més entrades, espero fer una sèrie completa per posar a punt els lectors en la col·laboració de projectes de programari lliure. Una salutació i èxits aquest 2018

  5.   anònim va dir

    Segueix així, una salutació.

  6.   Ricardo va dir

    Brillant el post ... salutacions des de Paraguai ... esperant que el 2018 sigui un any molt millor que els anteriors ... que surtin tots els projectes personals ... i que segueixis aportant amb els teus coneixements ... Exitos !!!

    1.    ChrisADR va dir

      Hola Ricardo, moltes gràcies per les salutacions, certament espero poder continuar, segur aquest any sortiran diversos articles 😉 èxits per a aquest 2018 també! Salutacions

  7.   JorgeFS va dir

    Que mania de l'hispà-parlant en dir llibreria en referència a «library». Són biblioteques de codi, no llibreries.
    Salutacions.

    1.    ChrisADR va dir

      jajaja gràcies per la dada Jordi, lamentablement a Perú els diem llibreries, encara que també mòduls, encara que certament biblioteca és més encertat, veuré si puc ajustar el text per fer-lo més correcte 🙂 Salutacions i feliç 2018

  8.   Aanxhel va dir

    Molt bona introducció a la programació,
    espero i segueixis fent mes aportacions com aquest.

    1.    ChrisADR va dir

      Moltes gràcies i tant de bo pugui fer una sèrie completa, salutacions i feliç any nou!

  9.   Damià Garcia va dir

    Molt bo l'article, només vull aportar alguna cosa més del meu primer contacte amb programació i de com la pràctica de la mateixa és fonamental. A què li interessa el link és el següent http://bit.ly/1HBRCfx
    Espero que els resulti interessant. Salutacions, feliç començament d'any ja programar.

    1.    ChrisADR va dir

      Moltes gràcies Damian, no havia llegit l'article mai, ni res de la pàgina, però es veu interessant en realitat. Moltes gràcies per compartir, salutacions

  10.   Bertín Osborne va dir

    En els meus temps s'usava void main, que coses, encara que era en msdos i no importava el valor de la tornada.

    1.    ChrisADR va dir

      Hola Bertín 🙂 certament el void main es manté, pot utilitzar-depenent de la complexitat de el programa avui dia, de la mateixa manera el valor de retorn, però ara per ara és millor seguir amb el desenvolupament i les millors pràctiques per poder tenir programari que pugui ser llegit per més persones, ja que això és vital en ambients de programari comunitari. Salutacions i gràcies per compartir

  11.   José va dir

    molt bons els teus aportacions, espero que segueixin, aquest 2018 vull començar a programar, s'agraeix l'ajuda