Bol vytvorený prvý programovací jazyk. Ako si stále vyberáte svoj (prvý) programovací jazyk? Alebo ako klásť správne otázky? Čo je programovací jazyk

Ak uvažujete o učení sa programovania, programovací jazyk, ktorý sa rozhodnete vybrať ako prvý, je veľmi dôležitý, mal by súvisieť s tým, čo chcete robiť v budúcnosti a mal by byť relevantný. Aj keď programovanie vo všeobecnosti nie je pre lenivých, niektoré jazyky sa učia ľahšie ako iné a majú komunity, ktoré sa venujú učeniu a ponúkajú užitočné zručnosti na učenie sa iných programovacích jazykov.

Výberová schéma

Existujú otázky, ktoré sa kladú tak často, že na ich zodpovedanie vznikajú celé diagramy. Tu je napríklad jeden z nich, venovaný výberu prvého programovacieho jazyka.

Pri výbere svojho prvého programovacieho jazyka by ste mali triezvo zhodnotiť nasledujúce faktory:

  • Trh práce.
  • Dlhodobé vyhliadky na jazyk.
  • Ťažkosti s učením sa jazyka.
  • Čo presne môžete vytvoriť v procese štúdia a ukázať ostatným, udržať motiváciu.

Popularita a dopyt

JavaScript

JavaScript, nezamieňať s Java, je programovací jazyk, ktorý v 90. rokoch vyvinul Brendan Eich, predtým z Netscape Communications a teraz z Mozilla Foundation. JavaScript je jednou zo základných technológií, ktoré poháňajú webovú komunitu, ako ju poznáme. Nenechajte sa zmiasť, hoci JavaScript existuje mimo prehliadača, existuje predovšetkým v kontexte pripojených aplikácií a služieb.

Samotný jazyk je dynamický a dáva programátorom flexibilitu pri používaní objektovo orientovaných štýlov programovania (keďže samotný jazyk je primárne objektovo orientovaný), ako aj funkčných a imperatívnych. Väčšinu svojej syntaxe odvodzuje z jazyka C a ak plánujete akýmkoľvek spôsobom vyvíjať web, učenie JavaScriptu by malo byť na vašom zozname.

Našťastie sa JavaScript dá pomerne ľahko naučiť, už sa s ním môžete hrať vo vašom prehliadači, a hoci je tu už nejaký čas, rýchlo si získava na popularite. Mnohí z vás, ktorí ste ho nominovali, ste si všimli, že váš zisk pri učení JavaScriptu je obrovský, pretože ho môžete okamžite použiť na vytváranie vecí pre web, čo sa môže veľa ľudí naučiť kódovať.

Python

Môžem odporučiť aj Python.

Napriek množstvu problémov, ktoré sú pre Python historicky spojené, je naďalej vedúcim nástrojom v mnohých oblastiach:

Pôsobivé, však? Pokiaľ ide o veľké a populárne projekty napísané v Pythone, sú to také príšery ako:

Nájdete aj na našej webovej stránke.

Programovanie je náročný a zložitý proces, ktorému nie každý dokáže porozumieť. Strojový jazyk pozostáva z mnohých algoritmov a dnešné počítače sú také pokročilé vybavenie, pretože sú naprogramované. A história vývoja softvéru by nebola taká úspešná, keby pre stroje nebol vynájdený špeciálny jazyk, ktorý preložil symbolické kľúčové slová do strojových kódov. Pozrime sa, ako sa formovala história vývoja programovacích jazykov.

Prvé autokódy sa objavili v roku 1955 vďaka úsiliu vývojárov IBM pod vedením inžiniera Johna Backusa. Bol to jazyk vysokej úrovne nazývaný Fortran, nie súbor izolovaných jednoduchých príkazov, ale organizácia väčších kódov, ktoré sa začali nazývať operátory alebo algoritmické jazyky. Na ich preloženie do strojového kódu boli vynájdené prekladače, ktoré transformujú algoritmy a robia ich zrozumiteľnými pre elektronický počítač. To sa deje dvoma spôsobmi: interpretáciou a kompiláciou. Vďaka svojej jednoduchosti sa verzie Fortran rýchlo začali používať a posledná z nich je dodnes jedným z hlavných počítačov.

Toto však nie je jediný autokód pre autá. História vývoja programovacích jazykov pokračuje vytvorením algoritmov Algol, ktoré sa používajú najmä vo vedeckej komunite a obsahujú veľké množstvo nových konceptov. Táto udalosť sa koná v roku 1960. A o niečo neskôr zvedaví zamestnanci IBM prišli s jazykom Cobol, orientovaným na využitie v obchodnom prostredí a využívaným na spracovanie zložitých a objemných informácií ekonomického charakteru.

História vývoja programovacích jazykov pokračuje u profesorov Dartsmouth College T. Kurtza a J. Kemenyho, ktorí vyvinuli známy BASIC. Je oveľa jednoduchší ako Fortran, a preto bol použitý v roku Mal výbušný účinok, stal sa hlavnou sadou automatických programovacích kódov a počítače sa stali majetkom najbežnejších používateľov.

Jednoduché používanie a možnosť interaktívnej komunikácie sú najdôležitejšie výhody jazyka BASIC. Medzi nevýhody patrí absencia obmedzení pri kompilácii programov, čo ich veľmi často mätie a robí ich logicky nezrozumiteľnými. Programy napísané pomocou BASICu sú pomalé, pretože nie sú založené na kompilátoroch, ale na interpretoch.

Dnes vedci naďalej pracujú na jeho vylepšovaní a snažia sa ho priblížiť programu Pascal, ktorý ešte viac poznačil históriu vývoja programovacích jazykov. Profesor Polytechnickej univerzity v Zürichu Niklaus Wirth je právom považovaný za jej tvorcu. A svojmu vynálezu dal meno na počesť Pascala, ktorý bol prvým dizajnérom úplne prvého počítača. Toto je jeden z najjednoduchších a najdostupnejších programovacích jazykov, ktorý vám umožňuje písať jasné a zrozumiteľné programy.

História vývoja programovania by bola neúplná bez jazyka Ada, pomenovaného po prvej programátorke Ade Lovelace, dcére známeho potu Je to pokročilejší a univerzálnejší programovací jazyk založený na Pascale.

História vývoja softvéru má vo svojom arzenáli oveľa viac programovacích jazykov, ktoré sú napísané pre špeciálne oblasti použitia. V modelovaní sa používajú napríklad Simul, Simkrit a GPSS. Na ovládanie zariadenia sa používa jazyk FORT. napísané v jazyku SI. Databázy sa vytvárajú pomocou jazyka Kodasil. Logo, Robik a A.P. sú vhodné na učenie sa programovania. Ershova.

História vývoja programovania ešte nie je úplne napísaná a je nepravdepodobné, že sa tak stane v blízkej budúcnosti.

