JVM COBOL コードに移行する理由

JVM COBOL コードを使用すると、次のような多くの利点が得られます。

Micro Focus COBOL はすでに Java 言語である
COBOL 言語は長い年月をかけて拡張されてきており、JVM のさまざまな機能をサポートしています。

多くの場合、JVM COBOL に移行するプロセスでは、Enterprise Developer で既存の COBOL コードを JVM COBOL コードに再コンパイルすることが必要となります。また、ILSMARTLINKAGE COBOL コンパイラ指令を使用して、JVM COBOL コードに再コンパイルすることもできます (本トピックの「」セクションを参照してください)。ILSMARTLINKAGE により、COBOL を他の マネージ 言語と相互運用できます。

JVM の機能を最大限に活用する
  • JVM によって提供されるランタイム サービスを使用できます。これにより、COBOL アプリケーションの整合性およびセキュリティを確保し、例外処理およびガベージ コレクションを実現できます。ランタイム サービスはコードの実行を最適化するため、これによってアプリケーション パフォーマンスが継続的に改善されます。
  • アプリケーションのパフォーマンスを改善できます。JVM では、ランタイムにおけるコードの実際の実行方法に基づくものを含む多くの最適化が適用されるため、静的分析では不可能な最適化を行うことができます。
  • 独自の JVM COBOL オブジェクトを作成できます。JVM COBOL によって、他の マネージ 言語で可能な多くのこと (独自のメソッド、クラス、デリゲート、インターフェイスの作成など) を実行できます。Micro Focus SupportLine Documentation Web siteで閲覧可能な『COBOL 開発者向けのオブジェクト指向プログラミング入門』を参照してください。
  • 他の マネージ 言語を使用した経験があれば、簡単に習得できます。JVM COBOL の習得は、他の マネージ 言語の習得と同様です。すでに他の マネージ 言語でプログラミングしている場合、構文規則を習得するだけです。
  • 各種の再利用可能なコード ライブラリにアクセスできます。Java SDK には、JVM COBOL コードで直接再利用できる再利用可能なコードおよび構造の大規模なライブラリが含まれます。これにより、プログラミング タスクの解決が容易になり、作業の生産性を向上できます。
COBOL は、他の言語と相互運用可能です。
  • すべての JVM 言語は同じバイト コードにコンパイルされるため、JVM COBOL コードにコンパイルされた COBOL は、他の JVM 言語で記述された他の JVM アプリケーションとやり取りしたり、他の JVM プラットフォームにディプロイしたりできます。
  • COBOL は、他の言語と相互運用可能です。他の言語は COBOL を呼び出し可能で、その逆も可能です。
  • COBOL、およびアプリケーションの他の JVM 言語で書かれた部分を、同時にデバッグできます。COBOL コードと他の JVM 言語で記述されたコードの間をステップ実行することができます。
最新のユーザー インターフェイスを作成する
JVM COBOL コードの使用は、JVM で利用できる多くの UI フレームワークを活用してアプリケーションのルック アンド フィールをモダナイズする優れた方法です。
Java アプリケーション サーバーにディプロイする
Java アプリケーション サーバーは、アプリケーションの「シン」クライアント アーキテクチャを提供する場合に必要になります。エンド ユーザーは、マシンにインストールされたシン クライアントを使用して、アプリケーション サーバーにディプロイされ、すべての要求を処理するメイン プログラムと通信します。

Enterprise Developer は、すべての主要 Java アプリケーション サーバーをサポートしており、Web サービスや Java インターフェイスなど、Java アプリケーション サーバーでの COBOL アプリケーションの作成およびディプロイを可能にします。

Web およびモバイルでディプロイするためのアプリケーションを作成する
最新のアプリケーション サーバーは、 マネージ 言語 (C#、Java、JVM COBOL など) で記述されたアプリケーションによって使用されるよう設計されています。サーバーにアップロードするアプリケーションにネイティブ COBOL を使用することは不可能な場合があり、ネイティブ プログラムがエラー条件によって終了すると不安定になる可能性もあります。