OCN光で最大124,800円おトク!

いつもお世話になっています。

いまは無縁ですが、昔、COBOLでプログラムを組んでいた者です。最近は、新しくCOBOLでシステムをつくるということがほとんどなくなっています。むしろCOBOLはレガシーシステムの代名詞のようにいわれて批判されています。

COBOLは四則演算しかできないという批判もありますが、科学技術計算でなければ四則演算以上は普通は使用しません。またスパゲティプログラム云々という批判も、作り方の問題であってCOBOLでも構造化言語も多く取り入れられ、構造化プログラムをつくることは難しくありません。

しかし最近では大きなシステムをCOBOLで作成することはなくなりました。なぜCOBOLは廃れたのでしょう。お暇なときにご教示いただければ幸いです。

A 回答 (4件)

プログラミングは、分野毎に得意とする言語が支配する時代になったって事でしょう


全てC言語で作成する、全てBASIC言語で作成する、全てCOBOLで作成する、と言う時代
では無いのだと思います。

ホームページで例えると、見ためやアクション部分に、JavaScript や HTML5 等
サーバーとのやり取り、ASP.Net PHP CGI 等、データベースとのやり取り ORACLE SQL
SQL_Server 等、そのデータベースを、社内システムで扱う(ローカル)部分は C#,VB
.Net,JAVA 等

上記で考えると、COBOLの強みに該当する言語相手は、 SQL になるのかな

VBAで、「あ~COBOLだったらもっと簡単に書けるのに」と思っても、EXCELマクロ や
ACCESSマクロが BASIC になったのは、COBOLよりも EXCEL ACCESS を「操作」する部
分が便利だったからでしょうし COBOL お得意のデータを加工して、帳票出力する部
分は、EXCEL ACCESS が内部でやってくれてるしと考えると
COBOL の反映は難しかったのかもしれません。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

たしかに
>全てC言語で作成する、全てBASIC言語で作成する、全てCOBOLで作成する、と言う時代
>では無いのだと思います。

そういうことなのでしょうね。
いまさら、要望にあわせて細かいところまで作り込んでいく時代はもう過去となったんでしょう。

お礼日時:2017/11/20 17:08

「最近は」っていうけどそんなに「最近」じゃないと思うんだよ. 多分, 15年とか 20年とかのスパンで「COBOL で書いた新しいシステム」ってないような気がするんだ. 特に COBOL は金融機関など非常に特定の分野でしか使われなかったこともあって, 大学でもほとんど教えないんだよね. そういうこともあって, 「COBOL で書ける人間が少ない」→「COBOL で書いたシステムが少ない」という負のスパイラルにはまってたってことはないかな?



よだんだけど今の Fortran ならそれなりに「構造化言語的機能」はあるね. まあ例外処理をどうしようって議論はあるけど... というか, Fortran にしても COBOL にしても「オブジェクト指向」の波は押し寄せているという現実.
    • good
    • 1
この回答へのお礼

早速のご回答ありがとうございます。

> 15年とか 20年とかのスパンで「COBOL で書いた新しいシステム」ってないような気がするんだ.

たしかにそうですね、現在COBOLが現役なのは金融関係ぐらいでしょう。でも30年ほど前でしたら、事務用ではCOBOL以外は考えられませんでした。
それがなぜ事務用のシステムでもCOBOLが使われなくなったのか、それが知りたかったんです。

VBAなんか見ていると、「あ~COBOLだったらもっと簡単に書けるのに」なんて思ってしまいます。
私の感覚が古いんでしょうね。

お礼日時:2017/11/18 06:02

システムの構築工数がかけられないからではないでしょうか?


COBOLをそのまま使うと、今の言語の何倍も工数がかかる。
構築手順自体が、最新言語に取り込まれた機能によって、
以前の細かい丁寧なしかも、複数の確認によるレビューなど、
あり得ないですから。
ご自身もこうおっしゃっていますが、「スパゲティプログラム云々という批判も、作り方の問題であってCOBOLでも構造化言語も多く取り入れられ、構造化プログラムをつくることは難しくありません。」その通りです。逆に言うと、昔を工数をかけ、標準化コーディング等もやりましたが、今はあり得ません。標準化は、ツールなどにより、半自動化され自由が無くなっている場合も多い。これは、最近の開発手法に合わせたためで、とにかく、無駄が多い。

というような印象を感じます。.NET等は、便利ですけど、昔のなんでもありのCOBOLに比べたら、がちがちに守られた言語です。

なんでもできる=ちゃんとやりゃなきゃ何にもできない

ということなのでしょう。
簡単にビジュアル的にできる言語があるのにCOBOLを使って、コンパイルしてって、
現実的ではないから、どんどん淘汰されていってるのだと感じています。
    • good
    • 1
この回答へのお礼

早速のご回答ありがとうございます。

>.NET等は、便利ですけど、昔のなんでもありのCOBOLに比べたら、がちがちに守られた言語です。

.NETはよくわからないのですが、C言語なんかもっと自由すぎる言語だと思うのですが…
私の感覚が古いんでしょうね。

お礼日時:2017/11/17 18:00

採用するシステムが少なかったことが原因です。



学術演算に特化したFortranでさえ同じ立ち位置ですよ。
汎用性がものを言う時代です。
    • good
    • 0
この回答へのお礼

早速の回答ありがとうございます。
そうですね、Fortranは最初に実用化された高級言語ですし、およそ構造化プログラムとはかけはなれた言語ですし。
ライブラリが豊富だからFORTRANは捨てられないって以前聞いたことがあるのですが、今はそうでもないのですか?

お礼日時:2017/11/17 17:56

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!


人気Q&Aランキング

おすすめ情報