徹底解説!一歩先を行く移植の高いCOBOLプログラムとは | 応用ガイド

COBOL(コボル)言語のプログラムの移植性が高い理由とは?

応用-移植の高いCOBOLプログラム-イメージ

COBOL(コボル)言語の優位性

COBOL言語は1959年に開発されてから、すでに50年以上経過しています。

続々と新しい言語が登場し、レガシーなCOBOLは昔から廃れる言語と言われてきましたが、2017年現在でも多くの企業で使われ続けています。

また、COBOLの重要性について認識している企業も多く、COBOLが使えることの優位性を認識しているプログラマも多く存在しています。

その理由として、金融機関の多くのシステムや大企業の基幹システムなどの多くが、現在もCOBOLで作られたシステムで運用されていることが挙げられます。

COBOLは現在主流となっている他の言語よりも先行して登場し、特定のハードウェアに偏らないマルチプラットフォームな言語として、当時の低スペックなコンピュータでも安定稼働が可能な性能を実現しています。

そのため、現在も稼働し続けている多くのシステムは、COBOLで問題無く稼働しているため、そのまま使われ続けています。

COBOL(コボル)言語の移植性が高い理由とは?

移植性の高さとは、現行のシステムから他のプラットフォームに合わせて、プログラムの内容を変更するときに書き換える箇所が少なく済む場合に移植性が高いと表現されます。プログラマの負荷が軽減できることにより、最小限の工数で移植やテストが可能となるため、コストを抑えることも可能です。

ではCOBOLではどのような点で移植性が高いのでしょうか?以下にその優れた理由を紹介します。

■マルチプラットフォーム

マルチプラットフォームとは、プログラムを複数の異なる仕様を持つコンピュータやWindowsやLinuxなどのOSで同じように動作可能にできることを言います。

COBOLのコンパイラはCORBA、DCOMのようなさまざまなコンピュータ上で書かれたプログラムを相互利用を可能にする連携プロトコルに対応しているため、マルチプラットフォーム環境でのシステムもCOBOLで構築することが可能です。

COBOLは安定性や互換性、プラットフォームに依存しないことから、極めて移植性の高い言語として評価されています。

■ISO国際標準規格として標準化されている

ISO(International Organization for Standardization)とは、スイスのジュネーブに本部を置く国際機関で、世界共通の基準を決めるための国際標準規格を策定する組織です。

COBOLの言語仕様はISOとして標準化されているため、高い水準での移植が可能な言語として知られています。

そして、さまざまな技術をCOBOLで利用できるようにするため、言語仕様拡張されています。

■COBOLの高い計算能力

COBOLはどの企業でも使われるような給与計算や事務処理などを得意としており、メーカーやプラットフォームによる精度の違いが少ないことも移植性が高い理由として挙げられます。

小数点以下の計算も正確に計算できることや、10進数の計算も少ない記述量で済みます。その点Javaなどのプログラミング言語では桁数の制約やライブラリを呼出したり、何行もコードを記述する必要があります。

COBOLは上記理由からメンテナンスも比較的容易で可読性が高く、どのような処理が記述されているのかわかりやすいと言えます。

例えば、以下のような小数点の計算でも桁数を明示的に定義することができるため、システムの仕様によってデータ項目を自由に設定できます。

サンプルプログラム:小数点以下の計算

応用-移植の高いCOBOLプログラム-サンプル

実行結果:

応用-移植の高いCOBOLプログラム-実行結果

上記のプログラムのようにCOBOL言語では、データ項目の定義時に型の指定以外にも9(4)で数値型の整数4桁、V9(5)で小数点以下を5桁など、明示的に指定することができます。

そのため、指定した範囲の桁数で正確に10進数計算を行うことが可能です。

このような処理をJavaで実現しようとすると、浮動小数点型をBigDecimal型に変換するなどの手間が発生し、記述量も増えてしまいます。

練習問題

ここでは練習問題にチャレンジしてみましょう。

問)

COBOLの移植性が高い理由を3つ挙げてください。

答え)

  • 高い安定性と互換性をもち、プラットフォームに依存しないため。
  • ISO国際標準規格に準拠されている言語であるために、高い水準で移植可能であるため。
  • 高い計算能力と精度の高さからメーカーやプラットフォームで精度の違いが少ないため。

ここではCOBOLの優位性や移植性が高い理由について解説しました。COBOLは移植性の高さから、OSやプラットフォームに依存しないさまざまなシステムで今も活躍しています。

互換性についてはベンダーやメーカーごとに独自に実装されていることもありますので、留意が必要です。しかし、ここで紹介したような特徴からCOBOLは他のプログラミング言語と比較しても移植性が高く、さまざまなシステムで活用することが可能な言語と言えるでしょう。

この記事を読んだ人は、こちらの記事も読んでいます

【未経験者歓迎】COBOLプログラマー・システムエンジニアの募集

株式会社COBOLの求人・転職・募集情報を見る

COBOL入門のカテゴリー

取引企業様 募集中
COBOL技術者 募集
COBOL魂
読者採用
COBOL入門