COBOL – verslo paskirties programavimo kalba: apibrėžimas ir istorija
Sužinokite COBOL apibrėžimą, istoriją, versijų raidą ir šiuolaikines modernizacijos galimybes – verslo programavimo kalbos evoliucija nuo 1959 m.
COBOL yra programavimo kalba, sukurta 1959 m. Tai buvo viena pirmųjų kompiuterių programavimo kalbų, specialiai pritaikyta verslo ir administraciniams duomenų apdorojimo poreikiams. Pavadinimas COBOL reiškia "COmmon Business-Oriented Language" (angl.). Kalba buvo sukurta taip, kad leistų aprašyti verslo problemas nepriklausomai nuo naudojamos techninės įrangos ir kad jos sintaksė būtų kuo artimesnė natūraliai anglo kalbai — taip supaprastinant programų skaitymą ir priežiūrą. Kaip ir SQL, COBOL naudoja sintaksę, artimą natūralių kalbų sintaksei. Pavyzdžiui, ADD YEARS TO AGE yra aiški ir lengvai suprantama išraiška.
Istorija ir standartizacija
COBOL kūrimą inicijavo JAV federalinės agentūros ir pramonės atstovai vėlyvais 1950-aisiais, siekdami bendro standarto verslo programoms. Pirmieji COBOL komitetai veikė per organizacijas, tokias kaip CODASYL, o prie kalbos kūrimo prisidėjo ir kelios žymios asmenybės, tarp jų Grace Hopper. Per kelis dešimtmečius COBOL buvo kelis kartus standartizuota ir išplėsta:
- 1968 m. – pirmasis ANSI standarto etapas;
- 1974 m. – papildomi pataisymai ir patobulinimai;
- 1985 m. – reikšmingi pakeitimai, sustiprinta struktūrinė programavimo parama;
- 2002 m. – pridėta objektinio programavimo ir kitų modernių konstrukcijų;
- 2014 m. – naujausias didesnis standarto atnaujinimas, įtraukiantis patobulintą funkcionalumą ir klaidų taisymus.
Praktikoje egzistuoja daug COBOL dialektų ir įgyvendinimų, todėl suderinamumas tarp skirtingų versijų ir kompilatorių gali skirtis. Ypač senesnės, iki 1985 m., paraiškos gali reikalauti pritaikymo, kad veiktų su naujesnėmis 1985 m. ir vėlesnių standartų priemonėmis.
Pagrindinės kalbos savybės
COBOL išsiskiria keliais bruožais, dėl kurių ji ilgai liko populiari verslo srityje:
- Aiški, beveik natūralios kalbos formuluotė, skirta lengvesniam verslo logikos aprašymui;
- Stacionari programos struktūra su divizijomis (IDENTIFICATION, ENVIRONMENT, DATA, PROCEDURE), palengvinančiomis dokumentavimą ir palaikymą;
- Gera spausdintinių ataskaitų, failų ir masyvų apdorojimo parama — svarbu finansinėms ir administracinėms sistemoms;
- Tikslus dešimtainis aritmetikos palaikymas (packed decimal), būtinas piniginiams skaičiavimams;
- Palaikymas didelėms duomenų bazėms ir failų prieigai, taip pat integracija su verslo procesų apdorojimo sistemomis.
Per laiką COBOL gavosi ir modernesnių galimybių: išplėtimas leido objektinį programavimą, vartotojo apibrėžtas funkcijas ir vartotojo apibrėžtus duomenų tipus, taip pat patobulintą modulinę struktūrą ir bibliotekų valdymą.
Kritika ir gynyba
1975 m. laiške redaktoriui, pavadintame "Kaip sakyti tiesą, kuri gali pakenkti?", kompiuterių mokslininkas ir Tiuringo premijos laureatas Edsgeris Dijkstra (Edsger Dijkstra) aštriai kritikavo COBOL, tvirtindamas, kad "COBOL naudojimas paralyžiuoja protą, todėl jo mokymas turėtų būti laikomas kriminaliniu nusikaltimu". Ši kritika dažnai cituojama kaip pavyzdys, kaip specializuotos, natūralios kalbos panašios sintaksės sprendimai gali skatinti blogą programavimo praktiką, ypač kai nėra pakankamo struktūrinio švietimo.
Tačiau kitų specialistų požiūris buvo subalansuotas. Kompiuterių mokslininkas, vardu Howardas E. Tompkinsas, gynė struktūrinę COBOL versiją: "COBOL programos su painiais valdymo srautais iš tiesų yra linkusios 'paralyžiuoti protą', tačiau taip buvo todėl, kad 'yra per daug tokių verslo taikomųjų programų, parašytų programuotojų, kurie niekada nebuvo gerai išmokyti struktūrinės COBOL kalbos...'".
Apibendrinant — daug kritikos buvo skirta ne pačiai kalbai, o prastoms projektavimo ir programavimo praktoms bei didelėms, ilgai prižiūrėtoms ir mažai restruktūrizuotoms sistemoms.
Šiuolaikinis naudojimas ir palaikymas
COBOL vis dar naudojama plačiai finansų, draudimo, valstybės institucijų ir didelių įmonių sistemose. Daug pasaulio bankų ir valstybinių paslaugų remiasi COBOL programine įranga, parašyta praėjusiais dešimtmečiais, todėl jos priežiūra ir modernizacija išlieka aktuali. Yra keletas populiarių įgyvendinimų ir įrankių, pavyzdžiui, GnuCOBOL, Micro Focus COBOL, IBM Enterprise COBOL, kurie leidžia vykdyti COBOL programas tiek mainframe, tiek moderniose serverių platformose.
Modernizavimo kryptys apima:
- Integraciją su šiuolaikinėmis duomenų bazėmis ir web tarnybomis;
- Apgaubimą (wrapping) ir API sudarymą, kad senas COBOL kodas galėtų būti pasiekiamas per Java, .NET ar REST sąsajas;
- Portavimą ir laipsnišką refaktoringą, kad būtų galima palaipsniui pakeisti kritinę verslo logiką modernesnėmis technologijomis.
Versijos ir suderinamumas
COBOL standartai ir implementacijos keitėsi po truputį, o tai lėmė dalinį nesuderinamumą tarp įvairių epochų parašytų programų. Dėl to praktiškai dažnai reikia adaptuoti senus sprendimus arba naudoti specialius įrankius ir kompilatorių nustatymus, kad senas kodas veiktų šiuolaikinėse aplinkose. Vis dėlto daug komercinių tiekėjų palaiko priemones, leidžiančias vykdyti ir integruoti senus COBOL sprendimus moderniose IT architektūrose.
Išvados
COBOL yra specializuota, verslo paskirties programavimo kalba, kuri ilgą laiką dominavo duomenų apdorojimo srityje. Nors kalba sulaukė kritikos, jos patikimumas, aiškus požiūris į verslo logiką ir platus įsigilinimas į finansinius skaičiavimus užtikrino ilgalaikį gyvavimą. Šiandien COBOL išlieka svarbi daugeliui įmonių, o jos palaikymas ir modernizacija yra reali ir dažnai reikalinga praktika.
Pastaraisiais metais COBOL buvo išplėsta, kad būtų galima programuotiobjektus, naudoti vartotojo apibrėžtas funkcijas ir vartotojo apibrėžtus duomenų tipus.
Ieškoti