Proceduralno programiranje je programiranje koje odražava pozadinu Neumannove arhitekture računara. Svi programi napisani na ovom jeziku su određeni niz naredbi koje uspostavljaju određeni algoritam za rješavanje određenog skupa problema. Najvažnija komanda je operacija dodjeljivanja, koja je dizajnirana da uspostavi i ispravi sadržaj u memoriji računara.
Koja je glavna ideja ovog jezika?
Glavna karakteristika proceduralnih programskih jezika je upotreba računarske memorije za skladištenje informacija. Funkcionisanje programa svodi se na konstantno i naizmjenično izvršavanje različitih naredbi u cilju transformacije sadržaja memorije, promjene njenog početnog stanja i postizanja željenih rezultata.
Kako je sve počelo
Proceduralno programiranje počelo je stvaranjem jezika visokog nivoa pod nazivom Fortran. Nastao je ranih pedesetih u SAD od strane IBM-a. Prve publikacije o njemu pojavile su se tek 1954. godine. Proceduralno orijentisani programski jezik Fortran razvijen je za obavljanje naučnih i tehničkih zadataka. Glavni objekti jezika su numeričke varijable, realni i cijeli brojevi. Svi izrazi su izgrađeni na četiri glavna aritmetička izračunavanja: eksponencijacija, operacije omjera, zagrade, logičke manipulacije AND, NOT, OR.
Glavni operatori jezika su izlaz, ulaz, prelaz (uslovno, bezuslovno), pozivanje potprograma, petlje, dodeljivanje. Proceduralno programiranje na jeziku Fortran je veoma dugo najpopularnije u svijetu. Tokom postojanja jezika, akumulirana je ogromna baza podataka raznih biblioteka i programa koji su napisani posebno na Fortranu. Sada je još uvijek u toku rad na uvođenju sljedećeg standarda Fortran. 2000. godine razvijena je verzija Fortrana F2k, čija se standardna verzija naziva HPF. Kreiran je za paralelne superračunare. Inače, PL-1 i BASIC jezici koriste mnoge standarde iz Fortrana.
kobol jezik
Cobol je proceduralni programski jezik. Ovo je programski jezik koji ima za cilj rješavanje mnogih problema obrade informacija. Aktivno se koristi za rješavanje različitih upravljačkih, računovodstvenih i ekonomskih problema. Proceduralno programiranje u Cobolu razvijeno je u Sjedinjenim Državama 1958-1960. Sam program, kreiran u Cobolu, ima nekoliko tipova rečenica na engleskom jeziku, koje po izgledu podsjećaju na najobičniji tekst. Poenta je da grupaoperatori napisani sekvencijalno se kombinuju u čitave rečenice, same rečenice se kombinuju u pasuse, a paragrafi se kombinuju u odeljke. Programer sam dodeljuje nazive ili oznake paragrafima i određenim odeljcima kako bi lakše upućivao na određeni deo koda. U Sovjetskom Savezu je razvijena ruska verzija programa i vrlo uspješno primijenjena u praksi.
Proceduralno orijentirano programiranje na jeziku Cobol realizirano je zahvaljujući moćnim radnim alatima koji su u stanju obraditi ogromne tokove podataka koji su pohranjeni na raznim vanjskim diskovima. Postoji mnogo aplikacija napisanih na ovom jeziku koje se aktivno koriste i sada.
Zanimljiva činjenica: najplaćeniji programeri u SAD pišu programe na Cobolu.
Algol jezik
Ovaj proceduralni programski jezik kreirala je cijela grupa stručnjaka 1960. godine. To je bio rezultat početka saradnje na međunarodnom nivou. Algol je razvijen za održavanje algoritama koji su izgrađeni u obliku niza određenih procedura koje su korištene za rješavanje zadataka. U početku se jezik doživljavao pomalo dvosmisleno, ali je prepoznat na međunarodnom nivou, odigrao je veliku ulogu u razvoju osnovnih koncepata programiranja i podučavanju nove generacije programera. Proceduralno programiranje na jeziku Algol bilo je prvo koje je uvelo koncepte kao što su "struktura blokova programa", "dinamička alokacija memorije".
Postoji još jedna karakteristika jezika -ovo je mogućnost unosa nekih lokalnih oznaka u blok koji se ne odnose na ostatak programskog koda. Da, Algol-60, uprkos svom međunarodnom porijeklu, nije bio toliko popularan kao Fortran.
Nisu svi strani računari imali prevodioce sa Algol-60, tako da je ovo proceduralno programiranje pretrpjelo promjene i pojavio se poboljšani Algol-68 jezik.
Algol-68
To je već bio svestran i višenamjenski napredni programski jezik. Njegova glavna karakteristika je bila da je sa istim programom bilo moguće prevoditi sa različitih verzija jezika bez ikakvih troškova u prilagođavanju ovog jezika različitim kategorijama programera koji bi mogli imati dijalekte jezika specifične za domenu.
Ako sudimo o mogućnostima ovog jezika, Algol-68 je čak i sada ispred mnogih programskih jezika po svojim mogućnostima, međutim, zbog činjenice da ne postoje efikasni računari za ovaj proceduralni programski jezik, još uvijek nije bilo moguće napraviti kvalitetan i brz kompajler.
Kako se pojavio čuveni BASIC?
Proceduralni programski jezici takođe uključuju svjetski poznati BASIC. Sredinom šezdesetih, zaposleni na Dartmouth koledžu po imenu Thomas Kurtz i John Kemeny razvili su jedinstveni programski jezik koji je preokrenuo sve na svijetu. Sastojao se od najjednostavnijih engleskih riječi, a novi jezik je prepoznat kao univerzalni kod za početnike, ili drugim riječima BASIC. Godina rođenjaVjeruje se da je ovaj jezik 1964. BASIC je postao široko rasprostranjen na PC-u u načinu interaktivnog dijaloga. Zašto je BASIC postao toliko popularan? Sve zbog činjenice da je bilo što lakše savladati, osim toga, jezik je pomogao u rješavanju mnogih različitih znanstvenih, ekonomskih, tehničkih, igraćih, pa čak i svakodnevnih zadataka. BASIC je imao drugačija zadana pravila, što se sada smatra znakom lošeg ukusa u programiranju. Nakon toga, u svijetu se pojavilo mnogo verzija ovog jezika, koje su često nekompatibilne, međutim, razumijevajući jednu od verzija, lako možete savladati drugu. Originalna verzija je imala samo tumač, ali sada postoji i kompajler.
Početkom šezdesetih, svi tada postojeći jezici bili su fokusirani na rješavanje raznih problema, ali su bili vezani i za specifičnu arhitekturu računara. Ovo se smatralo nedostatkom, pa je odlučeno da se razvije univerzalni programski jezik.
PL/1
Ovo je prvi višenamenski univerzalni jezik koji je kreirao IBM u SAD. Godine stvaranja 1963-1966. Smatra se da je ovo jedan od najčešćih jezika, prilagođen je za rješavanje mnogih problema u oblasti računarske tehnologije: planiranje, proučavanje različitih računarskih procesa, modeliranje i rješavanje logičkih problema, proučavanje logičkih kola, razvoj sistema za matematički softver.
Kada je PL/1 kreiran, u praksi su korišteni različiti koncepti i alati iz Algol-60, Fortrana, Cobola. PL/1 se smatra najfleksibilnijim i najbogatijim jezikom, koji dozvoljavakreirajte umetke, ispravite gotov tekst programa čak i tokom otklanjanja grešaka. Jezik je široko rasprostranjen, a prevodioci sa njega se koriste u mnogim vrstama računara. IBM čak i sada nastavlja podržavati ovaj jezik.
Pascal
Pascal je veoma popularan proceduralni jezik, posebno se koristi za personalne računare. Ovaj proceduralni programski jezik nastao je kao obrazovni jezik, godine njegovog nastanka su 1968-1971. Razvio Niklaus Wirth na ETH u Cirihu. Ovaj programski jezik je dobio ime po velikom francuskom matematičaru i filozofu Blaiseu Pascalu. Wirthov glavni zadatak je bio da stvori jezik koji bi se bazirao na najjednostavnijoj sintaksi, malom broju osnovnih struktura koje se transformišu u mašinski kod korišćenjem konvencionalnog kompajlera. Vrijedi napomenuti da je uspio.
Proceduralna paradigma Pascal programiranja zasniva se na sljedećim principima:
- Strukturirano programiranje. U ovom slučaju se koriste potprogrami, nezavisne strukture podataka. Programer uspeva da kreira lako čitljiv kod, razumljivu strukturu programa, pojednostavljuje testiranje i otklanjanje grešaka.
- Programiranje izgrađeno od vrha do dna. Zadatak je podijeljen na jednostavne zadatke koje treba riješiti, a na osnovu konstruiranih podzadataka već se gradi konačno rješenje općeg zadatka.
C jezik
Proceduralno programiranje C koje je razvio Bell Labs za implementaciju UNIX operativnog sistema, koji se prvobitno nije smatraomasa. Programeri su imali planove da jednostavno zamene Assembler, ali se pojavio samo poseban jezik C. Jedinstven je po tome što ima mogućnosti programskih jezika visokog nivoa i istovremeno ima sredstva za pristup funkcionalnim odnosima. C jezik nema koncept procedure, sintaksa je prilično jednostavna, nema strogog kucanja podataka, uključena je mogućnost izražavanja nekoliko radnji odjednom. Ovaj jezik je odmah privukao pažnju programera, dajući im dodatne mogućnosti za kreiranje zanimljivih programa. Do danas je jezik C prilično popularan, naširoko ga koriste profesionalci u programiranju. Sada je implementiran na mnogim računarskim platformama.
Šta je posebno kod proceduralnih jezika?
Ima ih samo nekoliko, tako da o svakom vrijedi govoriti. Ovo je:
- Modul. Deo programa koji se čuva u zasebnoj datoteci. Modul implementira skup opcija koje su povezane sa određenim varijablama, konstantama ili objektima.
- Funkcija. Ovo je kompletan, nezavisan dio koda koji rješava specifičan problem.
- Tip podataka. Ovaj koncept govori o određenom nizu informacija koji je definiran za jedan tip.
Razlike između proceduralnog i objektno orijentiranog programiranja
Mnogi programeri znaju da se proceduralni i objektno orijentisani programski jezici koriste u praksi prilikom kreiranja softvera ili web aplikacija. Koja je razlika? Sve je jednostavno, proceduralno i objektno-orijentirano programiranje se svuda koristi u praksi, ali postoje neke karakteristične točke. Tokom rada programer, postavljajući sebi određeni zadatak, razlaže ga na male, bira određene jezičke konstrukcije za implementaciju (petlje, funkcije, grane, strukturni operatori). To znači da je stručnjak vođen proceduralnim programiranjem.
OOP uključuje koncept "objekta", inače se nazivaju i instance klase, pošto je mnogo naslijeđeno iz klase. Nasljeđivanje je još jedan od principa razlikovanja OOP-a.
Proceduralni i funkcionalni jezici
Proceduralno i funkcionalno programiranje jesu isto ili ne? Funkcionalno programiranje je fokusirano na rješavanje problema u diskretnoj matematici, dok je proceduralno programiranje nešto širi koncept i uključuje puno programskih jezika za rješavanje određenih vrsta problema.
Šta odabrati za sebe?
Mnogi proceduralni programski jezici su zastarjeli. Da, neke od njih se još usavršavaju, ali ipak vrijedi obratiti pažnju samo na dio njih. Na primjer, jezik C. Danas je u svijetu uobičajeno, mnoge moderne platforme su izgrađene upravo na jeziku C, tako da ako želite da se razvijate u oblasti programiranja, onda biste trebali bolje upoznati C jezik., možete odabrati za sebe nešto drugo, što nije nužno vezano za proceduralne programske jezike.