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.
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.
De ce ar mai investi cineva sa invete mvc 4, cand este depasit deja de 4 framework-uri (mvc5, asp net core 1, 2 si 3)?
Pai ce diferente sunt intre ASP.NET MVC4 si ASP.NET MVC5? Care sunt difertele intre ASP.NET MVC4 si ASP.NET Core 3?
– diferenta dintre MVC 4 si 5 sunt minore, deci nu e nici o problema.
– diferentele dintre MVC si Core sunt mai mari, totusi daca stii MVC 4 poti sa treci mult mai usor la Core 1,2,3.
– .NET Core este o tehnologie noua, si multe proiecte sunt incepute in MVC 3,4,5. Migrarea de la 3 la 4 sau de la 4 la 5 se face usor, dar trecerea de la MVC la Core poate costa o companie sute de mii de euro poate chiar milioane. Iar scopul companiilor nu e sa fie in trend cu tehnologiile ci sa isi dezvolte business-ul. Asa ca vei fi surprins ca marile companii inca folosesc MVC (orice versiune). Iar Core este folosit doar la proiectele noi si prin startup-uri. Make sense now?
Ati putea sa veniti si cu un exemplu concret de codare si programare?
Salut Alexandru,
In zilele ce urmeaza voi incerca sa fac un mic filmulet cu un exemplu.
Bine asa?
Spor la invatat programare!