Jednou z najrevolučnejších myšlienok, ktoré viedli k vytvoreniu automatických digitálnych počítačov, bola myšlienka vyjadrená v 20. rokoch 19. storočia Charlesom Babidgeom o predbežnom zaznamenaní poradia činnosti stroja pre následnú automatickú realizáciu výpočtov - programu . A hoci nahrávanie programov na dierne štítky používané spoločnosťou Babyge, ktoré na ovládanie takýchto strojov vynašiel francúzsky vynálezca Joseph Marie Jacquard, technicky nemá nič spoločné s modernými metódami ukladania programov do PC, princíp je tu v podstate rovnaký. Od tohto momentu sa začína história programovania.
Ada Levellace, súčasníčka Babidge, je označovaná za prvú programátorku na svete. Teoreticky vyvinula niektoré techniky na riadenie postupnosti výpočtov, ktoré sa v programovaní používajú dodnes. Opísala tiež jednu z najdôležitejších konštrukcií takmer každého moderného programovacieho jazyka – slučku.

Revolučným momentom v histórii programovacích jazykov bol vznik systému na kódovanie strojových inštrukcií pomocou špeciálnych znakov, ktorý navrhol John Mauchly. Systém kódovania, ktorý navrhol, inšpiroval jednu z jeho spolupracovníčok, Grace Murray Hopper. Pri práci na počítači Mark-1 musela ona a jej skupina čeliť mnohým problémom a všetko, na čo prišli, bolo prvýkrát. Prišli najmä s podprogramami. A ďalší základný koncept programovacej techniky prvýkrát predstavil Hopper a jej skupina: „ladenie“.
Koncom 40-tych rokov vytvoril J. Mauchly systém s názvom „Short Code“, čo bol primitívny programovací jazyk na vysokej úrovni. V ňom programátor zapísal problém, ktorý mal vyriešiť, vo forme matematických vzorcov a potom pomocou špeciálnej tabuľky preložil znak po znaku, čím tieto vzorce previedol na dvojpísmenové kódy. Následne špeciálny počítačový program previedol tieto kódy na binárny strojový kód. Systém vyvinutý J. Mauchlym je považovaný za jeden z prvých primitívnych tlmočníkov.

Už v roku 1951 vytvorila Hopper prvý kompilátor na svete a tento pojem aj zaviedla. Prekladač Hopper vykonával funkciu kombinovania príkazov a počas prekladu organizoval podprogramy, prideľoval počítačovú pamäť a konvertoval príkazy vysokej úrovne (v tom čase pseudokódy) na príkazy stroja. „Podprogramy sú v knižnici (v počítači) a keď vyberiete materiál z knižnice, nazýva sa to kompilácia,“ vysvetlila pôvod termínu, ktorý vytvorila.

V roku 1954 skupina vedená G. Hopperom vyvinula systém, ktorý obsahoval programovací jazyk a kompilátor, ktorý bol neskôr nazvaný Math-Matic. Po úspešnom dokončení Math-Matic sa Hopper a jej tím pustili do vývoja nového jazyka a kompilátora, ktorý by používateľom umožnil programovať v jazyku podobnom bežnej angličtine. V roku 1958 sa objavil kompilátor Flow-Matic. Kompilátor Flow-Matic bol prvým jazykom pre komerčné úlohy spracovania dát.
Vývoj v tomto smere viedol k vytvoreniu jazyka COBOL (Common Business Oriented Language). Bol vytvorený v roku 1960. V tomto jazyku sú v porovnaní s Fortranom a Algolom menej rozvinuté matematické nástroje, ale dobre vyvinuté sú nástroje na spracovanie textu a organizácia výstupu dát vo forme požadovaného dokumentu. Bol určený ako primárny jazyk pre hromadné spracovanie dát v manažérskej a obchodnej oblasti.

Polovica 50. rokov je charakteristická rýchlym pokrokom v oblasti programovania. Úloha programovania v príkazoch stroja sa začala znižovať. Začali sa objavovať nové typy programovacích jazykov, ktoré pôsobili ako sprostredkovateľ medzi strojmi a programátormi. Prvým a jedným z najrozšírenejších bol Fortran (FORTRAN, z FORmula TRANslator - prekladač vzorcov), vyvinutý skupinou programátorov IBM v roku 1954 (prvá verzia). Tento jazyk bol zameraný na vedecké a technické výpočty matematického charakteru a je klasickým programovacím jazykom na riešenie matematických a inžinierskych úloh na PC.
Pre prvé programovacie jazyky na vysokej úrovni bola charakteristická predmetová orientácia jazykov.
Algol zaujíma osobitné miesto medzi programovacími jazykmi, ktorých prvá verzia sa objavila v roku 1958. Jedným z vývojárov Algolu bol „otec“ Fortranu John Backus. Názov ALGOritmický jazyk zdôrazňuje skutočnosť, že je určený na písanie algoritmov. Vďaka svojej jasnej logickej štruktúre sa Algol stal štandardným prostriedkom na písanie algoritmov vo vedeckej a technickej literatúre.

V polovici 60. rokov Thomas Kurtz a John Kameny (zamestnanci katedry matematiky na Dartmouth College) vytvorili špecializovaný programovací jazyk, ktorý pozostával z jednoduchých anglických slov. Nový jazyk bol nazvaný „Beginner All-Purpose Symbolic Instruction Code, alebo skrátene BASIC“. Za rok zrodu nového jazyka možno považovať rok 1964. Dnes si univerzálny jazyk BASIC (ktorý má veľa verzií) získal veľkú obľubu a je rozšírený medzi používateľmi PC rôznych kategórií po celom svete. To bolo značne uľahčené tým, že BASIC sa začal používať ako vstavaný jazyk osobných počítačov, ktorých rozšírené používanie sa začalo koncom 70. rokov. BASIC je však neštruktúrovaný jazyk, a preto nie je vhodný na výučbu kvalitného programovania. Aby sme boli spravodliví, treba poznamenať, že najnovšie verzie BASICu pre PC (napríklad QBasic) sa stali štrukturálnejšími a vo svojich vizuálnych schopnostiach sa približujú jazykom, ako je Pascal.

Vývojári zamerali jazyky na rôzne triedy úloh, spojili ich do tej či onej miery s konkrétnou architektúrou počítača a implementovali osobné chute a nápady. V 60. rokoch sa uskutočnili pokusy prekonať tento „rozpor“ vytvorením univerzálneho programovacieho jazyka. Prvým duchovným dieťaťom tohto smeru bol PL/1 (Programm Language One), vyvinutý spoločnosťou IBM v roku 1967. Tento jazyk tvrdil, že je schopný vyriešiť akýkoľvek problém: výpočtovú techniku, spracovanie textu, hromadenie a získavanie informácií. Ukázalo sa však, že je príliš zložitý, prekladač z neho nebol dostatočne optimálny a obsahoval množstvo neodhalených chýb.
Podporila sa však línia smerujúca k univerzalizácii jazykov. Staré jazyky boli modernizované do univerzálnych verzií: ALGOL-68 (1968), Fortran-77. Predpokladalo sa, že takéto jazyky sa budú rozvíjať a zlepšovať a začnú vytláčať všetky ostatné. Žiadny z týchto pokusov však nebol úspešný.

