Obsah
COBOL (Common Business-Oriented Language)
COBOL je imperativní, procedurální a od roku 2002 i objektově orientovaný programovací jazyk. Byl vytvořen v roce 1959 na popud amerického ministerstva obrany pod vedením Grace Hopperové. Jeho cílem bylo vytvořit jazyk, který se blíží přirozené angličtině a je čitelný i pro manažery, nikoliv jen pro programátory.
Hlavní charakteristiky
- Užvaněnost (Verbosity): COBOL používá velmi dlouhou syntaxi plnou anglických slov (např. místo symbolu
+se používá slovoADD). - Zpracování dat: Je excelentní v hromadném zpracování dat a v přesné desítkové aritmetice (např. při výpočtech úroků v bankách), kde by běžná binární aritmetika mohla způsobit chyby v zaokrouhlování.
- Struktura: Programy jsou pevně rozděleny do čtyř „divizí“ (Divisions), což zajišťuje přísnou organizaci kódu.
Struktura programu
Každý program v COBOLu musí obsahovat tyto části:
1. **Identification Division:** Název programu a informace o autorovi. 2. **Environment Division:** Specifikace počítače a souborů, se kterými program pracuje. 3. **Data Division:** Definice všech proměnných a datových struktur. 4. **Procedure Division:** Samotná logika programu (výpočty, podmínky).
Příklad kódu:
IDENTIFICATION DIVISION. PROGRAM-ID. HELLO-WORLD. PROCEDURE DIVISION. DISPLAY 'Hello, World!'. STOP RUN.
Proč je stále důležitý?
Možná vás překvapí, že i v roce 2025 COBOL stále „řídí svět“:
- Bankovnictví: Odhaduje se, že přes 70 % všech bankovních transakcí na světě stále zpracovávají programy v COBOLu.
- Mainframy: Jazyk běží na obřích sálových počítačích (Mainframes), především od společnosti IBM, které jsou extrémně spolehlivé.
- Obrovský objem kódu: Existují stovky miliard řádků kódu v COBOLu. Přepisování do moderních jazyků (Java, Python) je extrémně drahé a rizikové.
Výhody a nevýhody
Výhody:
- Škálovatelnost: Dokáže efektivně zpracovat miliony záznamů najednou.
- Čitelnost: Díky anglické syntaxi je snadné pochopit, co program dělá (pokud znáte anglicky).
- Dlouhověkost: Kód napsaný před 40 lety obvykle bez problémů funguje i na dnešních systémech.
Nevýhody:
- Nedostatek expertů: Většina programátorů COBOLu odchází do důchodu a mladí programátoři se jazyk nechtějí učit.
- Pomalý vývoj: Psaní kódu v COBOLu je zdlouhavé ve srovnání s moderními jazyky.
- Izolovanost: Těžko se integruje s moderními webovými a cloudovými službami bez speciálních nástrojů.
Problém roku 2000 (Y2K)
COBOL byl v centru pozornosti před rokem 2000. Staré programy šetřily pamětí a ukládaly rok pouze jako dvě cifry (např. 98). Hrozilo, že v roce 2000 počítače „uvidí“ rok 00 jako 1900, což by zhroutilo bankovní systémy. Díky obrovskému úsilí programátorů byla většina chyb opravena včas.
Související pojmy: Mainframe, Grace Hopper, Legacy systém, Y2K, Algol, Fortran.
