元気にやっていますか?
私は相変わらず、曖昧な空白とともにふらふらする毎日です。
健体壮美なあなたのことだから大丈夫だとは思いますが、
くれぐれもお体にはお気をつけください。

2010/04/16

Free IDE for COBOL - COBOLを独習したいあなたへ

全エントリにも書いたように、現在企業が抱えるCOBOL資産の多くは、メインフレーム用に開発されてきた。
システムオープン化の波に晒されたユーザ企業にとって、その遺産が目の上のタンコブであることは間違いないのだが、開発者にとってもやっかいな側面がある。
それは、今までCOBOLによるシステム開発がベンダー依存のクローズドな環境で実施されてきた結果、オープンコミュニティの発達が遅れてしまい、インターネット上のフリーリソースが他のプログラミング言語に比べて圧倒的に少なくなってしまったという点だ。
新たにCOBOLを学ぼうとする者にとっては、イタダケナイ傾向である。
新しくプログラム言語を学ぼうとした場合、まずは自分でコーディングしてみなければ話にならないわけだが、
そのための統合開発環境(IDE)が見つかりにくいというのが何よりも入り口を狭めているように感じる。
現在の若手エンジニアは、EclipseやNet Beans、MicroSoft Visual Studioなど、超便利な開発環境に慣れているのだ。

そんなわけで、COBOL用IDEをリサーチしてみた。
結果、3つの有力候補を発見することができた。

【前提】
COBOLコンパイラは、OpenCOBOLを予めインストールしておく(CygwinかMinGWのバイナリをインストールする)。
詳細は、このあたりを参照。

サクラエディタ
http://sakura-editor.sourceforge.net/
高性能なテキストエディタ。
IDEとは呼べないが、COBOLファイル(.cob .cbl)に対して、
予約やリテラルの色つき表示、領域間の罫線表示をデフォルトで提供している。
それ以上の高度な機能はないが、ちょっといじってみる程度ならこれで十分。

COBEDIT
http://www.cobtools.com/cobcgi?proid=cms&prog=cmsporta&func=ViewPage&value=251
COBOL専用エディタ。スタンドアロンで軽い。
GUIがCOBOL専用に作りこまれているので、見易さ抜群。
エディタ上のどこでも文字を挿入することが可能のため、インデントを整えやすい。
コンパイルや実行のコマンドを登録しておけば、ボタンで実行が可能。
弱点もいくつかある。
・GUI操作でのコンパイルや実行の際にエラーになってもプロンプトがすぐに閉じてしまうので、エラーの内容が確認できない。
(→結局自分でプロンプトを立ち上げてコンパイル・実行することになり、ユーティリティとしての利用価値が低い。)
・日本語が横になる。慣れればそれほど気にならないが。(デフォルトだと文字化けする。Option→Editor→ColorのFontをMSゴシックなどに変更すれば横になった状態で表示される。)
・シェアウェアなので、時々購入を促すポップアップが現れ、コーディングを邪魔する。(10秒間待たなければならない。)

Cobos
http://www.metrixware.com/cobos/
Eclipseプラグイン。
2010年4月16日現在、Ver.1.2.1.、Eclipseの3.4(Ganymede)にインストールが可能。
Eclipse本家のEclipse COBOL IDE Projectからダウンロードできないと思ったら、独立して移動していた。
Cobol Plug-In Link is Dead! - Eclipse Community Forums

Eclipseユーザお馴染みのGUIが提供されているのはもちろんだが、+αの高度な開発機能が提供されている。
<汎用機関係の機能>
  ・汎用機へのデプロイ
  ・汎用機(Z/OS)向けコンパイル実行とエラー表示
  ・3270端末エミュレータによる汎用機操作
  ・CVSソース管理
  ・SDSFによるプログラム実行監視

<エディタ関係の機能>
  ◎アウトラインによる変数へのジャンプ機能
  ?変数や予約語の補完機能
  ?コメントの折りたたみ機能
  △構文チェック機能
(?は動作が確認できなかったもの。)

汎用機へのサポートが充実しているが、個人学習者やオープン開発者にとってはあまり利点がないかもしれない(汎用機系機能の動作確認は未実施)。
また、エディタ関係の機能も、私が実施した限りではうまく動作していないものが多い。
OpenCOBOL向けのコンパイルなどは、今後のバージョンで追加されていくとのことなので、バージョンアップに期待だ。
是非ともステップ実行のデバック機能も取り入れて欲しい。

:補足
今の段階でEclipseからOpenCOBOL向けのコンパイルを実施するのには、Antを利用する方法がある。
以下、xオプションとfreeオプションを付けて、コンパイル(cobcコマンド)を実行するbuild.xmlの例。
<?xml version="1.0" encoding="UTF-8"?>
<project name="sample" default="build" basedir=".">
    <property name="workspace_location" value="C:\work"/>
    <property name="project_location" value="C:\work\sample"/>
    <target name="build">
        <apply executable="cobc" dest="C:\MinGW\bin">
            <arg value="-x"/>
            <arg value="-free"/>
            <srcfile/>
            <fileset dir="${project_location}" file="sample.cob"/>
            <mapper type="glob" from="*.cob" to="*.exe"/>
        </apply>
    </target>
</project>
コンパイルしたEXEファイルを実行する方法は、わからなかった。
わかる人がいたら教えてください。

:総評
3つとも使ってみた感じ、今の段階で一番使い勝手がよいのはCOBEDIT。

0 件のコメント:

コメントを投稿