Jazyk LISP sa objavil v roku 1965. Hlavným pojmom v ňom je pojem rekurzívne definovaných funkcií. Keďže bolo dokázané, že každý algoritmus možno opísať pomocou určitej množiny rekurzívnych funkcií, LISP je v podstate univerzálny jazyk. S jeho pomocou môže počítač simulovať pomerne zložité procesy, najmä intelektuálnu činnosť ľudí.
Prolog bol vyvinutý vo Francúzsku v roku 1972 na riešenie problémov „umelej inteligencie“. Prológ vám umožňuje formálne opísať rôzne tvrdenia, logiku uvažovania a núti PC odpovedať na položené otázky.
Významnou udalosťou v histórii programovacích jazykov bolo vytvorenie jazyka Pascal v roku 1971. Jej autorom je švajčiarsky vedec Niklaus Wirth. Wirth ho pomenoval po veľkom francúzskom matematikovi a náboženskom filozofovi 17. storočia Blaise Pascalovi, ktorý vynašiel prvé sčítacie zariadenie, a preto bol nový jazyk pomenovaný po ňom. Tento jazyk bol pôvodne vyvinutý ako vzdelávací jazyk pre štruktúrované programovanie a teraz je skutočne jedným z hlavných jazykov na výučbu programovania na školách a univerzitách.

V roku 1975 sa dve udalosti stali míľnikmi v histórii programovania - Bill Gates a Paul Allen sa ohlásili vyvinutím svojej verzie BASICu a Wirth a Jensen vydali klasický popis jazyka „Pascal User Manual and Report“.

Nemenej pôsobivý, vrátane finančného úspechu, dosiahol Philip Kahn, Francúz, ktorý v roku 1983 vyvinul systém Turbo-Pascal. Podstatou jeho myšlienky bolo spojiť postupné fázy spracovania programu – kompilácia, úprava odkazov, ladenie a diagnostika chýb – do jedného rozhrania. Turbo Pascal nie je len jazyk a prekladač z neho, ale aj operačný shell, ktorý umožňuje užívateľovi pohodlne pracovať v Pascale. Tento jazyk prekročil svoj vzdelávací účel a stal sa profesionálnym programovacím jazykom s univerzálnymi schopnosťami. Vďaka týmto výhodám sa Pascal stal zdrojom mnohých moderných programovacích jazykov. Odvtedy sa objavilo niekoľko verzií Turbo Pascalu, poslednou je siedma.
Borland/Inprise dokončili produktový rad Turbo Pascal a prešli na vydanie vizuálneho vývojového systému pre Windows – Delphi.

Jazyk C (prvá verzia – 1972), ktorý je veľmi populárny medzi vývojármi softvérových systémov (vrátane operačných systémov), zanechal veľkú stopu v modernom programovaní. Tento jazyk bol vytvorený ako inštrumentálny jazyk pre vývoj operačných systémov, prekladačov, databáz a iných systémových a aplikačných programov. C kombinuje funkcie jazyka na vysokej úrovni a strojovo orientovaného jazyka, čo umožňuje programátorovi prístup ku všetkým strojovým zdrojom, ktoré jazyky ako BASIC a Pascal neposkytujú.
Obdobie od konca 60. do začiatku 80. rokov bolo charakterizované rýchlym rastom počtu rôznych programovacích jazykov, ktoré sprevádzali softvérovú krízu. V januári 1975 sa Pentagon rozhodol vniesť poriadok do chaosu prekladateľov a zriadil výbor, ktorý dostal príkaz vyvinúť jeden univerzálny jazyk. V máji 1979 bol vyhlásený víťaz – skupina vedcov vedená Jeanom Ikhbiom. Víťazný jazyk bol pokrstený ako Ada na počesť Augusty Ady Levellace. Tento jazyk je určený na tvorbu a dlhodobú (dlhodobú) údržbu veľkých softvérových systémov, umožňuje paralelné spracovanie a riadenie procesov v reálnom čase.

Po mnoho rokov bol softvér budovaný na základe operačných a procedurálnych jazykov ako Fortran, BASIC, Pascal, Ada, C. Ako sa programovacie jazyky vyvíjali, rozšírili sa ďalšie, zásadne odlišné prístupy k vytváraniu programov.
Existuje veľké množstvo klasifikácií programovacích jazykov podľa rôznych kritérií. Najbežnejšie klasifikácie sú:
 vysokoúrovňové (Pascal, BASIC) a nízkoúrovňové programovacie jazyky ​​(Assembler);
 striktne písané (Pascal) a voľne písané (BASIC);
 s podporou a bez podpory objektovo orientovaného programovania (C++) atď.

Zoberme si inú klasifikáciu. Programovacie jazyky sa delia na:
1) Strojovo orientované jazyky:
- strojové jazyky;
- symbolické kódovacie jazyky;
 automatické kódy;
- makro.
2) Strojovo nezávislé jazyky:
- problémovo orientované jazyky;
- univerzálne jazyky;
- interaktívne jazyky;
- neprocedurálne jazyky.

Strojovo orientované jazyky

Strojovo orientované jazyky sú jazyky, ktorých množiny operátorov a grafických prostriedkov výrazne závisia od vlastností PC (interný jazyk, štruktúra pamäte atď.). Strojovo orientované jazyky majú nasledujúce vlastnosti:
 vysoká kvalita vytvorených programov (kompaktnosť a rýchlosť vykonávania);
 schopnosť využívať špecifické hardvérové ​​zdroje;
 predvídateľnosť kódu objektu a poradia pamäte;
 na vytváranie efektívnych programov potrebujete poznať príkazový systém a prevádzkové funkcie tohto počítača;
 proces písania programov náročný na prácu (najmä v strojových jazykoch a JSC), ktorý je nedostatočne chránený pred chybami;
 nízka rýchlosť programovania;
 nemožnosť priameho používania programov zostavených v týchto jazykoch na iných typoch počítačov.
Strojovo orientované jazyky sú rozdelené do tried podľa stupňa automatického programovania.

Strojový jazyk

Jednotlivý počítač má svoj špecifický strojový jazyk (ďalej len ML), je predpísané vykonávať špecifikované operácie na nimi definovaných operandoch, preto je ML príkazový. Príkaz hlási informácie o umiestnení operandov a type vykonávanej operácie.
V nových modeloch PC existuje tendencia vylepšovať interné jazyky v hardvéri, aby sa implementovali zložitejšie príkazy, ktoré sú svojimi funkčnými činnosťami bližšie k operátorom algoritmických programovacích jazykov.

Symbolické kódovacie jazyky

Symbolické kódovacie jazyky (ďalej len SKL), rovnako ako ML, sú príkazové jazyky. Operačné kódy a adresy v strojových inštrukciách, ktoré sú postupnosťou binárnych (v internom kóde) alebo osmičkových (často používaných pri písaní programov) číslic, sú však v YSC nahradené symbolmi (identifikátormi), ktorých forma zápisu pomáha programátorovi ľahšie zapamätať sémantický obsah operácie. To zaisťuje výrazné zníženie počtu chýb pri zostavovaní programov.
Používanie symbolických adries je prvým krokom k vytvoreniu YASK. PC príkazy obsahujú symbolické adresy namiesto skutočných (fyzických) adries. Na základe výsledkov zostaveného programu sa určí požadovaný počet buniek na uloženie počiatočných medziľahlých a výsledných hodnôt. Prideľovanie adries, vykonávané oddelene od kompilácie programu v symbolických adresách, môže vykonať menej kvalifikovaný programátor alebo špeciálny program, čo značne uľahčuje prácu programátora.

Autokódy

Existujú jazyky, ktoré zahŕňajú všetky možnosti YSC prostredníctvom rozšíreného zavedenia makro príkazov - nazývajú sa autokódy.

