Uživatelské nástroje

Nástroje pro tento web


it:lang:4gl

4GL: Čtvrtá generace programovacích jazyků

4GL (Fourth-Generation Language) jsou programovací jazyky navržené pro specifické účely, které se vyznačují vysokou úrovní abstrakce. Zatímco 3GL (jako C++ nebo Java) jsou procedurální (říkáte počítači „jak“ má něco udělat), 4GL jsou často neprocedurální nebo deklarativní (říkáte počítači „co“ má udělat).

Cílem 4GL je zkrátit dobu vývoje, snížit náklady a umožnit i lidem, kteří nejsou profesionálními programátory, efektivně pracovat s daty.

1. Klíčové vlastnosti 4GL

  • Deklarativní přístup: Programátor definuje pouze požadovaný výsledek, nikoliv přesný algoritmus (např. „najdi všechny zákazníky z Prahy“).
  • Vysoká abstrakce: Jeden příkaz v 4GL může nahradit stovky řádků kódu v jazyce C nebo Java.
  • Doménová orientace: Většina 4GL je úzce zaměřena na konkrétní oblast, nejčastěji na práci s databázemi, reportování nebo analýzu dat.
  • Rychlost vývoje (RAD): Umožňuje velmi rychle vytvářet prototypy aplikací.

2. Oblasti využití a příklady

A. Dotazovací jazyky (Query Languages)

Nejznámějším zástupcem celé čtvrté generace je SQL (Structured Query Language). Slouží k manipulaci s daty v relačních databázích. * Příklad: `SELECT Name FROM Users WHERE City = 'Brno';`

B. Generátory sestav (Report Generators)

Nástroje pro vytváření komplexních tiskových výstupů a grafů z databází bez nutnosti psát kód pro formátování (např. Oracle Reports, Crystal Reports).

C. Statistické a matematické systémy

Jazyky jako R, SAS nebo MATLAB umožňují provádět složité analýzy pomocí vestavěných funkcí pro statistiku a vizualizaci.

D. Low-code a No-code platformy

Moderní nástroje jako Salesforce (SOQL) nebo systémy pro automatizaci podnikových procesů (ERP/CRM), kde se logika definuje pomocí maker nebo jednoduchých skriptů.

3. Srovnání generací

Vlastnost 3GL (např. C++) 4GL (např. SQL)
Zaměření Univerzální (všeobecné) Specifické (data, reporty)
Styl zápisu Jak to udělat (krok za krokem) Co chci získat (výsledek)
Efektivita programátora Nižší (více psaní) Vysoká (méně psaní)
Výkon programu Velmi vysoký (optimalizovaný) Nižší (závisí na interpretu/stroji)

4. Výhody a nevýhody

Výhody:

  • Výrazně méně chyb díky kratšímu kódu.
  • Snadná údržba a čitelnost pro analytiky.
  • Rychlá reakce na změny požadavků uživatelů.

Nevýhody:

  • Omezenost: Jazyk je skvělý v tom, k čemu byl navržen (např. databáze), ale nepoužitelný pro jiné věci (např. psaní ovladačů hardwaru).
  • Hardwarové nároky: Vyšší abstrakce vyžaduje více paměti a výkonu procesoru.
  • Ztráta kontroly: Programátor nemá kontrolu nad tím, jak přesně se data na pozadí zpracovávají.

Související články:

Tagy: programming_languages 4GL sql data_analysis development_speed

it/lang/4gl.txt · Poslední úprava: autor: admin