Introducere in Stiinta Calculatoarelor 2013 | Page 109

programului, adică forma binară ce poate fi încărcată direct în memoria de lucru şi poate executa operaţiunile programate. Cuvintele, ce exprimă comenzi, se combină în limbajul de programare respectând o sintaxă strictă (ca reguli gramaticale); programatorul poate greşi (din neatenţie, din necunoaștere), astfel că textul sursă fiind greşit este posibil să nu poată fi interpretat de calculator. În acest caz, este necesară: (IV) depanarea programului – care constă în modificarea textului sursă spre a fi eliminate erorile. Identificarea erorilor şi apoi verificarea programului se realizează cu ajutorul unui depanator (program de asistare a programatorului în activitatea de verificare a corectitudinii programului). Corectarea efectivă a erorilor constă în înscrierea corectă a cuvintelor sau a combinaţiilor de cuvinte în textul sursă. Depanatorul localizează erorile din program şi face chiar sugestii de corectură, însă aceste erori sunt legate doar de „modul de exprimare” în limbajul dat, nu de modul cum a fost rezolvată problema (soluţia corectă sau nu); eliminarea erorilor de soluţionare a problemei se poate face doar prin executarea de teste pe date şi în situaţii reale, urmată de compararea rezultatelor cu cele aşteptate şi apoi modificarea algoritmilor de prelucrare. În general, editarea, compilarea şi depanarea programului se realizează folosind un mediu integrat (un program complex cu toate aceste instrumente), spre a spori eficienţa muncii de programare. Astfel de instrumente sunt „mediile de programare” sau „instrumentele de inginerie software” CASE. Scrierea efectivă a programului se numeşte codificare. Această operaţiune complexă nu se realizează doar înscriind textul în limbajul de programare ales ci se includ date, obiecte sau prelucrări „prefabricate” din biblioteci ale mediilor de programare utilizate pentru scrierea aplicaţiei. În variante mai evoluate (utilizând instrumente CASE sau instrumente RAD), se pot realiza programe prin „plasarea” unor obiecte virtuale ce reprezintă date şi acţiuni necesare rezolvării diferitor aspecte ale problemei (introducere de date, prelucrare, afişare). 109