V rôznych programoch existuje niekoľko pomerne často používaných sekvencií príkazov, ktoré zodpovedajú určitým postupom na konverziu informácií. Efektívna implementácia takýchto postupov je zabezpečená ich návrhom vo forme špeciálnych makro príkazov a ich zahrnutím do programovacieho jazyka prístupného programátorovi. Makropríkazy sa prekladajú do strojových príkazov dvoma spôsobmi – usporiadaním a generovaním. Stagingový systém obsahuje „kostry“ - sériu príkazov, ktoré implementujú požadovanú funkciu, označenú makro príkazom. Makro inštrukcie poskytujú prenos aktuálnych parametrov, ktoré sa počas procesu prekladu vložia do „kostra“ programu a premenia ho na skutočný strojový program.
V generačnom systéme existujú špeciálne programy, ktoré analyzujú makropríkaz, určujú, aká funkcia sa má vykonať, a vytvárajú potrebnú postupnosť príkazov, ktoré túto funkciu implementujú.
Oba tieto systémy využívajú JSC prekladače a sadu makro príkazov, ktoré sú zároveň operátormi autokódu.
Vyvinuté autokódy sa nazývajú assemblery. Servisné programy atď. sú zvyčajne napísané v jazykoch symbolov.

Makro

Jazyk, ktorý je nástrojom na nahradenie postupnosti znakov popisujúcich vykonávanie požadovaných činností počítača do zhustenejšej podoby, sa nazýva makro (náhradný nástroj).
V podstate je makro určené na skrátenie nahrávania pôvodného programu. Softvérový komponent, ktorý umožňuje fungovanie makier, sa nazýva makroprocesor. Makroprocesor prijíma makro definujúci a zdrojový text. Reakciou makroprocesora na volanie je vydanie výstupného textu.
Makrá môžu pracovať rovnako s programami aj s údajmi.

Strojovo nezávislé jazyky

Strojovo nezávislé jazyky sú prostriedkom na opis algoritmov na riešenie problémov a informácií, ktoré sa majú spracovať. Sú ľahko použiteľné pre široký okruh používateľov a nevyžadujú od nich znalosť špecifík organizácie fungovania PC.
Takéto jazyky sa nazývajú programovacie jazyky na vysokej úrovni. Programy zostavené v takýchto jazykoch sú sekvencie príkazov štruktúrovaných podľa pravidiel prezerania jazyka (úlohy, segmenty, bloky atď.). Jazykové operátory popisujú akcie, ktoré musí systém vykonať po preklade programu do ML.
Preto sú príkazové sekvencie (procedúry, podprogramy), často používané v strojových programoch, reprezentované v jazykoch vysokej úrovne jednotlivými príkazmi. Programátor nebol schopný detailne opísať výpočtový proces na úrovni strojových inštrukcií, ale zamerať sa na hlavné črty algoritmu.

Problémovo orientované jazyky

S rozširovaním oblastí aplikácie výpočtovej techniky vznikla potreba formalizovať prezentáciu formulácie a riešenia nových tried problémov. Bolo potrebné vytvoriť programovacie jazyky, ktoré by pomocou zápisov a terminológie v tejto oblasti umožnili popísať požadované algoritmy riešenia zadaných problémov, stali sa problémovo orientovanými jazykmi. Tieto jazyky sú zamerané na riešenie konkrétnych problémov a mali by poskytnúť programátorovi nástroje, ktoré mu umožnia stručne a jasne formulovať problém a získať výsledky v požadovanej forme.
Existuje veľa problematických jazykov, napr.
- Fortran, Algol – jazyky vytvorené na riešenie matematických problémov;
- Simula, Slang - pre modelovanie;
- Lisp, Snoball - pre prácu so zoznamovými štruktúrami.

Univerzálne jazyky

Univerzálne jazyky boli vytvorené pre širokú škálu úloh: komerčné, vedecké, modelovacie atď. Prvý univerzálny jazyk vyvinula spoločnosť IBM, z ktorej sa v poradí jazykov stal PL/1. Druhý najsilnejší univerzálny jazyk sa nazýva ALGOL-68.

Konverzačné jazyky

Vznik nových technických možností postavil pred systémových programátorov úlohu – vytvoriť softvérové ​​nástroje, ktoré zabezpečia rýchlu interakciu medzi človekom a PC, nazývajú sa interaktívne jazyky.
Táto práca prebiehala v dvoch smeroch. Špeciálne riadiace jazyky boli vytvorené, aby poskytli prevádzkový vplyv na dokončenie úloh, ktoré boli zostavené v akýchkoľvek predtým nevyvinutých (nedialógových) jazykoch. Boli vyvinuté aj jazyky, ktoré by okrem riadiacich účelov poskytovali aj popis algoritmov na riešenie problémov.
Potreba zabezpečiť rýchlu interakciu s používateľom si vyžadovala uloženie kópie zdrojového programu do pamäte počítača aj po prijatí objektového programu v strojovom kóde. Pri vykonávaní zmien v programe pomocou interaktívneho jazyka programovací systém pomocou špeciálnych tabuliek stanovuje vzťah medzi štruktúrami zdrojových a objektových programov. To vám umožní vykonať požadované redakčné zmeny v objektovom programe.
Jedným z príkladov konverzačných jazykov je BASIC.

Neprocedurálne jazyky

Neprocedurálne jazyky tvoria skupinu jazykov, ktoré popisujú organizáciu údajov spracovaných pomocou pevných algoritmov (tabuľkové jazyky a generátory zostáv) a jazyky na komunikáciu s operačnými systémami.
Rozhodovacie tabuľky umožňujú jasne opísať úlohu aj činnosti potrebné na jej vyriešenie a umožňujú jasne určiť, aké podmienky musia byť splnené predtým, ako sa pristúpi k akémukoľvek kroku. Jedna rozhodovacia tabuľka, popisujúca určitú situáciu, obsahuje všetky možné blokové schémy implementácií algoritmov riešenia.
Tabuľkové metódy ľahko ovládajú špecialisti akejkoľvek profesie. Programy napísané v tabuľkovom jazyku pohodlne opisujú zložité situácie, ktoré vznikajú počas analýzy systému.
Programovacie jazyky slúžia na rôzne účely a ich výber závisí od používateľskej prívetivosti, vhodnosti pre daný počítač a danú úlohu. A problémy pre počítač môžu byť veľmi rôznorodé: výpočtové, ekonomické, grafické, expertné atď. Táto rôznorodosť problémov riešených počítačom určuje rozmanitosť programovacích jazykov. V programovaní sa najlepšie výsledky dosahujú individuálnym prístupom na základe triedy problému, úrovne a záujmov programátora.

História vzniku programovacieho jazyka Basic a Visual Basic

