- pôvod
- vlastnosti
- Štruktúrovaná teória programovania
- Kontrolné štruktúry
- Sekvencia alebo lineárna štruktúra
- Štruktúra rozhodovania alebo alternatívy
- Slučka alebo opakujúca sa štruktúra s úvodnou otázkou
- Nezávislé od programovacieho jazyka
- Príklady štruktúrovaného programovania
- sekvencie
- opakovanie
- výber
- Štruktúrované programovanie v jazyku Visual Basic
- sekvencie
- opakovanie
- výber
- výhoda
- Jasnejšie programy
- Ľahké porozumenie
- nevýhody
- Rovnaký kód sa opakoval
- Zmena typov údajov je ťažkopádna
- aplikácia
- Manipulácia s objektmi
- Referencie
Štruktúrované programovanie je ustanovenie v návrhu a konštrukcii softvéru, s cieľom lepšie zvládať zložitosť, s prihliadnutím na zvláštnosti ľudského myslenia. Každý program je založený na algoritme a môže byť reprezentovaný logickou schémou.
Vyplývalo zo zvyšujúcej sa zložitosti počítačových programov. Stala sa novou programovacou schémou, ktorá vytvorila nové techniky, aby bolo možné vytvárať programy, ktoré sú bezpečné na dlhšiu dobu.
Štruktúra rozhodovania a sekvenčná štruktúra v štruktúrovanom programovaní. Zdroj: I.hidekazu CC BY-SA (httpscreativecommons.orglicensesby-sa4.0)
Koncom 60. rokov sa vďaka rýchlemu rozvoju počítačového spracovania údajov podarilo vyriešiť stále komplexnejšie problémy. Pochopenie, ladenie a úprava týchto programov však spôsobili nespoľahlivosť.
Veľké počítačové programy vytvorené pre tieto problémy mali zdrojové kódy natoľko dlhé a nestrukturované, že ich prístup k určitej logike a navigácia s ňou boli dosť zložité, dokonca aj pre ich autorov.
pôvod
Programátori použili príkaz „goto“ v programovacích jazykoch na vykonanie podmieneného vetvenia, ktoré často viedlo k čitateľnosti a logický kontext sa nezachoval.
V tejto softvérovej kríze sa začalo uvažovať o tom, či sa dá systematicky rozvíjať všeobecná a disciplinovaná metodika, ktorá by umožnila prepracovanejšie programy. V reakcii na tento prístup sa zrodila metóda štruktúrovaného programovania.
V roku 1968 publikoval Dijkstra článok „Príkaz Goto považovaný za škodlivý“, v ktorom zdôraznil, že nevyvážené použitie tohto príkazu malo negatívny vplyv na čitateľnosť a pochopenie počítačových programov.
Niklaus Wirth navrhol nový programovací jazyk s názvom Pascal, ktorý vyšiel v roku 1970. Odvtedy sa vo veľkej miere používa na výučbu návrhu štruktúrovaného programovania.
vlastnosti
Tento programovací režim je charakterizovaný skutočnosťou, že programátori môžu fragmentovať zdrojový kód svojich programov na logicky štruktúrované bloky pozostávajúce zo slučiek, logických blokov a podmienených príkazov.
Cieľom štruktúrovaného programovania je vytvoriť programy, ktoré sa dajú ľahko písať, ladiť a upravovať. Získané programy sú jasné, usporiadané, zrozumiteľné, bez skokov.
Štruktúrovaná teória programovania
Dijkstra navrhol teóriu spojenú so štruktúrovaným programovaním, ktorá naznačovala, že pri navrhovaní akéhokoľvek programu je vhodné zohľadniť tieto základné zásady:
- Štrukturálna veta, v ktorej sa uvádza, že každý program možno zostaviť pomocou iba troch základných kontrolných štruktúr: sekvenčná štruktúra, alternatívna štruktúra a opakujúca sa štruktúra.
- Pri navrhovaní programov sa odporúča použiť zostupnú techniku, ktorá sa tiež nazýva zhora nadol.
- Rozsahy platnosti a viditeľnosť premenných a štruktúr údajov musia byť obmedzené.
Kontrolné štruktúry
Štrukturálna veta naznačuje, že akýkoľvek algoritmus s jediným začiatočným a koncovým bodom môže byť tvorený zložením troch kontrolných štruktúr.
Logickým a jasným programovaním týchto podporovaných riadiacich štruktúr umožňuje štruktúrované programovanie efektívny prístup k funkciám s akýmkoľvek stupňom obtiažnosti.
Sekvencia alebo lineárna štruktúra
Táto štruktúra je jednoducho sledom alebo sledom dvoch alebo viacerých operácií alebo príkazov.
Štruktúra rozhodovania alebo alternatívy
Je to výber príkazu medzi dvoma možnými alternatívami. Je tiež možné si vybrať medzi viac ako dvoma alternatívami.
Slučka alebo opakujúca sa štruktúra s úvodnou otázkou
Niektoré príkazy sa opakujú, pokiaľ sú splnené určité podmienky. Cyklus je možné vykonať aj pomocou počítadla.
Nezávislé od programovacieho jazyka
Štruktúrované programovanie je založené na dobre definovaných funkčných moduloch zoradených podľa špecifickej povahy problému. Toto programovanie je nezávislá metóda programovacieho jazyka, ktorá pôsobí skôr ako štýl programovania.
Je to spôsob, ako navrhnúť programy podľa osvedčených pravidiel a použiť na to určitý súbor kontrolných štruktúr.
Štruktúrované programovanie umožňuje písať programy v pseudokódoch bez ohľadu na jazyk stroja, takmer prirodzený, konvertibilný do ľubovoľného programovacieho jazyka.
Príklady štruktúrovaného programovania
Takmer každý útržok vzorového kódu v akomkoľvek modernom programovacom jazyku bude príkladom štruktúrovaného programovania.
Toto programovanie používa slučky, podmienky a podprogramy na riadenie toku a modularity, aby sa kód ľahšie čítal a znova použil.
sekvencie
Zoznam príkazov je možné vykonať v poradí zhora nadol. V tomto prípade je ako príklad uvedený program v prirodzenom jazyku na pečenie chleba:
- Pridajte múku.
- Pridajte droždie.
- Pridajte soľ.
- Zmiešať.
- Pridajte vodu.
- Hniesť.
- Nechajte cesto vstať.
- Piecť.
opakovanie
Blok príkazov sa opakuje, pokiaľ je splnená podmienka. Napríklad: umývanie riadu.
výber
Najviac jedna akcia je vybraná z niekoľkých alternatívnych podmienok. Napríklad: objednajte si e-mail.
Štruktúrované programovanie v jazyku Visual Basic
sekvencie
Riadky alebo bloky kódu sa zapisujú a vykonávajú v postupnom poradí. Máte napríklad:
x = 6
y = 12
z = x + y
WriteLine (z)
opakovanie
Blok kódu sa opakuje, keď je splnená podmienka. Počet vykonaní bloku nie je nijako obmedzený. Príklad:
x = 2
Pokiaľ x <100
Riadok zápisu (x)
x = x * x
Koniec
výber
Blok kódu sa vykoná, ak je splnená podmienka. Blok kódu beží najviac naraz. Príklad:
x = ReadLine ()
Ak x Mod 2 = 0
WriteLine („Číslo je párne“)
Koniec áno
výhoda
- Sú to programy, ktoré zodpovedajú potrebám zákazníkov.
- Hoci vygenerovanie kódu na začiatku trvá dlhšie, často vyústi do kódu, ktorý sa pri prvom spustení spustí bez chýb.
- Je to podobné slovníku slov a symbolov v angličtine.
- V budúcnosti je ľahké zvládnuť zmeny v programe s novými špecifikáciami.
- Ľahšie sa udržujú.
- Je ľahko použiteľné a zrozumiteľné. Na napísanie kódu je nakoniec potrebných menej času. Je ľahšie sa učiť.
- Program napísaný v jazyku vysokej úrovne je možné preložiť do mnohých strojových jazykov. Preto ho možno spustiť na akomkoľvek počítači, pre ktorý je vhodný prekladač alebo kompilátor.
- Sú zamerané skôr na problémy než na stroje.
- Je nezávislý od počítača, na ktorom sa používa. Inými slovami, programy vyvinuté v jazykoch vysokej úrovne sa dajú spúšťať na akomkoľvek počítači.
Jasnejšie programy
Štruktúrované programovanie znižuje možnosť, že jedna funkcia ovplyvní inú. Tým sú programy jasnejšie, pretože globálne premenné sú odstránené a nahradené lokálnymi premennými.
V dôsledku tejto zmeny možno uložiť priestor na pridelenie pamäte, ktorý zaberá globálna premenná.
Ľahké porozumenie
Organizácia pomáha ľahko pochopiť logiku programovania, aby pochopila logiku programov.
Pomáha tiež nováčikom z akejkoľvek technologickej spoločnosti porozumieť programom vytvoreným inými pracovníkmi v priemysle, a tým uľahčiť prípadné ladenie kódu.
nevýhody
- Prekladateľ alebo kompilátor musí preložiť jazyk vysokej úrovne do strojového jazyka. Preto sa musí cena za používanie počítačového času zaplatiť.
- Kód objektu generovaný kompilátorom môže byť neúčinný v porovnaní s ekvivalentným programovým jazykom zostavy.
Rovnaký kód sa opakoval
Napísaný kód sa môže objaviť v rôznych častiach programu. Vďaka svojej polohe môže byť náchylný na rôzne problémy. Programy majú premenné, čo znamená, že môžu mať rôzne hodnoty v rôznych častiach programu.
Zmena typov údajov je ťažkopádna
Typ údajov pochádza z mnohých funkcií. Preto, keď sa vyskytnú zmeny v tomto type údajov, zodpovedajúca zmena sa musí vykonať na každom mieste, ktoré pôsobí na tento typ údajov v programe. Ak je program veľmi rozsiahly, je to skutočne časovo náročná úloha.
Môže sa uvažovať o vývoji softvéru, keď niekoľko programátorov pracuje ako tím v aplikácii. V štruktúrovanom programe bude každý programátor priradený k zostaveniu špecifickej sady funkcií a typov údajov.
Rôzni programátori preto budú pracovať oddelene s rôznymi funkciami, ktoré majú navzájom zdieľané typy údajov.
Ostatní programátori v tíme by mali odrážať zmeny v typoch údajov, ktoré vykonal programátor, v typoch údajov, s ktorými zaobchádzajú. V opačnom prípade bude potrebné prepísať viac funkcií.
aplikácia
Štruktúrované programovanie dobre fungovalo pre milióny programov a miliardy riadkov kódu. Nie je dôvod na jej vyradenie.
Obzvlášť dobre fungoval v prípade programov, ktoré spracúvajú údaje, a pri spracovaní čísel, ktoré sa spustia jedenkrát, aby vyvolali odozvu.
Dve charakteristiky majú tendenciu dobre definovať problémy, ku ktorým je možné pristupovať čisto štruktúrovaným spôsobom:
- S údajmi, ktoré sa majú spracovať, sa úzko zodpovedajú typy údajov, ktoré sú integrované do jazyka, zvyčajne číselné a znakové reťazce.
- Program sleduje presne definovaný tok kontroly a vytvára jediný výsledok založený na niektorých vstupoch.
Počítačové programy s týmito charakteristikami zahŕňajú mnoho vedeckých, inžinierskych a textových aplikácií, okrem mnohých učebných príkladov tradičných kurzov informatiky.
Niet divu, že to sú presne tie druhy programov, ktoré prví ľudia, ktorí vymysleli programovacie jazyky, chceli vyriešiť.
Manipulácia s objektmi
Väčšina moderných programovacích jazykov je štruktúrovaná takto: to, čo máte v programe, sú objekty a väčšina kódu pozostáva z rôznych metód použitia údajov uložených v týchto objektoch.
Štruktúrovaný program má vo všeobecnosti kontrolu nad tým, čo sa stane a kedy sa stane, zatiaľ čo program založený na udalostiach musí byť schopný reagovať na udalosti v nepredvídateľnom čase.
Referencie
- MVPS (2020). Štruktúrované programovanie. Prevzaté z: mvps.net.
- Alexey (2019). Paradigma štruktúrovaného programovania. Medium. Prevzaté z: medium.com.
- Zahrnúť pomoc (2020). Štruktúrované programovanie, jeho výhody a nevýhody. Prevzaté z: includeehelp.com.
- Tim Trott (2019). Štruktúrované programovacie jazyky. Lonewolf online. Prevzaté z: lonewolfonline.net.
- Portál OO (2020). Použitie a výhody tradičného štruktúrovaného programovania. Prevzaté z: ooportal.com.
- Studeer Snel (2020). Záverečné hodnotenie - Súhrnné aplikácie štruktúrovaného programovania. Prevzaté z: studeersnel.nl.