æ°å幎ã®æŽå²ãæã¡ãªããããããŸã ã«éèŠãªåœ¹å²ãæããCOBOLããŸã ãŸã éèŠããããã®èšèªã®å ¥éç¥èããçæéã§ç¿åŸããŸãããïŒæ¬çš¿ã§ã¯COBOLã®åºæ¬ããããã®çšéãåžå Žã§ã®å°äœãåºæ¬æ§é ããããŠçŸä»£ã«ããã誀解ã解ãæãããŸã§ãç¶²çŸ ããŸããããžãã¹ã®çŸå Žã§äœ¿ãããCOBOLã®é åã«è¿«ãã€ã€ãããã°ã©ãã³ã°èšèªãšããŠã®åºæ¬ã10åã§ææ¡ã§ããããã«ã¬ã€ãããŸããããã°ã©ããŒãžã®ç¬¬äžæ©ãšããŠããŸãã¯ã¹ãã«ã®å¹ ãåºããäžç°ãšããŠããã®ãã£ã³ã¹ããèŠéããªãããããäžç·ã«COBOLã®äžçãèŠããŠã¿ãŸãããã
1. COBOLå ¥é – ããã°ã©ãã³ã°èšèªã®åºç€ã10åã§åŠã¶
1.1 COBOLãšã¯ïŒ – æŽå²ãšåºæ¬çãªç¹åŸŽ
COBOLïŒCommon Business-Oriented LanguageïŒã¯ã1959幎ã«éçºãããããžãã¹åãã®ããã°ã©ãã³ã°èšèªã§ãã人éã®èšèã«äŒŒãææ³ãæã€ããšãããèªã¿ãããèšè¿°ããããããšãç¹åŸŽã§ããåã®é«æ°Žæºããã°ã©ãã³ã°èšèªã®äžã€ãšããŠãäžçäžã®éèæ¥çãè¡æ¿ã§åºã䜿ãããŠããŸãã
COBOLã®èšèšã¯ãäºæ¥ã§ã®ããŒã¿åŠçãçŽæçã§ãäºåäœæ¥å¡ã§ã容æã«ç解ã§ããããšãç®æããŠäœãããŸãããéèŠãªã®ã¯ãCOBOLãäœãããåœæãããé·æéå®å®ããŠåäœãã倧èŠæš¡ãªããžãã¹ã¢ããªã±ãŒã·ã§ã³ã®èŠæ±ã«å¿ããŠããããšã§ãã
ãã®èšèªã¯æ°å幎ã«ãããé²åãç¶ããŠãããæ§é åããã°ã©ãã³ã°ããªããžã§ã¯ãæåããã°ã©ãã³ã°ã®æŠå¿µãåãå ¥ããããããçŸä»£çãªããã°ã©ãã³ã°èšèªã®ããŒãºã«ã察å¿ããŠããŸãã
1.2 COBOLã®æŠèŠ – äž»èŠãªçšéãšåžå Žã§ã®å°äœ
COBOLã¯äž»ã«ããžãã¹ã財åãè¡æ¿æ©é¢ã§äœ¿çšãããŠããŸããç¹ã«éè¡ãä¿éºäŒç€Ÿãæ¿åºæ©é¢ã§ã®çµŠäžèšç®ã財åå ±åã顧客ããŒã¿ç®¡çãªã©ã倧éã®ãã©ã³ã¶ã¯ã·ã§ã³ãåŠçããã®ã«é©ããŠããŸãã
çŸåšã§ããæ°å€ãã®äŒæ¥ãçµç¹ã§ã¯æ¢åã®COBOLã·ã¹ãã ã掻èºããŠããããã®ã¡ã³ããã³ã¹ãæŽæ°ã®ããã®ããã°ã©ããŒãå¿ èŠãšãããŠããŸããããã«äŒŽããCOBOLã®åžå Žã¯æå€ãšæŽ»çºã§ãå°éçãªç¥èãæã€ããã°ã©ããŒã«ã¯äŸç¶ãšããŠéèŠããããŸãã
æ°ããããã°ã©ãã³ã°èšèªã次ã ã«ç»å Žãããã®ã®ãCOBOLãæ ãåºå¹¹ã·ã¹ãã ã¯ãã®ä¿¡é Œæ§ãšå®å®æ§ããããããã眮ãæããããšã¯ã§ããŸããããã®ãããCOBOLã¯ç¹å®ã®é åã«ãããŠãä»åŸãéèŠãªå°äœãå ããããšã§ãããã
1.3 COBOLããã°ã©ãã³ã°ã®åºæ¬æ§é
COBOLããã°ã©ã ã¯ãIDENTIFICATION DIVISION, ENVIRONMENT DIVISION, DATA DIVISION, PROCEDURE DIVISIONãšãã4ã€ã®åºåã§æ§æãããŸãããããã®åºåã¯ããã°ã©ã ã®ç°ãªãåŽé¢ãè¡šããããããããã°ã©ã ãèšè¿°ããããã®åºæã®ã«ãŒã«ãæã¡ãŸãã
IDENTIFICATION DIVISIONã¯ããã°ã©ã ã®ååãäœæè ããã®ä»ã®åºæ¬æ å ±ãå«ã¿ãŸããENVIRONMENT DIVISIONã¯ããã°ã©ã ãèµ°ãç°å¢ãå®çŸ©ããDATA DIVISIONã§ã¯å©çšããããŒã¿ã®æ§é ãèšè¿°ããŸããæåŸã«ãPROCEDURE DIVISIONã§ããã°ã©ã ã®å®éã®åŠçæé ãå®ããŸãã
COBOLã®ããã°ã©ãã³ã°ã¯ããããã®åºåãæ確ã«ããããšã§ãããã°ã©ã ã®èŠéããè¯ããªããã¡ã³ããã³ã¹ãå€æŽã容æã«ãªããŸããåããŠã®ããã°ã©ããŒã§ããCOBOLã®åºæ¬æ§é ãèŠããããšã§ãã¹ã ãŒãºã«å ¥éããããšãå¯èœã§ãã
1.4 COBOLã³ãŒãäŸ – åºç€ããç解ãã
COBOLããã°ã©ã ã®äžäŸãšããŠããŠãŒã¶ãŒãå ¥åããæ°å€ã®å¹³åãèšç®ããã·ã³ãã«ãªããã°ã©ã ãèŠãŠã¿ãŸããããäžèšã®ã³ãŒãã§ã¯ãè€æ°ã®æ°å€ãå ¥åãšããå¹³åå€ãèšç®ããŠåºåããŸããã³ãŒãã¯èªã¿ããããšæå¿«ãã«éç¹ã眮ããŠèšè¿°ãããŠããããšãããããŸãã
IDENTIFICATION DIVISION.
PROGRAM-ID. AverageCalc.
DATA DIVISION.
WORKING-STORAGE SECTION.
01 NUMBERS-COUNT PIC 99 VALUE 0.
01 TOTAL-SUM PIC 9(5) VALUE 0.
01 AVERAGE PIC 9(5)V99 VALUE 0.
01 TEMP-NUM PIC 9(5).
PROCEDURE DIVISION.
ACCEPT NUMBERS-COUNT.
PERFORM VARYING I FROM 1 BY 1 UNTIL I > NUMBERS-COUNT
ACCEPT TEMP-NUM
ADD TEMP-NUM TO TOTAL-SUM
END-PERFORM.
COMPUTE AVERAGE = TOTAL-SUM / NUMBERS-COUNT.
DISPLAY "The average is: " AVERAGE.
STOP RUN.
ãã®äŸã§ã¯ãWORKING-STORAGE SECTIONã§å€æ°ãå®çŸ©ããŠãããPROCEDURE DIVISIONã§å®éã®èšç®ãè¡ã£ãŠããŸããCOBOLã®æ確ãªæ§é ããããžãã¹ããžãã¯ã®èšè¿°ãšç解ã容æã«ããŠããç¹ãèŠãŠåããŸãã
2. COBOLããã°ã©ãã³ã°ã®éµ – æ§æãšå¶åŸ¡æ§é
2.1 COBOLã®æ§æåºç€ – ã³ãŒãã®èªã¿æžããå§ããã
COBOLã¯ãããžãã¹ã¢ããªã±ãŒã·ã§ã³ãéçºããããã®ããã°ã©ãã³ã°èšèªã§ããé·å¹Žã«ãããã·ã¹ãã ã§æšæºçã«äœ¿ããç¶ããŠããŸãããåããŠCOBOLã³ãŒãã«è§Šããéã«éèŠãªã®ã¯ããã®åºæ¬çãªæ§æãç解ããããšã§ããCOBOLã®æ§æã¯è±èªã«ãã䌌ã圢åŒããšã£ãŠããããšãããç解ãããããšè©äŸ¡ãããŠããŸãã
COBOLããã°ã©ã ã¯ãDIVISIONãSECTIONãPARAGRAPHãšãã£ãéå±€ã§æ§é åãããŠããŸãããããã®éå±€ãç解ããããšã§ãããã°ã©ã ã®æµããšåŠçã®é¢é£ãææ¡ã§ããŸãããŸããIDENTIFICATION DIVISIONãENVIRONMENT DIVISIONãªã©ãåDIVISIONã¯ç¹å®ã®ç®çãæã¡ãããã°ã©ã ã®åºæ¬æ å ±ãå®è¡ç°å¢ãèšå®ãã圹å²ãæ ã£ãŠããŸãã
COBOLã®ã³ãŒãã¯ãç°¡æœã§èªã¿ãããæžãããšãæšå¥šãããŠããŸããããã¯ãåŸã«ã¡ã³ããã³ã¹ãè¡ãããã°ã©ããè¿ éã«ã³ãŒããç解ã§ããããã«ããããã§ããCOBOLã®åœä»€æã¯äžé£ã®ãå¥ïŒclausesïŒãã§æ§æãããããã«ãã£ãŠæå³ããåŠçãã³ã³ãã¥ãŒã¿ã«åœä»€ããŸãã
2.2 ããŒã¿åãšå€æ°ã®å®çŸ©æ¹æ³
COBOLã«ãããããŒã¿åãšå€æ°ã®å®çŸ©æ¹æ³ã¯ãããã°ã©ã ã®åºç€ããªãéèŠãªéšåã§ããCOBOLã§ã¯ãããŒã¿åã«å¿ããŠå€æ°ã宣èšããããããã«ç°ãªãå±æ§ãäžããããšãã§ããŸããäŸãã°ãæ°å€åãæåååãæ¥ä»åãªã©ããããŸãã
å€æ°ã¯DATA DIVISIONã®WORKING-STORAGE SECTIONã§å®çŸ©ããŸããå€æ°åãæå®ããPICïŒpictureïŒç¯ã§ããŒã¿åãšãµã€ãºãå®çŸ©ããããšã§ãæŽæ°ãå°æ°ãæååãªã©ã®ããŒã¿ãæ ŒçŽããã¹ããŒã¹ã確ä¿ããŸãããã®å®çŸ©æ¹æ³ã¯COBOLã®ããã°ã©ãã³ã°ã«ãããåºæ¬ã§ãããããŒã¿ã®æŽåæ§ãä¿ã€ããã«éåžžã«éèŠã§ãã
å 容ã«å¿ããŠå€æ°ãé©åã«å®çŸ©ããããšã¯ãããã°ã©ã ã®ä¿¡é Œæ§ãšã¡ã³ããã³ã¹ã®å®¹æãã«çŽçµããŸããé©æ£ãªããŒã¿åã®éžæã¯ãããŒã¿éçšã«ããã誀解ãé²ããèšç®ãæ¯èŒã«ããããšã©ãŒãæå°éã«æããããã«ãéèŠã§ãã
2.3 æ¡ä»¶åå²ãšã«ãŒãå¶åŸ¡
ããããããã°ã©ãã³ã°èšèªã«å ±éããæŠå¿µãšããŠãæ¡ä»¶åå²ãšã«ãŒãå¶åŸ¡ããããŸããCOBOLã«ãããŠããIFæãEVALUATEæã䜿çšããŠæ¡ä»¶ã«åºã¥ãåŠçã®æµããå¶åŸ¡ããŸããããã«ããç¹å®ã®æ¡ä»¶ã§ã³ãŒãã®å®è¡ãåå²ãããããšãã§ããŸãã
ã«ãŒãå¶åŸ¡ã«é¢ããŠã¯ãCOBOLã§ã¯PERFORMæãå©çšãããŸããPERFORMæã«ã¯ãç¹å®ã®PARAGRAPHãç¹°ãè¿ãå®è¡ãããUNTILæ¡ä»¶ããã°ãã°çµã¿åããããŸããããã«ãããã³ã¬ã¯ã·ã§ã³ã®å šèŠçŽ ã«å¯ŸããåŠçããç¹å®æ¡ä»¶ãæºãããããŸã§ã®ç¹°ãè¿ãåŠçãç°¡æœã«èšè¿°ã§ããŸãã
é«åºŠãªå¶åŸ¡æ§é ãå©çšããããšã§ãCOBOLããã°ã©ã ã¯ããè€éãªããžãã¹ããžãã¯ãå®çŸããããšãå¯èœã§ããããããæèªæ§ãšä¿å®æ§ãç¶æããããã«ã¯ããããã®æ§é ãé©åãã€ç¯åºŠããæ¹æ³ã§äœ¿ãããªãããšãèŠæ±ãããŸãã
2.4 ãã¡ã€ã«æäœãšå ¥åºåã®åºç€
COBOLã¯äž»ã«ããžãã¹ã¢ããªã±ãŒã·ã§ã³ã§äœ¿ãããããããã¡ã€ã«æäœãšããŒã¿ã®å ¥åºåã極ããŠéèŠã§ããCOBOLããã°ã©ã ã§ã¯ãããŒã¿ãã¡ã€ã«ãéããèªã¿èŸŒããæžã蟌ããæŽæ°ããããããŠéãããšãã£ãäžé£ã®æäœãé »ç¹ã«è¡ãããŸãã
FILE SECTIONã«ã¯ãããã°ã©ã ã«ãã£ãŠæäœããããã¡ã€ã«ã®æ§é ãå®çŸ©ãããŸãããã¡ã€ã«æäœã®æ§æã¯æå³çã«ç°¡æåãããŠãããOPENãREADãWRITEãREWRITEãCLOSEãšãã£ãåœä»€ã䜿çšããŠããŒã¿ãã¡ã€ã«ãæ±ããŸãããããã®åœä»€ã«ãã£ãŠããã£ã¹ã¯äžã®ããŒã¿ãšããã°ã©ã éã®ããåããè¡ãããŸãã
å¹ççãªãã¡ã€ã«æäœãšå ¥åºååŠçã®å®è£ ã¯ãã¢ããªã±ãŒã·ã§ã³ã®ããã©ãŒãã³ã¹ãå·Šå³ãããããCOBOLããã°ã©ãã³ã°ã«ãããŠã¯ãããããã¹ã¿ãŒããããšãéèŠã§ããé©åãªãã¡ã€ã«æäœã®ç¥èãšæè¡ã¯ãããã°ã©ã ã®ä¿¡é Œæ§ãšå¹çã®åäžã«çŽçµããŸãã
3. COBOLéçºç°å¢ – å®éã®ã³ãŒããæžãåã«
COBOLéçºã¯ãããã°ã©ãã³ã°ãã¢ããªã±ãŒã·ã§ã³ãæ§ç¯ããã«ããã£ãŠãåå¿è ãããããã§ãã·ã§ãã«ãŸã§äžå¯§ãªæºåãå¿ èŠã§ããéçºç°å¢ãæŽããããšã¯ãå¹ççã«ã³ãŒããæžãããã®æåã®ã¹ãããã§ãã以äžã§ã¯COBOLéçºç°å¢æ§ç¯ã«äžå¯æ¬ ãªèŠçŽ ã玹ä»ããŸãã
3.1 COBOLã³ã³ãã€ã©ã®çš®é¡ãšéžã³æ¹
COBOLã³ã³ãã€ã©ã¯ããœãŒã¹ã³ãŒããå®è¡å¯èœãªããã°ã©ã ã«å€æãããœãããŠã§ã¢ã§ããå€ãã®åçšãšãªãŒãã³ãœãŒã¹ã³ã³ãã€ã©ãååšãããããžã§ã¯ãã®èŠä»¶ãéçšç°å¢ã«å¿ããŠé©åãªãã®ãéžã¶å¿ èŠããããŸãã
éžæããéã¯ãã³ã³ãã€ã©ããµããŒãããCOBOLã®ããŒãžã§ã³ãã³ã¹ããäºææ§ãæ§èœãªã©ãæ¯èŒæ€èšããŸãããããŸããä¿å®ãµããŒããããã¥ã¡ã³ãã®å å®åºŠãéèŠãªéžæåºæºãšãªããŸãã
代衚çãªCOBOLã³ã³ãã€ã©ã«ã¯ãIBMã®Enterprise COBOLãMicro Focusã®Visual COBOLãªã©ãããããããžã§ã¯ããéçºããŒã ã®èŠæš¡ã«åãããŠéžã¶ããšãå¯èœã§ãã
3.2 çµ±åéçºç°å¢(IDE)ã®çŽ¹ä»ãšã»ããã¢ãã
çµ±åéçºç°å¢ïŒIDEïŒã¯ãã³ãŒãã®ç·šéããã«ãããããã°ãäžå 管çã§ããããŒã«ã§ããCOBOLããã°ã©ãã³ã°ã«ãç¹åããIDEãååšããéçºäœæ¥ã®å¹çã倧ãã«é«ããŸãã
IDEã®éžæã«éããŠã¯ãGUIã®äœ¿ãããããã³ãŒãè£å®ãã·ã³ã¿ãã¯ã¹ãã€ã©ã€ãæ©èœã®æç¡ããããžã§ã¯ã管çããŒã«ãšã®é£æºçãèæ ®ããããšãèå¿ã§ãããŸããã»ããã¢ãããã«ã¹ã¿ãã€ãºæ©èœãçŽæçãã©ããããã§ãã¯ãã€ã³ãã§ãã
æåãªCOBOL IDEã«ã¯EclipseããŒã¹ã®Eclipse COBOLãNetCOBOL for Windowsãªã©ããããã»ããã¢ããã¯å ¬åŒãŠã§ããµã€ããåç §ãã察å¿ããã¬ã€ãã«åŸã£ãŠé²ããããšãäžè¬çã§ãã
3.3 ãšã©ãŒãããã°ãšãã©ãã«ã·ã¥ãŒãã£ã³ã°
COBOLéçºã§ãšã©ãŒãšééããéã«ã¯ãã·ã¹ãããã£ãã¯ãªãããã°ããã»ã¹ãéèŠãšãªããŸãããŸãã¯ããšã©ãŒã¡ãã»ãŒãžãããèªã¿ãçºçããŠããåé¡ãç¹å®ããããšããå§ããŸãã
次ã«ãããã°ã©ã ãåæããããžãã¯ãšã©ãŒãæ§æãšã©ãŒã確èªããŸããCOBOLã¯å€ãããã°ã©ãã³ã°èšèªã§ãããããå€ãææ³ãæ £ç¿ãåŒãç¶ã䜿çšãããŠããå Žåãå€ããããããç解ããããšããã©ãã«ã·ã¥ãŒãã£ã³ã°ã«ã¯äžå¯æ¬ ã§ãã
ãŸããå€ãã®IDEãã³ã³ãã€ã©ã«ã¯ãããã°æ©èœãæèŒãããŠããããã¬ãŒã¯ãã€ã³ãã®èšå®ãã¹ãããå®è¡ãªã©ãå¹ççãªãããã°äœæ¥ãè¡ããŸãããããã®ããŒã«ãæ倧é掻çšããããšã§ãåé¡è§£æ±ºã®ã¹ããŒããåäžãããããŸãã
3.4 ã¢ãžã¥ãŒã«ãšã©ã€ãã©ãªã®æŽ»çš
COBOLããã°ã©ãã³ã°ã§ã¯ãã¢ãžã¥ãŒã«åãã©ã€ãã©ãªã®äœ¿çšãäžè¬çã§ããã¢ãžã¥ãŒã«ã¯æ©èœããšã«ã³ãŒããåå²ããŠåå©çšå¯èœã«ããææ³ã§ãããã°ã©ã ã®ä¿å®ãæ¡åŒµã容æã«ããŸãã
æ¢åã®ã©ã€ãã©ãªã掻çšããããšã§ããã䜿ãããæ©èœãã«ãŒãã³ãç°¡åã«åã蟌ãããšãå¯èœã§ããããã«ãããéçºã®çç£æ§ãäžããã ãã§ãªããã³ãŒãã®å質ãåäžãããå¹æããããŸãã
ããã°ã©ã ã®ã¢ãžã¥ãŒã«æ§ãé«ããããã«ã¯ãé¢æ°ããµãããã°ã©ã ãæèçã«èšèšããããšãéèŠã§ãããŸããé©åãªã©ã€ãã©ãªç®¡çã·ã¹ãã ãå°å ¥ããããšã§ãäŸåé¢ä¿ãæ確ã«ããã¢ãžã¥ãŒã«å士ã®æŽåæ§ãä¿ã€ããšãã§ããŸãã
4. çŸä»£ã®COBOL – æ¹å€ãšèª€è§£ã解ãæãã
4.1 COBOLã¯å€ãèšèªïŒçŸä»£çãªèŠç¹ã§ç解ãã
COBOLïŒCommon Business-Oriented LanguageïŒã¯ã1959幎ã«éçºãããããžãã¹æåã®ããã°ã©ãã³ã°èšèªã§ãããã®é·ãæŽå²ããã«ãå€ãããšããã¬ããã«ã貌ãããã¡ã§ããããã®å®æ ã¯å€ãã®çŸä»£ã®ã·ã¹ãã ã§æŽ»èºããŠããŸãã
éèæ©é¢ãä¿éºäŒç€Ÿãå ¬å ±æ©é¢ã®å€§èŠæš¡ãªæ¥ååŠçã·ã¹ãã ã¯ä»æ¥ã§ãCOBOLã«äŸåããŠããŸããçµã¿èŸŒãŸããããžãã¹ã«ãŒã«ãããŒã¿åŠçã®èœåã¯ãæ代ãè¶ ããŠçŸä»£ã®ITæ¥çã§é«ãè©äŸ¡ãããŠããã®ã§ãã
ãŸããCOBOLã¯å¯èªæ§ãé«ããé·æã«ãããã¡ã³ããã³ã¹ãéçšã«ãããŠåªäœæ§ãæã€ãšãããŠããŸãããããã£ãŠããå€ããã§ã¯ãªãããå®çžŸããå®å®æè¡ããšããŠæãçŽãã¹ãã§ãããã
4.2 COBOLã®åè©äŸ¡ – ãªãä»ã䜿ãããŠããã®ã
COBOLã¯ãæ¥åçãªåŠçã«ç¹åããèšèªã§ããããã®é«åºŠãªå°éæ§ãã·ã¹ãã ã«ãããä¿¡é Œæ§ãšå¹çæ§ããããããŠããŸããäŸãã°ãè€éãªäŒèšåŠçãããŒã¿ããŒã¹ç®¡çã«ãããŠããã®åŒ·åãªæ©èœãä»ããªãéå®ãããŠããŸãã
ãŸããé·å¹Žã«ãããèç©ãããèšå€§ãªCOBOLã³ãŒãããŒã¹ã眮ãæããããšã¯ãæéçã«ãçµæžçã«ãéåžžã«é«ãã³ã¹ããããããããå€ãã®äŒæ¥ã¯æ¢åã®COBOLã¢ããªã±ãŒã·ã§ã³ã®ç¶æãåã³æé©åã«åãå ¥ããŠããŸãã
ããã«ãCOBOLããã°ã©ããŒã¯éæžåŸåã«ãããŸãããããã¯æ°ããªãã£ã³ã¹ãšããŠãè¥ãéçºè ã«ãšã£ãŠæ°èŠé²åºã®äœå°ãããåéãšããããŸãã確ãã«ãåŠã¶å¿ èŠã®ããèšèªã§ã¯ãããŸãããçµéšç©ãã°å®å ¥ãã®è¯ãè·çš®ãšãªãåŸãŸãã
4.3 COBOLã®å©ç¹ãšéç
COBOLã®æ倧ã®å©ç¹ã®äžã€ã¯ãããžãã¹åŠçã«ç¹åããæ§é ãæã¡åãããŠããç¹ã§ããããã«ãããéèãä¿éºãªã©ã®åéã§çŽ°ãããã©ã³ã¶ã¯ã·ã§ã³åŠçãæ±ãéã«ãéåžžã«æå¹ã§ãã
ãŸããèŠæš¡ã倧ããè€éãªã¢ããªã±ãŒã·ã§ã³ã®éçºã«ãããŠãããã®å ç¢ããšã¹ã±ãŒã©ããªãã£ã¯å€§ããªåŒ·ã¿ã§ããããããåæã«çŸä»£çãªæ©èœããã©ãã€ã ãç¹ã«ãŠã§ããã¢ãã€ã«åãã¢ããªã±ãŒã·ã§ã³éçºãšã®çžæ§ã¯è¯ããªããšãããŠããŸãã
COBOLã®ç°å¢ãå€ããæã«éå¹ççã§ãããšã®ææããããæ°ããæè¡ãšçµ±åããéã«ã¯ããã°ãã°è¿œå ã®ããã°ã©ãã³ã°ãããŒã«ãå¿ èŠãšãªããŸãããããã®éçã«ã¯æ³šæãå¿ èŠã§ããããã®åºæ¬çãªããžãã¹åŠçèœåã®é«ãã¯äžå€ã§ãã
4.4 è¿å¹Žã®COBOLéçºãã¬ã³ããšã€ãããŒã·ã§ã³
COBOLéçºçéã§ã¯ãçŸä»£ã®æè¡ãšã®çµ±åãè©Šã¿ãåããèŠãããŸããäŸãã°ãCOBOLãšJavaã.NETãšãã£ãæ°ããèšèªã»ãã©ãããã©ãŒã ãšã®çµ±åã¯ãCOBOLãçŸä»£çãªã¢ããªã±ãŒã·ã§ã³ãšé£åãããããã«åãçµãŸããŠããŸãã
ãŸããéçºããŒã«ã®è¿ä»£åã«ãããCOBOLã®ã³ãŒããããå¹ççã«æžãããšãå¯èœã«ãªããŸãããçµ±åéçºç°å¢ïŒIDEïŒã®æ¯æŽãåŸãŠãããå¿«é©ãªéçºç°å¢ãæäŸãããŠãããè¥ãéçºè ãåãçµã¿ããããªã£ãŠããŸãã
ãããŠãã¯ã©ãŠããã©ãããã©ãŒã äžã§ã®COBOLã¢ããªã±ãŒã·ã§ã³ã®å®è¡ãããã€ã¯ããµãŒãã¹ã¢ãŒããã¯ãã£ãšã®çµã³ã€ããªã©ãæ°ããªåœ¢ã§ã®COBOLã®çšéæ¡åŒµãé²ããããŠããŸãããããã®ã€ãããŒã·ã§ã³ã¯ãä»åŸã®çºå±ãæåŸ ããããã®ã§ãã
5. COBOLãã£ãªã¢ã¬ã€ã – è·æ¥ãšããŠã®COBOL
5.1 COBOLããã°ã©ããŒã®åžå ŽéèŠãšãã£ãªã¢ãã¹
COBOLã¯é·å¹Žã«ãããããžãã¹ã財åãè¡æ¿ã®åéã§æŽ»çšãããŠããããã°ã©ãã³ã°èšèªã§ããå€ãã®éèæ©é¢ãä¿éºäŒç€ŸãäŸç¶ãšããŠCOBOLã䜿çšããŠãããçµéšè±å¯ãªããã°ã©ããŒãžã®åžå ŽéèŠã¯äžå®ã§ãã
ãã£ãªã¢ãã¹ãšããŠãCOBOLããã°ã©ããŒã¯ã·ã¹ãã åæãã¢ããªã±ãŒã·ã§ã³éçºãã¡ã³ããã³ã¹ãšãã£ãå€å²ã«ãããè·åãæ åœãåŸãŸãããŸããCOBOLã·ã¹ãã ãé·æéã«æž¡ã£ãŠäœ¿ãããŠãããããæ¢åã·ã¹ãã ã®æ¹åãæŽæ°ã«é¢ããæ©äŒããããŸãã
COBOLæè¡è ããã£ãªã¢ã¢ãããç®æãå Žåããããžã§ã¯ã管çãã³ã³ãµã«ãã£ã³ã°ãªã©ã®ããæŠç¥çãªåœ¹å²ã«é²ãããšãå¯èœã§ããããããæ°ãããã¯ãããžãŒãžã®é©å¿ãéèŠã§ãããç¶ç¶çåŠç¿ãæ±ããããŸãã
5.2 COBOLã®ã¹ãã«ãçããæ¥çãšäŒæ¥
COBOLã®ã¹ãã«ã¯ç¹ã«éèãµãŒãã¹æ¥çã§éå®ãããŸããéè¡ãä¿éºäŒç€Ÿãæè³äŒç€Ÿãªã©ã¯å€ãã·ã¹ãã ãæŽæ°ããããã«COBOLããã°ã©ããŒãå¿ èŠãšããŠããŸãã
ãŸããå ¬å ±ã»ã¯ã¿ãŒãCOBOLæèœã®å€§ããªéèŠæºã§ããæ¿åºã®çŠç¥ãµãŒãã¹ãçšååŠçã·ã¹ãã ã¯COBOLã«äŸåããŠããããããã®ã·ã¹ãã ã®ä¿å®ã«ã¯å°éç¥èãå¿ èŠã§ãã
ãšã³ã¿ãŒãã©ã€ãºã¬ãã«ã§ã®ã·ã¹ãã ãæ§ç¯ããŸãã¯ç¶æããŠããä»æ¥çã®äžéšäŒæ¥ãããã®æ¥åã«COBOLããã°ã©ããŒãæ¡çšããŠããŸããçå競äºãåã¡æãããã«ã¯ããããã®æ¥çã«ç²Ÿéããé¢é£ããæè¡ã¹ãã«ãæã€ããšãäžå¯æ¬ ã§ãã
5.3 絊äžã®åŸåãšéçšæ¡ä»¶
COBOLããã°ã©ããŒã®çµŠäžã¯ãçµéšãå°åãæ¥çãæè¡ã®å°éæ§ã«ãã£ãŠå€§ããç°ãªãå ŽåããããŸããæ¯èŒçé«ãéèŠããããããçµéšè±å¯ãªããã°ã©ããŒã¯åªããå ±é ¬ãæåŸ ããããšãã§ããŸãã
å€ãã®å Žåããã«ã¿ã€ã ã®éçšãäžè¬çã§ãããå¥çŽããŒã¹ã§åãæ©äŒãå¢ããŠããŸããããã«ããããã¬ãã·ãã«ãªå°±æ¥ç°å¢ãæ±ããå°é家ã«éœåã®è¯ãæ¡ä»¶ãæäŸãããããšããããŸãã
ãŸãããªã¢ãŒãã¯ãŒã¯ã®æ©äŒãå¢å åŸåã«ãããå°ççãªå¶çŽãã解æŸãããåãæ¹ãå¯èœã«ãªã£ãŠããŸããããã«ãããã©ã€ããã©ã³ã¹ãéèŠãããããã§ãã·ã§ãã«ã«ãšã£ãŠCOBOLã®ãã£ãªã¢ã¯æ³šç®ãããŠããŸãã
5.4 å°æ¥æ§ãšCOBOLã®æè¡è ãžã®ã¢ããã€ã¹
COBOLèšèªã®å°æ¥æ§ã¯ãã°ãã°è°è«ã®çãšãªããŸãããçŸå®ã«ã¯å€ãã®ã·ã¹ãã ãä»ãªãCOBOLã«äŸåããŠåäœããŠããŸããå€åãé ãæ¥çã§ã¯ããããããå®å®ããéèŠãèŠèŸŒãŸããŸãã
å®éã«æè¡è ãšããŠé·æã«ããã£ãŠæŽ»èºããããã«ã¯ãåºæ¬çãªCOBOLã¹ãã«ã®ç¶æã«å ããŠãæ°ããæè¡ãæ¹æ³è«ãåãå ¥ããæè»æ§ãå¿ èŠã§ããçµåå¯èœãªæè¡åã¯ãå°æ¥ã«ãããè·æ¥çæç¶æ§ãé«ããŸãã
æåŸã«ãæè¡è ãšããŠã®COBOLã«çãŸããããžãã¹ã®ç解ãæ·±ããããšã§ãCOBOLããã°ã©ããŒãšããŠã®äŸ¡å€ãããã«é«ããããšãã§ããŸããçŸä»£ã®ITæ¥çã«ãããŠãæè¡ãšããžãã¹ã®çµã¿åããã¯éåžžã«éèŠã§ãããå€æ§ãªãã£ãªã¢ã®å±éã«ã€ãªãããŸãã
6. COBOLãªãœãŒã¹ãšç·Žç¿ – ç¶ç¶çãªåŠç¿æ¹æ³
6.1 ãªã³ã©ã€ã³ãªãœãŒã¹ãšã³ãã¥ããã£ã®æŽ»çš
COBOLãå¹æçã«åŠç¿ããããã«ã¯ããªã³ã©ã€ã³ãªãœãŒã¹ã®è±å¯ããå©çšããŸããããå°éã®ãã©ãŒã©ã ããŠã§ããµã€ãã§ã¯ãåå¿è ããçµéšè±ããªããã°ã©ããŸã§ã®æ§ã ãªã¬ãã«ã®äººã ãç¥èãå ±æããŠããŸãããããããã©ãããã©ãŒã ã掻çšããããšã§ãCOBOLã®åºç€ããå¿çšãŸã§å¹ åºãåŠã¹ãŸãã
ãŸãããªã³ã©ã€ã³ã³ãã¥ããã£ã«åå ããããšã§ãåãç®æšãæã€åŠç¿è ãå°é家ãšãããã¯ãŒã¯ã圢æã§ããŸãããªã¢ã«ã¿ã€ã ã§çåã解決ã§ããã ãã§ãªããææ°ã®æ¥çååãããè¯ãåŠç¿æ¹æ³ã«ã€ããŠãç¥ãããšãã§ããã§ãããã
ããã«ãGitHubãStack Overflowã®ãããªãã©ãããã©ãŒã ã«ã¯COBOLã«é¢ããå€ãã®ãããžã§ã¯ãã質çå¿çãååšããŠãããå®éã®ã³ãŒããèŠãªããåŠç¿ãé²ããããšãã§ããŸãããããã®ãªãœãŒã¹ãç©æ¥µçã«æŽ»çšããèªå·±åŠç¿ãå éãããŸãããã
6.2 ç¡æã§äœ¿ããåŠç°ããŒã«ãšãã©ã¯ãã£ã¹åé¡
COBOLãåŠã¶ããã®ç¡æããŒã«ããã©ã¯ãã£ã¹åé¡ã¯ãã€ã³ã¿ãŒãããäžã«æ°å€ãååšããŠããŸãããããã¯ç¹ã«ã³ã¹ãããããã«åºæ¬çãªæ§æãæŠå¿µã身ã«ã€ããéã«éåžžã«æå¹ã§ããäŸãã°ããªãŒãã³ãœãŒã¹ã®COBOLã³ã³ãã€ã©ã䜿çšããŠèªå® ã®PCã§ç·Žç¿ããããšãå¯èœã§ãã
ãŸããç¡æã§æäŸãããŠãããªã³ã©ã€ã³ã³ãŒã¹ããã¥ãŒããªã¢ã«ã§ã¯ãå®éã«ã³ãŒããæžããªããåŠç¿ãé²ããããšãã§ããŸãããã®ãããªå®è·µçãªã¢ãããŒãã¯ç解ãæ·±ããã¹ãã«ã確å®ã«èº«ã«çããäžã§åœ¹ç«ã¡ãŸãã
ãããªãã¹ãã«ã¢ãããç®æãå Žåã¯ãæ§ã ãªçš®é¡ã®ãã©ã¯ãã£ã¹åé¡ã«åãçµãããšããå§ãããŸããããã°ã©ã ã®ããžãã¯æ§ç¯ããããŒã¿ç®¡çããšã©ãŒãã³ããªã³ã°ãŸã§ãã·ããªãªã«åãããåé¡ã解ããŠããããšã§ãããå®åã«è¿ãçµéšãç©ãããšãã§ããã§ãããã
6.3 ãããžã§ã¯ããšããŠã®COBOL – å®åçµéšãç©ã
COBOLãåŠãã§ããã ãã§ã¯äžååãªå ŽåããããŸããå®éã®ããžãã¹ç°å¢ã§äœ¿çšãããCOBOLã®ãããžã§ã¯ãã«åãçµãããšã¯ãç解ãæ·±ããã®ã«æé©ã§ãããããžã§ã¯ãã«åå ããããšã§ãçŸå®ã®åé¡è§£æ±ºã¹ãã«ãé€ãããããã§ãã·ã§ãã«ãšããŠã®çµéšãç©ã¿ãŸãã
å人çãªãããžã§ã¯ããå§ããããšããå®åçµéšã®ä»£ããã«ãªãè¯ãæ¹æ³ã§ããäŸãã°ãå人ã®è¶£å³ãèå³ã«é¢é£ããããŒã¿ãåŠçããããã®å°èŠæš¡ãªCOBOLã¢ããªã±ãŒã·ã§ã³ãéçºããŠã¿ãã®ã§ããããã«ãã£ãŠãæ§æãå®è¡ãããŒã®å®å šãªç解ãä¿é²ããããšãã§ããŸãã
ãŸããçŸåšæŽ»çºãªãªãŒãã³ãœãŒã¹ãããžã§ã¯ãã«è²¢ç®ããããšã§ãå®è·µçãªè¿œå çµéšãåŸãããšãã§ããã§ããããä»ã®éçºè ãšååããããšã§åŸããããã£ãŒãããã¯ã¯ãããªãã®ããã°ã©ãã³ã°ã¹ãã«ã匷åããã®ã«åœ¹ç«ã€ã¯ãã§ãã
6.4 ä»åŸã®COBOLåŠç¿ãšã¹ãã«ã¢ãããžã®ã¢ãããŒã
COBOLã¹ãã«ã®åäžã¯ãåŠã³ç¶ããããšã§ã®ã¿éæå¯èœã§ããæè¡ãé²æ©ããã«ã€ããæ°ããæ©èœããã¿ãŒã³ãåŠã¶ããšãäžå¯æ¬ ã«ãªã£ãŠããŸããå®æçã«ææ°ã®ãã¬ã³ãããã¥ãŒã¹ããã§ãã¯ããç¥èãææ°ã®ç¶æ ã«ä¿ã€ããšãéèŠã§ãã
ãŸããããã°ã©ãã³ã°èœåãæç¶çã«åäžãããããã«ã¯ãå®æçã«ã³ãŒããæžãç¿æ £ãã€ããããšãèå¿ã§ããå°ããªã³ãŒãã¹ããããããå§ããŠåŸã ã«è€éãªããã°ã©ã ãäœæããããšãç®æããŸãããããªãã¡ã¯ã¿ãªã³ã°ãã³ãŒãã®æé©åã«ãç©æ¥µçã«åãçµãããšãæšå¥šãããŸãã
æåŸã«ããããã§ãã·ã§ãã«ãšããŠæé·ããããã«ã¯ãæ§ã ãªãœãããŠã§ã¢éçºã®ã©ã€ããµã€ã¯ã«ã«é¢ããçµéšãäžå¯æ¬ ã§ãããããžã§ã¯ã管çãèŠä»¶å®çŸ©ããã¹ãããããã°ãšãã£ãéçšãçµéšããããšã§ãCOBOLãå«ãå€é¢çãªã¹ãã«ã»ãããæ§ç¯ããããšãã§ããã§ãããã
7. ãŸãšã
COBOLã¯ããžãã¹ã¢ããªã±ãŒã·ã§ã³ã«äžå¯æ¬ ãªããã°ã©ã èšèªã§ãããã®æŽå²ã¯é·ãã確åºããå°äœãæã¡ãªãããé¡çšãªãã·ã³ãã«ããç¹åŸŽãäž»èŠãªçšéã¯éèãä¿éºãå ¬å ±éšéãªã©å€å²ã«ããããŸããCOBOLã®åºæ¬æ§é ã¯æ確ã§ãããŒã¿åãšå€æ°ã®æ±ããæ¡ä»¶åå²ãã«ãŒãå¶åŸ¡ããã¡ã€ã«æäœãªã©ãåºç€ãšãªããŸããéçºã«ã¯å€çš®å€æ§ãªã³ã³ãã€ã©ãIDEããããååãªãããã°æ¯æŽãåŸãããŸããäžéšã§ã¯å€ãèšèªãšèŠãªãããã¡ã§ãããè¿å¹Žã®ãã¬ã³ããã·ã¹ãã ä¿å®ã®ããŒãºã«ããããã®äŸ¡å€ã¯åè©äŸ¡ãããŠããŸããCOBOLãåŠã¶ããšã¯ãç¹å®ã®æ¥çã§é«ãåžå ŽéèŠãããããã£ãªã¢ãã¹ãæ確ã§ãããªã³ã©ã€ã³ãªãœãŒã¹ãç¡æããŒã«ããããŠã³ãã¥ããã£ã«ãããµããŒãã䜿ã£ãŠããã®ç¢ºããªã¹ãã«ã磚ãããšãã§ããŸãã