Programovací jazyk Basic vytvorili v roku 1964 dvaja profesori z Dartmouth College, John Kenemi a Thomas Kurtz, aby študentov naučili programovacie zručnosti. Jazyk sa ukázal byť taký jednoduchý a zrozumiteľný, že sa po určitom čase začal používať v iných vzdelávacích inštitúciách. V roku 1975, s príchodom prvých mikropočítačov, štafetu Basic prevzali Bill Gates a Paul Allen, zakladatelia Microsoftu. Práve oni vytvorili novú verziu Basicu pre prvé počítače Altair (MITS Altairs), schopnú bežať v 4KB RAM. Postupom času sa práve táto verzia zmenila na jeden z najpopulárnejších programovacích jazykov na svete. Na ceste k vrcholu slávy mal Basic mnoho ťažkostí, ktoré vždy so cťou prekonal a keď sa objavili prvé osobné počítače IBM PC, stal sa štandardom v programovaní, no v podobe GW-Basic. Potom tu bol Turbo Basic, QuickBasic, Basic PDS, ale vždy pri vývoji novej verzie jazyka bola zachovaná kompatibilita s predchádzajúcimi verziami a program napísaný takmer pre prvý Basic mohol dobre (s malými zmenami) fungovať aj v ďalších verziách tohto jazyka. Jazyk. Ale prišli nové časy a začiatkom 90. rokov sa objavil operačný systém Microsoft Windows s novým grafickým užívateľským rozhraním (GUI).

Život programátorov sa stal peklom. Aby ste vytvorili jednoduchý program, museli ste napísať niekoľko stránok kódu: vytvoriť ponuky a okná, zmeniť písma, vyčistiť pamäť, „kresliť“ tlačidlá atď. Výhody nového rozhrania boli však také nepopierateľné, že už tretia verzia tohto operačného systému sa stala de facto štandardom pre osobný počítač. V tom čase v rámci Microsoftu prebiehalo niekoľko paralelných projektov na vytvorenie nového programovacieho jazyka pre Windows. A v roku 1991 sa pod heslom „teraz aj začínajúci programátori môžu ľahko vytvárať aplikácie pre Windows“ objavila prvá verzia nového nástroja Microsoft Visual Basic. Microsoft v tom momente pomerne skromne zhodnotil možnosti tohto systému a zacielil ho predovšetkým na kategóriu začiatočníkov a neprofesionálnych programátorov. Hlavnou úlohou vtedy bolo uviesť na trh jednoduchý a pohodlný vývojový nástroj vo vtedy celkom novom prostredí Windows, v ktorom programovanie robilo problém aj skúseným profesionálom. Programovací systém vytvorený vývojármi Visual Basicu umožnil „odstúpiť“ od zložitej vnútornej štruktúry Windowsu a vytvárať programy z „kociek“, ako v detskej stavebnici. Ponuky, okná, zoznamy, tlačidlá, polia na zadávanie textu a ďalšie prvky rozhrania Windows boli pridané do programu pomocou jednoduchých operácií drag&drop.

Programátori VB vytvorili svoj prvý program v priebehu niekoľkých minút od začiatku učenia sa tohto jazyka! Visual Basic navyše umožnil vývojárom vytvárať nové „kocky“ objekty, ktoré by sa dali použiť aj v programoch spolu so štandardnými. A hoci sa mnohí programátori v jazyku C potichu zasmiali nad pokusmi Microsoftu vytvoriť jednoduchý a zrozumiteľný nástroj na vývoj programov pre Windows, Visual Basic začal svoje víťazné ťaženie svetom a tento proces už nič nemohlo zastaviť. Posledné bariéry padli v roku 1994 s vydaním Visual Basic for Applications. Práve v tom čase, po zahrnutí VBA do Microsoft Office, sa Basic začal meniť na jeden z hlavných programovacích štandardov pre Windows. Pre Microsoft je jazyk Basic mimoriadne dôležitý. Vývoj verzie Basic pre počítač Altair 8800 znamenal začiatok programátorskej kariéry jeho zakladateľov Billa Gatesa a Paula Allena. Preto svojho času – v roku 1989, keď prišiel čas na distribúciu hlavných smerov tvorby vývojových prostredí v rôznych programovacích jazykoch medzi rôzne spoločnosti, si Microsoft ponechal QuickBasic – prostredie na vývoj programov v Basicu, odmietajúci napr. pracovať na programovaní v jazyku Pascal, pričom to nechal na Borland, ktorý naopak prestal pracovať na svojej verzii Basic (Pascal sa neskôr stal jazykom Delphi).

Microsoft Visual Basic, pôvodne určený ako hračka, vzal svet programovania útokom. Jeho popularita je spôsobená dvoma dôvodmi: relatívnou jednoduchosťou a produktivitou. Programy VB sú pomalšie ako ich náprotivky v C/C++, ale stále sú dostatočne rýchle na mnohé obchodné účely a vyžadujú oveľa menej času na vývoj. Formuláre boli rovnakou abstrakciou šetriacou námahou, akú ponúka VB programátorom Windows. VB IDE umožnilo navrhnúť okná graficky pretiahnutím ovládacích prvkov, ako sú tlačidlá a zoznamy, z panela nástrojov do formulára. Keď ste boli spokojní so vzhľadom formulára, mohli ste prejsť na stranu kódu a napísať obslužné rutiny udalostí pre každý ovládací prvok formulára.

Vývoj aplikácie vo VB teda spočíval vo vytvorení niekoľkých formulárov, ktoré medzi sebou hovorili a prípadne konzultovali potrebné informácie s databázou. Výsledná forma sa ukázala ako okno, ktoré ponúkalo oveľa pohodlnejší spôsob použitia okien. VB znížil počet chýb odstránením niektorých skrytých syntaxí C/C++. Okrem špeciálnych prípadov boli výrazy obmedzené na jeden riadok kódu a premenné museli byť deklarované a inicializované na samostatných riadkoch kódu. Operátory priraďovania a porovnávania používali rovnaký symbol, ale gramatika VB vyžadovala, aby sa tieto operátory používali spôsobom, ktorý objasňuje ich zámer.

Možno najdôležitejšie je, že neexistovali žiadne ukazovatele – požiadavka Billa Gatesa od prvých verzií Microsoft BASIC. Hoci sú ukazovatele užitočné, pretože umožňujú priamy prístup do pamäte na ľubovoľnej adrese, ich používanie je náchylné na chyby, ak sa nepoužívajú opatrne. Požiadavka BASICu na gramatickú jednoduchosť vychádza zo skutočnosti, že bol pôvodne vytvorený ako jazyk pre výučbu: „Beginner's All-purpose Symbolic Instructional Code.“ VB verzia 6 je už výkonný jazyk, ktorý možno použiť na vytváranie distribuovaných aplikácií pomocou Komponenty COM a Microsoft Transaction Server Microsoft navrhol trojvrstvový prístup pre architektúry klient-server, v ktorých tenké používateľské rozhrania interagovali so vzdialenými komponentmi VB na získavanie údajov z databázy alebo iného počítača.

Pomocou VBScript a VBA (VB for Applications) môžete písať skripty pre webové prehliadače a automatizovať aplikácie balíka Microsoft Office. Okrem toho je možné VB6 použiť na vytváranie ovládacích prvkov Active-X, ktoré fungujú s prehliadačom Internet Explorer, aj keď sa to robí len zriedka, pretože vyžaduje inštaláciu DLL runtime VB na počítači internetového klienta. Počnúc VB5 boli programy VB kompilované do strojového kódu, ale boli založené na použití knižnice DLL, ktorá poskytovala bežne používané funkcie a implementovala objektové schopnosti VB. Zaujímavé je, že kompilátor VB používa na preklad viacpriechodový režim a v konečnom dôsledku sa spolieha na kompilátor Microsoft C++, ktorý vytvára výstup strojového kódu po kompilácii do stredného jazyka. Semená .NET sú viditeľné v tejto funkcii VB - použitie runtime knižnice a C++ backend.

História vzniku programovacieho jazyka C#

