Historie programovacích jazyků
Z MiS
(Rozdíly mezi verzemi)
m (Přidána do kategorie Historie IT) |
(Doplněn text, aby byl více samovysvětlující.) |
||
Řádka 2: | Řádka 2: | ||
== 1843 „První program“ == | == 1843 „První program“ == | ||
− | *Ada Lovelace | + | * Ada Lovelace |
− | *Poznámka: „první program“ tedy napsala žena, nikoli muž. ;) | + | * Poznámka: „první program“ tedy napsala žena, nikoli muž. ;) |
− | *Výpočet Bernoulliho čísel na Babbageově Analytical Engine. | + | * Výpočet Bernoulliho čísel na Babbageově Analytical Engine. |
+ | * Vzhledem k tomu, že funkční verzi stroje Analytical Engine se podařilo sestrojit až v 70. letech 20. století, jednalo se pouze o popis algoritmu. | ||
+ | |||
+ | |||
== 40. a 50. léta Strojový kód, děrné štítky, assemblery == | == 40. a 50. léta Strojový kód, děrné štítky, assemblery == | ||
− | *Assembler | + | * Assembler → pojmenování instrukcí |
− | *1948 sada instrukcí pro ENIAC (počítač sám stvořený už 1943) | + | * 1948 sada instrukcí pro ENIAC (počítač sám stvořený už 1943) |
+ | |||
+ | |||
== 60. léta == | == 60. léta == | ||
* 1955 FORTRAN | * 1955 FORTRAN | ||
** první vyšší programovací jazyk | ** první vyšší programovací jazyk | ||
− | *LISP | + | * LISP |
− | *COBOL | + | * COBOL |
** hromadné zpracování dat, předchůdce databází | ** hromadné zpracování dat, předchůdce databází | ||
− | *Algol 60 | + | * Algol 60 |
**koncept skrývání kódu (vnitřní proměnné) | **koncept skrývání kódu (vnitřní proměnné) | ||
− | *Algol 68 | + | * Algol 68 |
− | **paralelní výpočty, funkce | + | ** paralelní výpočty, funkce |
− | **ale ne moc populární, považován za složitý | + | ** ale ne moc populární, považován za složitý |
− | **z něj se později vyvinul Pascal (Niklaus Wirth) | + | ** z něj se později vyvinul Pascal (Niklaus Wirth) |
− | *databázové systémy (postupný rozvoj) | + | * databázové systémy (postupný rozvoj) |
+ | |||
+ | |||
== 70. léta == | == 70. léta == | ||
*1970 relační databáze | *1970 relační databáze | ||
− | **E. F. Codd | + | ** Významný přínos výzkumník E. F. Codd |
− | *1974 | + | * 1974–1978 Jazyk SQL pro dotazování nad databázemi |
− | *1969 | + | * 1969–1973 Programovací jazyk C |
− | **spojen s Unixem, velký rozvoj | + | ** spojen s Unixem, velký rozvoj |
− | **orientovaný na programování systémových programů | + | ** orientovaný na programování systémových programů |
− | **Ritchie, Thompson | + | ** Ritchie, Thompson |
− | *Simula | + | ** Z&nbps;jazyka C vychází velká část dnešních programovacích jazyků (Java, C#, C++, PHP, Javascript,...). Proto je zápis kódu v těchto jazycích hodně podobný. |
− | **nad Algolem 60 | + | * Simula |
− | **první objektově orientovaný jazyk | + | ** nad Algolem 60 |
− | *1972 SmallTalk | + | ** první objektově orientovaný programovací jazyk |
− | **čistě | + | * 1972 SmallTalk |
− | *Prolog | + | ** čistě objektově orientovaný programovací jazyk |
− | **matematická logika | + | ** Nezná jiné datové typy než objekt (není tam tedy například nic jako v Javě <code>int</code>, jen předdefinovaná třída <code>Integer</code>). |
+ | * Prolog | ||
+ | ** matematická logika | ||
+ | |||
+ | |||
== 80. léta == | == 80. léta == | ||
*snaha o jazyky páté generace | *snaha o jazyky páté generace | ||
**programátor nezadává pořadí volání funkcí | **programátor nezadává pořadí volání funkcí | ||
*velké systémy | *velké systémy | ||
+ | |||
+ | |||
== 90. léta == | == 90. léta == | ||
*jazyky pro web | *jazyky pro web | ||
Řádka 51: | Řádka 64: | ||
**1995 PHP | **1995 PHP | ||
**1995 JavaScript | **1995 JavaScript | ||
+ | |||
+ | |||
== Po roce 2000 == | == Po roce 2000 == | ||
− | * | + | * Virtualizace, cloud, mikroslužby |
− | * | + | * Zjednodušení správy paměti |
− | **garbage collector | + | ** garbage collector — automatické uvolnění již nevyužívané paměti (ve starších jazycích si musel programátor sám alokovat paměť pro objekty a následně se také starat o uvolňování paměti) |
− | **C# | + | ** Tuto techniku využívají běžně: C#, Java, skriptovací jazyky. |
− | ** | + | ** |
− | + | ** Existovalo i dříve (například Java v 90. letech 20. století), ale pro tehdejší počítače to bylo značně výkonově náročné, takže se nedoporučovalo používat tyto jazyky pro programování systémových aplikací. | |
− | * | + | * Ukládání objektů do databází (bez nutnosti rozložit na jednotlivé položky) |
− | nejvýznamnější jazyky dnes | + | |
− | * | + | Mezi nejvýznamnější jazyky dnes bývají řazeny (v různém pořadí): |
+ | * C#, Java, Python, PHP, Perl, C++, Javascript... | ||
+ | * Konkrétní pořadí oblíbenosti se liší podle účelu použití a konkrétního výzkumu. Zde uvádíme jen ty velmi často citované. | ||
+ | |||
== Související stránky == | == Související stránky == | ||
* [[Programovací jazyky]] | * [[Programovací jazyky]] | ||
− | == Zdroje | + | |
+ | == Zdroje == | ||
* [http://en.wikipedia.org/wiki/History_of_programming_languages Wikipedia.org > History of programming languages] | * [http://en.wikipedia.org/wiki/History_of_programming_languages Wikipedia.org > History of programming languages] | ||
* [http://cs.wikipedia.org/wiki/Datab%C3%A1ze Wikipedia.org > Databáze] | * [http://cs.wikipedia.org/wiki/Datab%C3%A1ze Wikipedia.org > Databáze] |
Verze z 19. 5. 2020, 10:14
Obsah |
1843 „První program“
- Ada Lovelace
- Poznámka: „první program“ tedy napsala žena, nikoli muž. ;)
- Výpočet Bernoulliho čísel na Babbageově Analytical Engine.
- Vzhledem k tomu, že funkční verzi stroje Analytical Engine se podařilo sestrojit až v 70. letech 20. století, jednalo se pouze o popis algoritmu.
40. a 50. léta Strojový kód, děrné štítky, assemblery
- Assembler → pojmenování instrukcí
- 1948 sada instrukcí pro ENIAC (počítač sám stvořený už 1943)
60. léta
- 1955 FORTRAN
- první vyšší programovací jazyk
- LISP
- COBOL
- hromadné zpracování dat, předchůdce databází
- Algol 60
- koncept skrývání kódu (vnitřní proměnné)
- Algol 68
- paralelní výpočty, funkce
- ale ne moc populární, považován za složitý
- z něj se později vyvinul Pascal (Niklaus Wirth)
- databázové systémy (postupný rozvoj)
70. léta
- 1970 relační databáze
- Významný přínos výzkumník E. F. Codd
- 1974–1978 Jazyk SQL pro dotazování nad databázemi
- 1969–1973 Programovací jazyk C
- spojen s Unixem, velký rozvoj
- orientovaný na programování systémových programů
- Ritchie, Thompson
- Z&nbps;jazyka C vychází velká část dnešních programovacích jazyků (Java, C#, C++, PHP, Javascript,...). Proto je zápis kódu v těchto jazycích hodně podobný.
- Simula
- nad Algolem 60
- první objektově orientovaný programovací jazyk
- 1972 SmallTalk
- čistě objektově orientovaný programovací jazyk
- Nezná jiné datové typy než objekt (není tam tedy například nic jako v Javě
int
, jen předdefinovaná třídaInteger
).
- Prolog
- matematická logika
80. léta
- snaha o jazyky páté generace
- programátor nezadává pořadí volání funkcí
- velké systémy
90. léta
- jazyky pro web
- objektové programování do starších jazyků
- Object Pascal
- Visual Basic
- Java
- skriptovací jazyky
- tvorba testů
- on-line aplikace
- 1995 PHP
- 1995 JavaScript
Po roce 2000
- Virtualizace, cloud, mikroslužby
- Zjednodušení správy paměti
- garbage collector — automatické uvolnění již nevyužívané paměti (ve starších jazycích si musel programátor sám alokovat paměť pro objekty a následně se také starat o uvolňování paměti)
- Tuto techniku využívají běžně: C#, Java, skriptovací jazyky.
- Existovalo i dříve (například Java v 90. letech 20. století), ale pro tehdejší počítače to bylo značně výkonově náročné, takže se nedoporučovalo používat tyto jazyky pro programování systémových aplikací.
- Ukládání objektů do databází (bez nutnosti rozložit na jednotlivé položky)
Mezi nejvýznamnější jazyky dnes bývají řazeny (v různém pořadí):
- C#, Java, Python, PHP, Perl, C++, Javascript...
- Konkrétní pořadí oblíbenosti se liší podle účelu použití a konkrétního výzkumu. Zde uvádíme jen ty velmi často citované.
Související stránky