COBOL
| COBOL | |
| Paradigma | procedurális, objektum-orientált |
| Megjelent | 1959 |
| Tervező | Grace Hopper, William Selden, Gertrude Tierney, Howard Bromberg, Howard Discount, Vernon Reeves, Jean E. Sammet |
| Utolsó kiadás | COBOL 2002 (2002) |
| Típusosság | Erősen típusos, statikus kötés |
| Dialektusok | HP3000 COBOL/II, COBOL/2, IBM OS/VS COBOL, IBM COBOL/II, IBM COBOL SAA, IBM Enterprise COBOL, IBM COBOL/400, IBM ILE COBOL, Unix COBOL X/Open, Micro Focus COBOL, Microsoft COBOL, Ryan McFarland RM/COBOL, Ryan McFarland RM/COBOL-85, DOSVS COBOL, UNIVAC COBOL, Realia COBOL, Fujitsu COBOL, ICL COBOL, ACUCOBOL-GT, COBOL-IT, DEC COBOL-10, DEC VAX COBOL, Wang VS COBOL, Visual COBOL, Tandem (NonStop) COBOL85, Tandem (NonStop) SCOBOL (a COBOL74 variant for creating screens on text-based terminals) |
| Megvalósítások | OpenCOBOL, Micro Focus International (e.g. the Eclipse-plug-in Micro Focus Net Express) |
| Hatással volt rá | FLOW-MATIC, COMTRAN, FACT |
| Befolyásolt nyelvek | PL/I, CobolScript, ABAP |
A COBOL magas szintű programozási nyelv, a COmmon Business Oriented Language elnevezés rövidítése.
Harmadik generációs programozási nyelv. Bár általános célú, mégis FORTRAN és a PL/I mellett elsősorban az üzleti, pénzügyi élet rendszereiben használatos. Megjelentek benne a strukturált programozás bizonyos vezérlő szerkezetei is. A nyelv tervezésénél kísérletet tettek a hordozhatóság, a portabilitás megteremtésére.
A nyelv hosszú fejlődésen ment keresztül, de alapvető felépítését struktúráját mindvégig megőrizte. Az első változatát a COBOL 60-t 1959-ben deklarálták. Ezt követte az ANS COBOL 1968, amely a nyelv addigra sokféle változatai között teremtett rendet, egy egységes standard leírásával, amit az ANSI-nál jegyezték be. 1974-ben jött a COBOL 1974, amely az ANSI változat kiegészítése volt sok új funkcióval, amely az eredeti '68-as verzióban még nem szerepelt. 1985-ben az ANSI kiadta a nyelv egy újabb revízióját, amely sok strukturált programozási elemmel egészítette ki az eddigieket(scope terminátorok pl. END-IF, END-PERFORM, END-READ).
Hosszú szünet után 2002-ben egészítették ki a nyelvet objektum orientált programozást támogató elemekkel. Majd több lépcsőben további sztenderdekben a nyelv bővült XML kezeléssel, valamint OOP-s Collection könyvtárt is adtak hozzá a sztenderd COBOL-hoz.
Magyarországon kb. 35 éve használják.
Könnyen olvasható, az angol nyelv rövidítéseinek és szabályainak megfelelően írható.
Tartalomjegyzék |
Cobol program felépítése [szerkesztés]
Egy COBOL program 4 jól elkülöníthető részre, COBOL szóhasználattal Divisionre magyarul Főrészre oszlik:
1. Azonosítási főrész, IDENTIFICATION DIVISION. 2. Környezet leíró főrész, ENVIRONMENT DIVISION. 3. Adatleíró főrész, DATA DIVISION. 4. Eljárási főrész, PROCEDURE DIVISION.
Az egyes főrészek szekciókból Section épülnek fel. Az első szekció formálisan írja le a program adatait. A 2. szekcióban lehet definiálni az esetlegesen használt fájlokat a program input-outputjához. A 3. részben (adatleíró részben) megadhatók az adatstruktúrák, változók, míg a 4. részben kell leírni a program tényleges működését.
Cobol nyelv [szerkesztés]
A célként meghatározott üzleti- és pénzügyi alkalmazások miatt az adatok megjelenítésére kiemelten nagy hangsúlyt fektetett a nyelv. Az adatok formáját a "kép" jelentésű angol Picture szó rövidítését jelentő PIC utasítás írja le. A COBOL program kötött szintaxissal rendelkező úgynevezett COBOL mondatok, Sentences sorozatából áll, amelyek különböző igékből (ADD, SUBTRACT, PERFORM, READ stb.) és változónevekből épülnek fel. Minden mondatot pont zár le. A mondatok összetartozó csoportjai paragrafusokba, Paragraph gyűjthetők, amelyek egyben vezérlési szerkezetként is kezelhetők.
A mondatokban használt igék, a kulcsszavak között vannak olyanok, amelyek csak az angol nyelv sajátosságai miatt kellenek (ezeket nem kötelező használni). Egy COBOL program valóban olvasható és érthető egy angolul értő számára, ennek azonban az az ára, hogy néhány COBOL mondat szintaxisa szinte áttekinthetetlenül bonyolult és terjedelmes, és nagyon komoly gyakorlat kell a teljes nyelvi eszközrendszer nyújtotta lehetőségek kihasználásához.
Egyes COBOL megvalósítások annyira meghatározták a forrásprogram írásának szabályait, hogy a nyelvet használó cégek előnyomtatott lapok alkalmazásával segítették a programozókat a formai követelmények betartásában. Az is előírás volt, hogy a programot csak nagybetűvel lehetett írni, ezért programozói körökben elterjedt vicc volt, hogy a COBOL az a programnyelv, amely megtanít a nagybetűk írására.
Alapműveletek [szerkesztés]
Értékadás:
MOVE "szoveg" TO variable
Összeadás:
ADD years TO age
Kivonás:
SUBTRACT 18 FROM variable
String parsolása egy másik megformázott időbélyeget tartalmazó Stringbe:
STRING ws-edate (7:4) DELIMITED SIZE "-" DELIMITED SIZE ws-edate (4:2) DELIMITED SIZE "-" DELIMITED SIZE ws-edate (1:2) DELIMITED SIZE ws-etime DELIMITED SIZE ".000000" DELIMITED SIZE INTO ws-timestamp END-STRING
Vezérlő szerkezetek [szerkesztés]
Elágazás:
IF (data1 = 1 or 3 or 5 or 7 or 9) AND (data2 = 2 or 6) SUBTRACT 1 FROM data1 ELSE MOVE 12 TO data1 SUBTRACT 1 FROM data2 END-IF
Ciklusszervezés:
perform until I > 10 add I1 OF TOMB (I) to A OF TOMB (I) add I2 OF TOMB (I) to B OF TOMB (I) add I3 OF TOMB (I) to C OF TOMB (I) add 1 to I end-perform.
Feltételtől függő ciklus:
evaluate HONAP when 2 thru 12 perform until I > 10 subtract WOSSZ OF ELOZOEV(I) from WOSSZ OF TOMB(I) subtract WOSSZ OF ELOZOEV(I) from WOSSZ OF TOMB(I) add 1 to I end-perform end-evaluate.
Eljárás hívás:
PERFORM eljaras
Kimenet/Bemenet [szerkesztés]
Konzolra írás [szerkesztés]
DISPLAY "Hello World at", hv-date, "!"
Fájl műveletek [szerkesztés]
Fájl rekord típus deklarálása a Data Division/File section-ban. Pl. egy 536 karakteres rekord deklarálása:
FD X-FILE record contains 536 characters. 01 X-RECORD PIC X(536).
Fájl megnyitása:
open output X-FILE
Fájl olvasása:
read X-FILE next
Fájl írása:
write X-RECORD from RECORD-TEXT after 1
Fájl lezárása:
close X-FILE
Külső hivatkozás [szerkesztés]
|
||||||||||||||||||||||||||