Jazyk C# sa zrodil v júni 2000 ako výsledok starostlivej práce veľkej skupiny vývojárov Microsoftu na čele s Andersom Hejlsbergom. Tento muž je známy ako autor jedného z prvých kompilovaných programovacích jazykov pre osobné počítače IBM - Turbo Pascal. Pravdepodobne na území bývalého Sovietskeho zväzu mnohí skúsení vývojári a jednoducho ľudia, ktorí študovali programovanie v tej či onej forme na univerzitách, zažili čaro a jednoduchosť používania tohto produktu. Okrem toho sa Anders Hejlsberg počas pôsobenia v Borland Corporation preslávil tvorbou integrovaného prostredia Delphi (tento projekt viedol až do vydania verzie 4.0).
Nebola náhoda, že objavenie sa jazyka C# a iniciatívy .NET nastalo začiatkom leta 2000. Práve v tomto momente Microsoft pripravil priemyselné verzie nových komponentových technológií a riešení v oblasti messagingu a výmeny dát, as ako aj tvorbu internetových aplikácií (COM+, ASP+, ADO+ , SOAP, Biztalk Framework). Najlepším spôsobom, ako propagovať tieto nové produkty, je nepochybne vytvoriť sadu nástrojov pre vývojárov s ich plnou podporou. Toto je jeden z hlavných cieľov nového jazyka C#. Okrem toho, Microsoft už nemohol rozširovať rovnaké nástroje a vývojové jazyky, čím ich robil čoraz zložitejšie, aby spĺňali protichodné požiadavky na podporu moderného hardvéru a udržiavanie spätnej kompatibility s produktmi vytvorenými na začiatku 90. rokov. počas prvého objavenia sa systému Windows. Prichádza čas, keď je potrebné začať od nuly, aby sa vytvoril jednoduchý, ale komplexný súbor jazykov, prostredí a vývojových nástrojov, ktoré vývojárom umožnia jednoducho vytvárať moderné softvérové ​​produkty.

C# a .NET sú východiskovým bodom. Zjednodušene povedané, .NET je nová platforma, nové API pre programovanie v systéme Windows a C# je nový jazyk vytvorený od základov na prácu s touto platformou a na plné využitie pokroku vo vývojových prostrediach a našich pochopenie princípov objektovo orientovaného programovania za posledných 20 rokov.
Treba poznamenať, že spätná kompatibilita nie je stratená. Existujúce programy budú spustené a platforma .NET bola navrhnutá tak, aby fungovala s existujúcim softvérom. Komunikácia medzi komponentmi v systéme Windows sa teraz takmer úplne vykonáva pomocou COM. S ohľadom na túto skutočnosť má .NET schopnosť (a) vytvárať obaly okolo existujúcich komponentov COM, aby s nimi komponenty .NET mohli komunikovať, a (b) vytvárať obaly okolo komponentov .NET tak, aby vyzerali ako bežné komponenty COM.

Autori C# sa snažili vytvoriť jazyk, ktorý kombinuje jednoduchosť a výraznosť moderných objektovo orientovaných jazykov (ako Java) s bohatosťou a silou C++. Podľa Andersa Hejlsberga si C# preberá väčšinu svojej syntaxe z C++. Obsahuje najmä také vhodné dátové typy, ako sú štruktúry a enumerácie (ďalšiemu potomkovi C++ - Jave - tieto prvky chýbajú, čo spôsobuje určité nepríjemnosti pri programovaní). Syntaktické konštrukty C# sú dedené nielen z C++, ale aj z Visual Basicu. Napríklad C#, podobne ako Visual Basic, používa vlastnosti triedy. Podobne ako C++, aj C# umožňuje preťažovanie operátorov pre typy, ktoré vytvoríte (Java nepodporuje ani jednu funkciu). C# je vlastne hybrid rôznych jazykov. Zároveň C# nie je syntakticky o nič menej (ak nie viac) čisté ako Java, je také jednoduché ako Visual Basic a má takmer rovnakú silu a flexibilitu ako C++.

Vlastnosti C#:

Kompletný a dobre definovaný súbor základných typov.
- Zabudovaná podpora pre automatické generovanie dokumentácie XML. Automatické uvoľnenie dynamicky pridelenej pamäte.
- Schopnosť označiť triedy a metódy užívateľsky definovanými atribútmi. To môže byť užitočné pre dokumentáciu a môže to ovplyvniť proces kompilácie (napríklad môžete označiť metódy, ktoré by sa mali kompilovať iba v režime ladenia).
- Úplný prístup ku knižnici základných tried .NET, ako aj jednoduchý prístup k Windows API (ak to naozaj potrebujete).
- Ukazovatele a priamy prístup do pamäte, ak je to potrebné. Jazyk je však navrhnutý tak, že takmer vo všetkých prípadoch sa bez neho zaobídete.
- Podpora pre vlastnosti a udalosti štýlu VB.
- Jednoduchá zmena kompilačných kľúčov. Umožňuje získať spustiteľné súbory alebo knižnice komponentov .NET, ktoré možno volať iným kódom rovnakým spôsobom ako ovládacie prvky ActiveX (komponenty COM).
- Schopnosť používať C# na písanie dynamických webových stránok ASP.NET.

Jednou oblasťou, pre ktorú tento jazyk nie je určený, sú časovo kritické a vysoko výkonné programy, kde záleží na tom, či slučka trvá 1000 alebo 1050 strojových cyklov na vykonanie a zdroje musia byť uvoľnené okamžite. C++ zostáva najlepším nízkoúrovňovým jazykom v tejto oblasti. C# postráda niektoré kľúčové funkcie potrebné na vytváranie vysokovýkonných aplikácií, ako sú inline funkcie a deštruktory, ktoré sa zaručene spustia v určitých bodoch kódu. Tento jazyk sa tiež aktívne používa na vytváranie moderných videohier, napríklad hra Battlefield 3 je čiastočne napísaná v C# a celá v technológii .NET

Pozostával z inštalácie kľúčových spínačov na predný panel výpočtového zariadenia. Je zrejmé, že týmto spôsobom by sa dali písať len malé programy.

S rozvojom výpočtovej techniky sa objavil strojový jazyk, pomocou ktorého mohol programátor nastavovať príkazy, operujúce s pamäťovými bunkami, plne využívajúce možnosti stroja. Používanie väčšiny počítačov na úrovni strojového jazyka je však zložité, najmä pokiaľ ide o vstup/výstup. Preto sme museli od jeho používania upustiť.

Napríklad na načítanie bloku údajov z diskety môže programátor použiť 16 rôznych príkazov, z ktorých každý vyžaduje 13 parametrov, ako je číslo bloku na disku, číslo sektora na stope atď. po dokončení operácie ovládač vráti 23 hodnôt odrážajúcich prítomnosť a typy chýb, ktoré je potrebné analyzovať.

„Slová“ v strojovom jazyku sa nazývajú inštrukcie, z ktorých každý predstavuje jednu elementárnu akciu pre centrálny procesor, ako je napríklad čítanie informácií z pamäťovej bunky.

Každý model procesora má svoju vlastnú sadu strojových inštrukcií, hoci väčšina z nich je rovnaká. Ak procesor A plne rozumie jazyku procesora B, potom sa hovorí, že procesor A je kompatibilný s procesorom B. Procesor B bude považovaný za nekompatibilný s procesorom A, ak má A inštrukcie, ktoré procesor B nerozpozná.

