Ce este programarea calculatorului?

M-am hotarat sa realizez o serie de articole despre ce este programarea. Nu, nu va fi o serie in care va voi arata cum sa codati intr-un anumit limbaj, pentru ca, asa cum am mai spus-o in diverse contexte: E usor sa scrii cod, dar e mult mai greu sa ajungi in punctul in care poti gandi/crea acel cod. “Ce este programarea calculatorului?” este articolul cu care voi sparge gheata si cu care vreau sa explic pe indelete ce presupune aceasta indeletnicire. Sugestiile si recomandarile sunt binevenite.

Ce este programarea calculatorului?

Programarea calculatorului este procesul de proiectare si construire a unui program de calculator pentru a indeplini o sarcina specifica.
Programarea presupune sarcini precum:
– Analiza problemei;
– Impartirea problemei in subprobleme;
– Gandirea/Proiectarea de algoritmi necesari rezolvarii problemei;
– Implementarea algoritmilor intr-un limbaj de programare ales (frecvent denumita codare).

Nota importanta: Asa cum vedeti mai sus a coda nu inseamna a programa calculatorul. Mai corect spus, a programa calculatorul nu inseamna doar a coda. Desi, din pacate, aceste notiuni sunt frecvent confundate. Realitatea este ca, a coda reprezinta mai putin de 20% din procesul de programare a calculatorului. Daca vreti o comparatie, puteti sa vedeti codarea ca partea vizibila a programarii asa cum dintr-un iceberg se vede doar o mica parte, partea care este deasupra apei.

Ce este programarea calculatorului? - Programare vs Codare - Invatam programare
Programare vs Codare

Care este scopul programarii?

Scopul programarii este acela de a gandi/gasi o secventa de instructiuni care sa automatizeze performant sarcinile ce trebuie indeplinite de un program de calculator, adesea avand scopul de a rezolva o problema data. Chiar daca nu este evidenta in fiecare caz problema pe care o rezolva o aplicatie, exceptand aplicatiile facute cu scop didactic (pentru a invata programare sau un anumit limbaj de programare), aplicatiile au scopul de a rezolva probleme. Spre exemplu aplicatia Word rezolva problema editarii de documente, iar invatamprogramare.ro rezolva problema informarii persoanelor care vor sa invete programare dar care nu stiu de unde sa inceapa.

Procesul de programare necesita cunostinte despre cateva subiecte diferite:
– cunoasterea domeniului pentru care dezvolti aplicatia;
– logica;
– algoritmi;
– cunoasterea unui limbaj de programare.

Programatorii nu scriu cod care este inteles in mod direct de catre calculator pentru a-l executa, ci ei scriu cod intr-un limbaj de programare pe care ei il stiu, acesta se numeste cod sursa. Pentru ca acest cod sa fie inteles si executat de un calculator, codul sursa trebuie tradus. Dar traducerea codului sursa face subiectul unui alt articol.

Tu stii aplicatii care rezolva o problema clara? Dar aplicatii care nu rezolva o problema clara? Scrie-mi intr-un comentariu.