- Origine
- caracteristici
- Teoria programării structurate
- Structuri de control
- Secvență sau structură liniară
- Structura decizională sau alternative
- Bucla sau repetarea structurii cu o întrebare inițială
- Independent de limbajul de programare
- Exemple de programare structurate
- Secvenţă
- Repetiţie
- Selecţie
- Programare structurată în Visual Basic
- Secvenţă
- Repetiţie
- Selecţie
- Avantaj
- Programe mai clare
- Înțelegere ușoară
- Dezavantaje
- Acelasi cod se repeta
- Este greoaie să schimbi tipurile de date
- Aplicații
- Manipularea obiectelor
- Referințe
Programarea structurată este o dispoziție în proiectarea și construirea de software, în scopul de a gestiona mai bine complexitatea, ținând cont de particularitățile gândirii umane. Fiecare program se bazează pe un algoritm și poate fi reprezentat printr-o schemă logică.
A apărut din complexitatea crescândă a programelor computerizate. A devenit o nouă schemă de programare care a creat tehnici noi pentru a putea produce programe care să funcționeze în siguranță mai mult timp.
Structura decizională și structura secvenței în programarea structurată. Sursa: I.hidekazu CC BY-SA (httpscreativecommons.orglicensesby-sa4.0)
Datorită dezvoltării rapide a procesării computerizate a datelor, la sfârșitul anilor '60 a fost posibilă rezolvarea problemelor din ce în ce mai complexe. Cu toate acestea, înțelegerea, depanarea și modificarea acestor programe au prezentat dificultăți care le-au făcut nesigure.
Marile programe de calculator făcute pentru aceste probleme aveau coduri sursă atât de îndelungate și nestructurate încât deveniseră destul de complicate pentru a accesa și naviga cu o anumită logică, chiar și pentru proprii lor autori.
Origine
Programatorii foloseau comanda „goto” în limbajele de programare pentru a efectua o ramificare condiționată, ceea ce a dus adesea la lizibilitate și nu a fost păstrat un context logic.
În acea criză software, s-a început să se examineze dacă poate fi dezvoltată sistematic o metodologie generală și disciplinată care să permită programe mai rafinate. Ca răspuns la această abordare, sa născut metoda de programare structurată.
În 1968, Dijkstra a publicat articolul „Goto, comanda considerată dăunătoare”, în care a subliniat că utilizarea fără discriminare a acestei comenzi a avut un efect negativ asupra lizibilității și înțelegerii programelor de calculator.
Niklaus Wirth a proiectat un nou limbaj de programare, numit Pascal, lansat în 1970. De atunci a fost folosit pe scară largă pentru a preda designul programării structurate.
caracteristici
Acest mod de programare se caracterizează prin faptul că programatorii pot fragmenta codul sursă al programelor lor în blocuri structurate logic, constând din bucle, blocuri logice și comenzi condiționale.
Scopul programării structurate este de a face programe ușor de scris, depanat și modificat. Programele obținute sunt clare, ordonate, inteligibile, fără salturi.
Teoria programării structurate
Dijkstra a conceput o teorie legată de programarea structurată, care a indicat faptul că atunci când proiectăm orice program este convenabil să ținem cont de următoarele elemente fundamentale:
- Teorema structurală, care afirmă că orice program poate fi compilat folosind doar trei structuri esențiale de control: structură secvențială, structură alternativă și structură repetitivă.
- La conturarea programelor, este îndemnat să se aplice tehnica descendentă, numită și de sus în jos.
- Domeniile de validitate și vizibilitate ale variabilelor și structurilor de date trebuie să fie limitate.
Structuri de control
Teorema structurală indică faptul că orice algoritm cu un singur punct de plecare și final poate fi constituit ca o compoziție a trei structuri de control.
Programând logic și clar aceste structuri de control acceptate, programarea structurată permite abordarea eficientă a funcțiilor cu orice grad de dificultate.
Secvență sau structură liniară
Această structură este pur și simplu secvența sau succesiunea a două sau mai multe operații sau comenzi.
Structura decizională sau alternative
Este selectarea unei comenzi între două alternative posibile. De asemenea, este permis să se aleagă între mai mult de două alternative.
Bucla sau repetarea structurii cu o întrebare inițială
Anumite comenzi se repetă atât timp cât o anumită condiție este îndeplinită. Ciclul poate fi efectuat și cu un contor.
Independent de limbajul de programare
Programarea structurată se bazează pe module funcționale bine definite, clasificate în funcție de natura specifică a problemei. Această programare este o metodă independentă a limbajului de programare, acționând mai mult ca un stil de programare.
Este un mod de a concepe programe urmând reguli bine stabilite, folosind un anumit set de structuri de control pentru aceasta.
Programarea structurată permite scrierea programelor într-un pseudocod, indiferent de limbajul mașinii, aproape de natural, convertibil în orice limbaj de programare.
Exemple de programare structurate
Aproape orice fragment de cod de eșantion din orice limbaj de programare modern va fi un exemplu de programare structurată.
Această programare folosește bucle, condiționări și subrutine pentru a controla fluxul și modularitatea pentru a face codul mai ușor de citit și reutilizat.
Secvenţă
O listă de declarații poate fi executată în ordine, de sus în jos. În acest caz, un program de limbaj natural pentru coacerea pâinii este prezentat ca exemplu:
- Adăugați făină.
- Adăugați drojdia.
- Adauga sare.
- Amesteca.
- Adaugă apă.
- Frământă.
- Lasă aluatul să crească.
- A coace.
Repetiţie
Un bloc de enunțuri se repetă atât timp cât o condiție este adevărată. De exemplu: spălarea vaselor.
Selecţie
Cel mult o acțiune este aleasă din mai multe condiții alternative. De exemplu: comandați e-mailul.
Programare structurată în Visual Basic
Secvenţă
Liniile sau blocurile de cod sunt scrise și executate în ordine secvențială. De exemplu, aveți:
x = 6
y = 12
z = x + y
WriteLine (z)
Repetiţie
Un bloc de cod se repetă în timp ce o condiție este îndeplinită. Nu există nicio limită la numărul de ori când blocul poate fi executat. Exemplu:
x = 2
Atâta timp cât x <100
WriteLine (x)
x = x * x
Sfârșit
Selecţie
Un bloc de cod este executat dacă o condiție este adevărată. Blocul de cod se rulează cel mult o dată. Exemplu:
x = ReadLine ()
Dacă x Mod 2 = 0
WriteLine („Numărul este egal”)
Sfârșitul da
Avantaj
- Sunt programe care răspund nevoilor clienților.
- Cu toate că este nevoie de mai mult timp pentru a genera codul inițial, rezultă adesea cod care rulează fără erori atunci când este executat pentru prima dată.
- Este similar cu vocabularul cuvintelor și simbolurilor din engleză.
- Este ușor de gestionat schimbările din program cu noi specificații în viitor.
- Sunt mai ușor de întreținut.
- Este ușor de utilizat și de înțeles. În cele din urmă este necesar mai puțin timp pentru a scrie codul. Este mai ușor de învățat.
- Programul scris într-o limbă la nivel înalt poate fi tradus în mai multe limbi de mașină. Prin urmare, poate fi rulat pe orice computer pentru care există un traducător sau compilator adecvat.
- În primul rând, sunt orientate spre probleme și nu orientate către mașină.
- Este independent de computerul pe care este utilizat. Cu alte cuvinte, programele dezvoltate în limbi de nivel înalt pot fi rulate pe orice computer.
Programe mai clare
Programarea structurată reduce posibilitatea ca o funcție să o afecteze pe alta. Acest lucru face ca programele să fie mai clare, deoarece variabilele globale sunt eliminate pentru a fi înlocuite cu variabile locale.
Datorită acestei modificări, spațiul de alocare a memoriei pe care o ocupă o variabilă globală poate fi salvat.
Înțelegere ușoară
Organizația ajută la înțelegerea ușoară a logicii de programare, pentru a înțelege logica din spatele programelor.
De asemenea, îi ajută pe noii veniți de la orice companie tehnologică să înțeleagă programele create de alți lucrători din industrie, facilitând astfel potențialul depanare de cod.
Dezavantaje
- Traducătorul sau compilatorul trebuie să traducă limbajul la nivel înalt în limbajul mașinii. Prin urmare, trebuie să se plătească un preț în utilizarea timpului calculatorului.
- Codul obiect generat de compilator poate fi ineficient în comparație cu un program de limbaj de asamblare echivalent.
Acelasi cod se repeta
Codul scris poate apărea în diferite părți ale programului. Poate fi vulnerabil la diverse probleme din cauza locației sale. Programele au variabile, ceea ce înseamnă că pot lua valori diferite în diferite părți ale programului.
Este greoaie să schimbi tipurile de date
Tipul datelor vine din mai multe funcții. Prin urmare, atunci când se fac modificări la acel tip de date, trebuie efectuată modificarea corespunzătoare la fiecare locație care acționează asupra acelui tip de date din program. Aceasta este o sarcină care consumă mult timp dacă programul este foarte mare.
Se poate lua în considerare cazul unei dezvoltări software, unde mai mulți programatori lucrează ca echipă într-o aplicație. Într-un program structurat, fiecare programator va fi alocat pentru a construi un set specific de funcții și tipuri de date.
Prin urmare, diferiți programatori vor gestiona separat diferite funcții care au tipuri de date partajate între ele.
Ceilalți programatori din echipă ar trebui să reflecte modificările tipurilor de date realizate de un programator, în tipurile de date pe care le-a gestionat. În caz contrar, mai multe funcții vor trebui rescrise.
Aplicații
Programarea structurată a funcționat bine pentru milioane de programe și miliarde de linii de cod. Nu există niciun motiv să-l aruncați.
În special, a funcționat extrem de bine pentru programele care prelucrează date și pentru procesarea numerelor, ambele fiind executate o singură dată pentru a produce un răspuns.
Două caracteristici tind să definească bine problemele care pot fi abordate într-un mod pur structurat:
- Datele care trebuie gestionate se potrivesc îndeaproape cu tipurile de date care sunt integrate în limbă, fiind în general numere și șiruri de caractere.
- Programul urmărește un flux de control bine definit pentru a produce un singur rezultat bazat pe o anumită intrare.
Programele de calculator cu aceste caracteristici includ multe aplicații științifice, de inginerie și de procesare a textului, pe lângă multe dintre exemplele de manuale ale cursurilor tradiționale de informatică.
Nu este surprinzător, acestea sunt exact tipurile de programe pe care doreau să le rezolve primii oameni care au inventat limbaje de programare.
Manipularea obiectelor
Majoritatea limbajelor de programare moderne sunt structurate astfel: ceea ce aveți în programul dvs. sunt obiecte, iar majoritatea codului constă în diferite metode de utilizare a datelor stocate în acele obiecte.
Un program structurat are, în general, control asupra a ceea ce se întâmplă și când se întâmplă, în timp ce un program bazat pe evenimente trebuie să poată răspunde la evenimente în momente imprevizibile.
Referințe
- MVPS (2020). Programare structurată. Luat de la: mvps.net.
- Alexey (2019). Paradigma de programare structurată. Mediu. Luat de la: medium.com.
- Includeți ajutorul (2020). Programare structurată, avantajele și dezavantajele sale. Luat de la: includehelp.com.
- Tim Trott (2019). Limbi de programare structurate. Lonewolf Online. Luat de la: lonewolfonline.net.
- Portal OO (2020). Utilizări și beneficii ale programării tradiționale, structurate. Luat de la: ooportal.com.
- Studeer Snel (2020). Revizuire finală - Rezumat Aplicații de programare structurate. Luat de la: studeersnel.nl.