V priebehu 60-tych rokov vzrástli nároky na vývoj softvéru a programy sa stali veľmi veľkými. Ľudia si začali uvedomovať, že tvorba softvéru je oveľa náročnejšia úloha, než si predstavovali. To viedlo k rozvoju štruktúrovaného programovania. S rozvojom štruktúrovaného programovania boli ďalším pokrokom postupy a funkcie. Napríklad, ak existuje úloha, ktorá sa vykonáva niekoľkokrát, potom ju možno deklarovať ako funkciu alebo procedúru a jednoducho ju zavolať počas vykonávania programu. Celkový programový kód sa v tomto prípade zmenší. Funkcie umožňujú vytvárať modulárne programy.

Ďalším pokrokom bolo použitie štruktúr, ktoré viedli k triedam. Štruktúry sú zložené dátové typy vytvorené pomocou iných typov. Napríklad štruktúra času. Zahŕňa: hodiny, minúty, sekundy. Programátor mohol vytvoriť časovú štruktúru a pracovať s ňou ako so samostatnou štruktúrou. Trieda je štruktúra, ktorá má svoje vlastné premenné a funkcie, ktoré s týmito premennými pracujú. To bol veľmi veľký úspech v oblasti programovania. Teraz by sa programovanie dalo rozdeliť do tried a testovať nie celý program pozostávajúci z 10 000 riadkov kódu, ale program mohol byť rozdelený do 100 tried a testovať každú triedu. Vďaka tomu bolo písanie softvérového produktu oveľa jednoduchšie.

Montážny jazyk

V prípade, že je potrebné mať efektívny program, namiesto strojových jazykov sa používajú strojovo orientované jazyky, ktoré sú im blízke - assemblery. Ľudia používajú namiesto strojových príkazov mnemotechnické príkazy.

Ale aj práca s assemblerom je dosť komplikovaná a vyžaduje si špeciálne školenie.

Štruktúrované programovanie zahŕňa presne definované riadiace štruktúry, programové bloky, inštrukcie bez nepodmieneného skoku (GOTO), samostatné podprogramy, podporu rekurzie a lokálnych premenných.

Podstatou tohto prístupu je schopnosť rozdeliť program na jednotlivé prvky.

Tiež vytvorené funkčné(aplikačné) jazyky ​​(Príklad: Lisp - angličtina. Spracovanie zoznamu, 1958) a hlavolam jazyky ​​(príklad: Prolog - angličtina) Programovanie v LOGIC, 1972).

Hoci štruktúrované programovanie pri použití prinieslo vynikajúce výsledky, aj keď zlyhá, keď program dosiahne určitú dĺžku. Aby bolo možné napísať komplexnejší (a dlhší) program, bol potrebný nový prístup k programovaniu.

OOP

V dôsledku toho boli koncom 70. a začiatkom 80. rokov vyvinuté princípy objektovo orientovaného programovania. OOP kombinuje najlepšie princípy štruktúrovaného programovania s výkonnými novými konceptmi, z ktorých základné sa nazývajú zapuzdrenie, polymorfizmus a dedičnosť.

Príkladmi objektovo orientovaných jazykov sú Object Pascal, C++, Java atď.

OOP vám umožňuje optimálne organizovať programy tak, že problém rozdelíte na jednotlivé časti a pracujete s každou zvlášť. Program v objektovo orientovanom jazyku, ktorý rieši určitý problém, v podstate popisuje časť sveta súvisiacu s týmto problémom.

Príklad písania programu v rôznych jazykoch

Jazyk na vysokej úrovni (Delphi)

X: = sin (y* Pi) + 1;

x86 assembler (koprocesor)

Fldpi fmul qword ptr [ Y] fsin fld1 fadd p st (1), st (0) fstp qword ptr [ X]

Strojový kód (hexadecimálny, každý príkaz začína na novom riadku)

D9 EB DC 0D D0 97 40 00 D9 FE D9 E8 DE C1 DD 1D 98 97 40 00

Strojový kód (binárna reprezentácia)

11011001 11101011 11011100 00001101 11010000 10010111 01000000 00000000 11011001 11111110 11011001 11101000 11011110 11000001 11011101 00011101 10011000 10010111 01000000 00000000

Odkazy


Nadácia Wikimedia. 2010.

  • Hej hej
  • Kabanov, Nikolaj Alexandrovič

Pozrite si, čo je „História programovacích jazykov“ v iných slovníkoch:

    História programovacieho jazyka Python- Python bol koncipovaný v 80. rokoch a jeho tvorba začala v decembri 1989 Guidom van Rossumom ako súčasť Centra pre matematiku a informatiku v Holandsku. Jazyk Python bol koncipovaný ako potomok programovacieho jazyka ABC, schopný spracovať... ... Wikipedia

    Chronológia programovacích jazykov- Zoznamy programovacích jazykov Podľa kategórie Chronologická Genealogická Chronológia programovacích jazykov Chronologicky usporiadaný zoznam programovacích jazykov. Obsah... Wikipedia

    Porovnanie programovacích jazykov- Tento článok by mal byť wikiifikovaný. Naformátujte ho podľa pravidiel formátovania článku. Konvencie... Wikipedia

    Stručná história vývoja programovacích jazykov- Ako sa vyvíjala počítačová technológia, vznikli rôzne techniky programovania. V každej fáze bol vytvorený nový prístup, ktorý pomáhal programátorom so zvyšujúcou sa zložitosťou programov. Obsah 1 Začiatok vývoja 2 Assembler 3 Štruktúra ... Wikipedia

    História logiky- študuje vývoj vedy o formách a zákonitostiach správneho myslenia (logiky). Vznik logiky ako rozvinutej analýzy princípov inferencie sa týka výlučne troch miestnych civilizácií, a to: Číny, Indie a staroveku ... ... Wikipedia

    História Linuxu- Tento článok alebo sekciu je potrebné revidovať. Prosím o zlepšenie článku v súlade s pravidlami pre písanie článkov... Wikipedia

    História slobodného softvéru- Fráza „slobodný softvér“ alebo slobodný softvér sa vzťahuje na produkty distribuované na základe liberálnych licencií, ktoré používateľovi poskytujú viac možností ako tradičné softvérové ​​licencie... ... Wikipedia

Je veľmi dôležité poznať všeobecnú históriu programovacích jazykov a históriu vývoja známych a neznámych jazykov. V tomto článku sa s tým zoznámite, ale najprv si spomeňme na „Čo je to programovací jazyk?

Programovací jazyk je systém notácie a pravidiel, ktorý vám umožňuje napísať program na riešenie problému vo forme sekvenčného textu vo forme vhodnej pre človeka.

50-te roky

V päťdesiatych rokoch dvadsiateho storočia, s príchodom vákuových elektrónkových počítačov, sa začal rýchly vývoj programovacích jazykov. Programovanie začalo písaním programov priamo vo forme strojových inštrukcií (v kódoch, ako hovoria programátori). Počítače, ktoré v tom čase stáli podstatne viac ako vývoj akéhokoľvek programu, vyžadovali vysoko efektívny kód.

