Programovací jazyky se obvykle dělí do pěti generací.
První generace ( angl. first-generation programming language , 1GL) zahrnuje strojové jazyky - programovací jazyky na úrovni instrukcí procesoru konkrétního stroje. K programování nebyl použit žádný překladač , příkazy programu se zadávaly přímo do strojového kódu přepínači na předním panelu stroje. Takové jazyky byly dobré pro podrobné pochopení fungování konkrétního stroje, ale bylo obtížné se naučit a řešit aplikované problémy.
Pojmy „první generace“ a „druhá generace“ byly zavedeny současně s pojmem „třetí generace“. Ve skutečnosti se tyto termíny v té době nepoužívaly. S příchodem jazyků na vysoké úrovni se jazyky symbolických instrukcí začaly připisovat první generaci jazyků.
Jazyky druhé generace (2GL) byly vytvořeny, aby usnadnily tvrdou práci programování posunutím jazykových výrazů z nízkoúrovňových konceptů strojů blíže k tomu, jak si programátor normálně myslí. Tyto jazyky se objevily v 50. letech 20. století, zejména Fortran a Algol . Nejdůležitějším problémem, kterému vývojáři jazyků druhé generace čelili, byl úkol přesvědčit zákazníky, že kód generovaný kompilátorem funguje dostatečně dobře, aby ospravedlnil opuštění programování v assembleru. Skepse ohledně možnosti vytvářet efektivní programy pomocí automatických kompilátorů byla docela běžná, takže vývojáři takových systémů museli prokázat, že skutečně dokážou generovat kód téměř stejně efektivně jako ruční kódování a pro téměř jakýkoli zdrojový úkol.
Třetí generace (3GL) byla původně chápána jako všechny jazyky vyšší úrovně než jazyk symbolických instrukcí. Hlavním rozlišovacím znakem jazyků třetí generace byla hardwarová nezávislost , tedy vyjádření algoritmu ve formě, která nezávisí na specifických vlastnostech stroje, na kterém bude spuštěn. Kód napsaný v jazyce třetí generace je před provedením přeložen buď přímo do strojových instrukcí, nebo do kódu jazyka assembleru a poté sestaven. Při kompilaci již na rozdíl od předchozích generací neexistuje vzájemná shoda mezi instrukcemi programu a generovaným kódem.
Interpretace programů se stala široce používanou - v tomto případě se instrukce programu nepřevádějí do strojového kódu, ale jsou prováděny přímo jedna po druhé. Nezávislosti na hardwaru je dosaženo použitím interpretu zkompilovaného pro konkrétní hardwarovou platformu.
Termín programovací jazyky čtvrté generace (4GL) je lépe chápán jako vývojová prostředí čtvrté generace . Odkazují na časové období od 70. do počátku 90. let.
Jazyky této generace jsou určeny pro realizaci velkých projektů, zvyšují jejich spolehlivost a rychlost tvorby, jsou zaměřeny na specializované oblasti použití a používají nikoli univerzální, ale objektově orientované jazyky , které operují se specifickými koncepty úzký předmět. Tyto jazyky obsahují výkonné operátory, které umožňují na jednom řádku popsat takovou funkcionalitu, která by vyžadovala tisíce řádků zdrojového kódu v jazycích mladších generací [1] .
Zrození jazyků páté generace nastalo v polovině 90. Patří sem také systémy pro automatickou tvorbu aplikačních programů pomocí vizuálních vývojových nástrojů bez znalosti programování . Hlavní myšlenkou byla možnost automatického generování výsledného textu v univerzálních programovacích jazycích (které je nutné zkompilovat). Pokyny se do počítače zadávají v co nejnázornější podobě metodami, které jsou pro člověka neznalého programování nejvhodnější [1] .
Programovací jazyky | |
---|---|
|