Paradigme de programare – ce este programarea procedurală?

DiParadigmele de programare sunt diferite stiluri, diferite „moduri” de programare. Există o mulțime de paradigme diferite, inclusiv unele populare, cum ar fi programarea procedurală, programarea orientată pe obiecte, programarea funcțională, etc. Și unele care nu sunt la fel de populare, cum ar fi programarea imperativă, programarea declarativă, programarea bazată pe evenimente etc. Dacă sunteți curioși, există un rezumat foarte bun al paradigmelor de programare aici. În această postare, vom discuta despre una populară, care este programarea procedurală.

Tl; dr;

Programarea procedurală este una dintre cele mai populare paradigme de programare existente. Urmând programarea procedurală, împărțim codul în unități mai mici numite funcții sau proceduri, astfel încât să fie mai ușor de reutilizat, iar fluxul de execuție să fie de sus în jos. Acest stil este ușor de înțeles și de implementat. Ca urmare, este adesea predat în cursurile de introducere în programare.

Alte articole de blog din această serie:

Paradigme de programare – este mai bună programarea orientată pe obiecte?

Ce este programarea procedurală?

Programarea procedurală este o metodă de programare care are ca suport divizarea funcționalităților într-un număr de proceduri. În programarea procedurală, un program mare este împărțit în părți mai mici și ușor de gestionat, numite proceduri sau funcții. Aici, se acordă prioritate funcțiilor mai degrabă decât datelor. Într-un limbaj de programare procedurală, un program constă, în principiu, dintr-o secvență de instrucțiuni, fiecare dintre acestea spunându-i calculatorului să facă ceva, cum ar fi citirea intrărilor de la utilizator, efectuarea calculelor necesare, afișarea ieșirii.

def add_number(a, b): return a + b# workflow starts here# call function add_number() to add 1 and 2 together and print the result to screenprint(add_number(1, 2))# execute add_number() function 5 times and print the result to screenfor i in range(5): print(add_number(i, 1))# workflow ends here

Când un program devine mai mare, el este apoi împărțit în unități mai mici numite proceduri sau funcții. Un număr de funcții se presupune că sunt scrise pentru realizarea unei sarcini specifice. Aceste funcții nu permit duplicarea codului din cauza apelării aceleiași funcții din mai multe locații. Această tehnică este potrivită numai pentru aplicații software de dimensiuni medii

În programarea procedurală, se folosesc două tipuri de date: locale și globale. Datele din cadrul funcției se numesc date locale, iar datele și care nu se află în cadrul niciunei funcții se numesc date globale. Datele locale sunt accesibile numai funcției în care sunt declarate. Astfel, fiecare funcție poate accesa atât datele sale locale, cât și datele globale.

// this is a global variable$globalVar = 1;function addNumber($a, $b) { // this is a local variable $randomNumber = rand(); return $globalVar + $randomNumber + $a + $b;}

Datele locale ale unei funcții nu sunt accesibile altor funcții. Dacă o dată trebuie să fie accesată de două sau mai multe funcții, ea trebuie să fie făcută globală. Cu toate acestea, datele globale sunt vulnerabile pentru ca un alt programator să le modifice în necunoștință de cauză. Aranjarea separată a datelor și a funcțiilor nu reușește să modeleze bine lucrurile în lumea reală. De aceea, abordarea programării procedurale nu modelează perfect un sistem din lumea reală.

COBOL, FORTRAN, C, Pascal sunt câteva limbaje de programare care pot implementa programarea procedurală.

Caracteristicile programării procedurale

Un program mare este împărțit în proceduri sau funcții mici și ușor de gestionat. Acest lucru reduce duplicarea codului, ceea ce îmbunătățește lizibilitatea și mentenabilitatea codului.

Funcții diferite pot partaja date prin intermediul variabilelor globale. Funcțiile sunt complet izolate, prin urmare, dacă dorim să partajăm date, trebuie să le declarăm în domeniul superior.

Funcțiile pot modifica datele globale. Deoarece datele globale sunt transferate de la o funcție la alta; pe parcursul transformării, datele globale pot fi modificate în lanțurile de funcții.

Metodologie de sus în jos. După cum s-a menționat anterior, programarea procedurală urmează metodologia de sus în jos, fluxul de lucru merge de sus în jos.

Vantajele programării procedurale

  • Codificarea este ușoară și simplă.
  • Codurile au capacitatea de a fi reutilizate în mai multe părți ale programului.
  • Paradigma de programare consumă mai puțină memorie pe calculator.
  • Este mai ușor pentru urmărirea fluxului de coduri în programul scris în paradigma de programare procedurală.
  • Paradigma de programare este considerată cea mai bună pentru învățarea și implementarea programării generale.

Limitări sau dezavantaje ale programării procedurale

  • Concentrarea pe funcții mai degrabă decât pe date.
  • Într-un program mare, este dificil de identificat apartenența datelor globale.
  • Utilizarea datelor globale este predispusă la erori și ar putea fi un obstacol în cazul întreținerii și îmbunătățirii.
  • Modificarea datelor globale necesită modificarea acelor funcții care le folosesc.
  • Întreținerea și îmbunătățirea codului de program este încă dificilă din cauza datelor globale.
  • Paradigma programării procedurale nu modelează foarte bine problema din lumea reală, deoarece funcțiile sunt orientate spre acțiune și nu corespund cu adevărat elementelor problemei.

Rezumat

Programarea procedurală oferă cu siguranță o mulțime de avantaje, unul dintre ele fiind ușurința de învățare și implementare. Programatorii noi își pot începe călătoria învățând cum să scrie cod în stil procedural. Acest lucru îi va ajuta să înțeleagă cum funcționează un anumit limbaj de programare.

Cu toate acestea, din cauza limitării sale, aplicațiile din lumea reală nu folosesc programarea procedurală. Prin urmare, studenții vor trebui să învețe alte paradigme pentru a fi expuși la probleme din viața reală.

Mulțumesc pentru lectură. Puteți răsfoi mai multe postări despre tehnologie aici.

De Tuan Nguyen

Vizualizări post: 7,558

Lasă un răspuns

Adresa ta de email nu va fi publicată.