Na uľahčenie kódovania bola vyvinutá strojová orientácia, ktorá umožnila písať strojové inštrukcie v symbolickej forme. Jazyk symbolických inštrukcií závisel od inštrukčného systému konkrétneho počítača. Bolo to dosť pohodlné na programovanie malých úloh, ktoré si vyžadovali maximálnu rýchlosť vykonávania.

Veľké projekty sa však v jazyku symbolických znamienok vyvíjali ťažko. Hlavným problémom bolo, že program napísaný v Assembly bol viazaný na architektúru konkrétneho počítača a nedal sa preniesť na iné stroje. Keď bol počítač vylepšený, všetky programy v Assembly museli byť prepísané nanovo.

Takmer okamžite s príchodom počítačov boli vyvinuté jazyky na vysokej úrovni, t.j. jazyky, ktoré nezávisia od konkrétnej architektúry. Ak chcete spustiť program v jazyku vysokej úrovne, musíte ho najskôr preložiť do jazyka strojových príkazov. Špeciálny program, ktorý takýto preklad vykonáva, sa nazýva prekladač alebo kompilátor.

Preložený program potom vykoná priamo počítač. Existuje tiež možnosť preložiť program do stredného jazyka, ktorý nezávisí od architektúry konkrétneho počítača, ale napriek tomu je čo najbližšie k jazyku strojových príkazov.

Program stredného jazyka je potom vykonávaný špeciálnym programom nazývaným tlmočník. Je tiež možné kompilovať za behu, keď sa vykonávaný fragment programu preloží z medzijazyka do jazyka strojových príkazov bezprostredne pred spustením.

V polovici 50. rokov bol pod vedením Johna Backusa vyvinutý pre IBM vysokoúrovňový algoritmický programovací jazyk FORTRAN. Napriek tomu, že už došlo k vývoju v jazykoch, ktoré konvertovali aritmetické výrazy na strojový kód, vytvorenie jazyka FORTRAN (FORmula TRANslator), ktorý poskytoval možnosť písať výpočtový algoritmus pomocou podmienených príkazov a vstupných/výstupných operátorov, sa stalo východiskový bod éry programovacích jazykov na vysokej úrovni.

Ako alternatíva k jazyku FORTRAN, pôvodne zameraný na architektúru IBM, bol vyvinutý ALGOL (ALGOritmický jazyk) pod vedením Petra Naura koncom 50. rokov. Hlavným cieľom vývojárov tohto jazyka bola nezávislosť od špecifickej architektúry počítačového systému.

Okrem toho sa tvorcovia jazyka ALGOL snažili vyvinúť jazyk vhodný na opis algoritmov a používanie systému zápisu blízkeho tomu, ktorý sa používa v matematike. FORTRAN a ALGOL boli prvé jazyky zamerané na výpočtové programovanie.

60-te roky

Koncom 60-tych rokov bol pod vedením Nayarda a Dahla vyvinutý jazyk Simula-67 využívajúci koncept užívateľom definovaných dátových typov. V skutočnosti je to prvý jazyk, ktorý používa koncept tried.

70-te roky

V polovici 70. rokov Wirth navrhol jazyk Pascal, ktorý sa okamžite stal široko používaným. Zároveň sa z iniciatívy amerického ministerstva obrany začalo pracovať na vytvorení jazyka na vysokej úrovni s názvom Ada – na počesť Ady Lovelace, programátorky a dcéry lorda Byrona.

Tvorba jazyka začala definovaním požiadaviek a vývojom špecifikácií. Na projekte pracovali štyri nezávislé skupiny, no všetky používali ako základ Pascal. Začiatkom osemdesiatych rokov minulého storočia bol vyvinutý prvý priemyselný kompilátor jazyka Ada.

C vývoj

Univerzálny programovací jazyk vyvinuli v polovici 70. rokov Denis Ritchie a Ken Thompson. Tento jazyk sa stal populárnym systémovým programovacím jazykom a svojho času sa používal na písanie jadra operačného systému UNIX.

Jazykový štandard C bol vyvinutý pracovnou skupinou ANSI v roku 1982. Medzinárodný štandard pre jazyk C bol prijatý v roku 1990. Jazyk C vytvoril základ pre vývoj programovacích jazykov a Java.

Jazyk C umožnil skutočne zbaviť sa Assemblera pri vytváraní operačných systémov. Napríklad takmer celý text operačného systému Unix je napísaný v jazyku C, a teda nezávisí od konkrétneho počítača.

Hlavnou výhodou C je jeho jednoduchosť a absencia pseudovedeckých riešení. Mechanizmus odovzdávania parametrov funkcii (iba hodnotou) je opísaný jednoducho a jasne. Programátor vytvárajúci program v C vždy jasne chápe, ako bude tento program vykonaný.

Koncept ukazovateľa, statických a automatických (zásobníkov) premenných jazyka C najviac odráža štruktúru akéhokoľvek moderného počítača, preto sú programy C efektívne a vhodné na ladenie.

V súčasnosti je prevažná väčšina programov napísaná v C a C++. Rozhranie ľubovoľného operačného systému (tzv. API - Application Program Interface), t.j. súbor systémových volaní určených pre vývojárov aplikácií je zvyčajne súbor funkcií v jazyku C.

Spolu s algoritmickými jazykmi sa paralelne vyvíjali jazyky určené na spracovanie obchodných informácií, ako aj jazyky umelej inteligencie. Prvý obsahuje jazyk COBOL (COMMON Business Oriented Language) a druhý zahŕňa jazyky LISP (Spracovanie zoznamu) a Prolog.

Jazyk LISP, vyvinutý v 60. rokoch pod vedením J. McCarthyho, bol prvým funkčným jazykom na spracovanie zoznamov, ktorý našiel široké uplatnenie v teórii hier.

90-te roky

V 90. rokoch sa s rozšírením internetu rozšírili možnosti distribuovaného spracovania dát, čo ovplyvnilo aj vývoj programovacích jazykov. Objavili sa jazyky zamerané na vytváranie serverových aplikácií, ako napríklad Perl, Document Description Languages ​​a XML.

Tradičné programovacie jazyky C++ a Pascal tiež prešli zmenami: programovací jazyk začal znamenať nielen funkčnosť samotného jazyka, ale aj knižnice tried, ktoré poskytuje programovacie prostredie.

Dôraz sa presunul zo špecifikácie samotných programovacích jazykov na štandardizáciu mechanizmov interakcie distribuovaných aplikácií. Objavili sa nové technológie - COM a CORBA, ktoré špecifikujú interakciu distribuovaných objektov.

Oblasti použitia programovacích jazykov

V súčasnosti sa programovacie jazyky používajú v širokej škále oblastí ľudskej činnosti, ako napríklad:

  • vedecké výpočty (jazyky C++, FORTRAN, Java);
  • systémové programovanie (jazyky C++, Java);
  • spracovanie informácií (jazyky C++, COBOL, Java);
  • umelá inteligencia (LISP, Prolog);
  • publikačná činnosť (Postscript, TeX);
  • vzdialené spracovanie informácií (Perl, PHP, Java, C++);
  • popis dokumentov (HTML, XML).

Na základe histórie programovacích jazykov môžeme povedať, že v priebehu času sa niektoré jazyky vyvinuli, získali nové funkcie a zostali v dopyte, zatiaľ čo iné stratili svoj význam a dnes sú v najlepšom prípade čisto teoretické.



 

Môže byť užitočné prečítať si: