アカウント名:
パスワード:
COBOLみたいな初等的な(しかも理解が易しい)言語は、いざとなったら誰でもできるんじゃないの?C++やJavaなんかと比べると言語仕様は圧倒的にコンパクトなはずだよね。一時的な上昇はあったとしても、そんなに進んで修練するほどの言語だとは思わないなあ。
平均的なプログラマなら、2,3日あれば、とりあえずコードは書けるようになる。大学や工業高校・商業高校における教育は、平均的なプログラマの2,3日以下の内容だ。(プログラマに向いていない人は、諦めて別の職業に就くわけだ)
けれども、大昔に書かれた大量のコードを読んで、それを理解することは、それとは別の次元の話。大昔のメインフレームに合わた、今では廃れたテクニックも多用されているだろうし、それは泥臭い仕事。
10年位前に某金融機関のシステム更新でCOBOLの部分を追っかけた事があるが、ぶっちゃけこんな感じ。
「やってることは判るが やってる意図が分からない」
で、いろんなところを訪ねてまわると、「ああ、それは○○の××さんに聞けば判るよ」と。タクシー飛ばしていくと、遙かな昔の会議の席上でのやりとりで○○さんの顔を立てる為に云々ってアンドキュメントな事が理由だったと…。仕様じゃ無いけどしょうがないからみたいな。そんなんばっかり。
それってどの言語にもありうることで。でもとりわけCOBOLがそうなりがちなのは長く長く保守が受け継がれかつ把握しづらい業種・業務に使われがちという不幸ゆえ。
サービス業の様に実態の無いもので、飛び抜けてすごいものを人為的に作為的に作ってしまった場合の末路ですよね。
docomoしかり、マクドしかり。マクドなんて(数年前まで)あまりに素晴らしすぎて、買うために窓口に並ぶのが利権に近くなって、「おまえの来る所では無い」とか言われたりして。(二度と行かないですけどね)
COBOL85だってその走りだったのだと思います。あまりに統一しすぎて、優遇しすぎて、少しでも競合と比べてアラが出ると、途端にくそみそ扱いされるなんてまさにそれです。
COBOLを学ぶとこの文章も理解できるようになるのだろうか。
書いてる意味は分かるんだけど、意図するところが分からない。
まさにそれです。 :-P
言語自体はわりと簡単だけど何したいのか理解し難い言語かも?だらだら回りくどく書いてるし、時代によっては難解なGOTO文の使い方したり。なんつーか読む気力が失せてくるかんじ。
昔はCOBOLで書いたときもあったけど、オブジェクト思考言語で慣れちゃってから読むのはとても辛いです。
Cも同じく回りくどいし難解な部分もあるけど、Cじゃないとってところで使われているからテンション下がらないんだけど。
COBOL自体は簡単なんですよ。比較的自然言語(英語)に近い構文で、何をやってるか理解しやすいですし。
ただ、仕事でCOBOLにかかわった人にのみ解る、新の恐ろしさがあるんですよ。
それは・・・変数が 英字+連番 で、台帳管理されていること・・・
せっかく構文が英語なのに、変数が記号なんですよね。おかげで可読性が高いというメリットが完全に殺されて、記述が冗長なデメリットがさらに強調されている。もうアホかと・・・
COBOL言語を覚えればCOBOLプログラミングが出来るように語るのは, 実用的なプログラミングを作ったことが無い証左のようなものです.
COBOLは確かに初等的な言語であるゆえに, システムにアクセスする部分, 例えばデータベースアクセス, 通信, ユーザインターフェイスといったところは, 全てメーカが提供するライブラリに依存します. そのため, COBOLで実用的なプログラムを書くためにはCOBOL自体に加えてそれらライブラリが何をするのか分かっていなければなりません. しかもライブラリはメーカ・OS毎に互換性が無く, 性能や実装に基づくバッドノウハウが山盛り. また言語が初等的であるがゆえに抽象化や隠蔽などのテクニックが使えず(せいぜいマクロプリプロセッサが使えるくらい), 呪文化されたバッドノウハウコードがダイレクトに散りばめられていることが多々あります. データベースに至っては, 下手すりゃCODASYL型DB [nikkeibp.co.jp]だったりRDBであってもSQLを使わない独自APIだったりするので, 今日的な技術知識では歯が立たないことも.
# というのを傍から見ていただけなのが私の幸運
まあ、COBOLそのものは大したことないってのは同意ですが、
そんな初等的な言語で、複雑な業務をこなせるようなソースコードが書かれ、初等的な言語にありがちな小手先のテクニックで最適化され、メンテされていた。
と想像すると、結構怖いです……
COBOLをVB6に置き換えて考えてみよう…COBOLやVB6に比べればC++やJavaの方がよっぽど優しいかもよ#すごくうんざりした気分になった
そんなあなたは、CobUnitを作ってくださいな。
s/COBOL/アセンブラ/
s/COBOL/アセンブリ言語/ors/COBOL/マシン語/の間違いですねw
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
コンピュータは旧約聖書の神に似ている、規則は多く、慈悲は無い -- Joseph Campbell
COBOLみたいな初等的な言語は誰でもできる (スコア:1)
COBOLみたいな初等的な(しかも理解が易しい)言語は、いざとなったら誰でもできるんじゃないの?C++やJavaなんかと比べると言語仕様は圧倒的にコンパクトなはずだよね。一時的な上昇はあったとしても、そんなに進んで修練するほどの言語だとは思わないなあ。
Re:COBOLみたいな初等的な言語は誰でもできる (スコア:5, 参考になる)
平均的なプログラマなら、2,3日あれば、とりあえずコードは書けるようになる。大学や工業高校・商業高校における教育は、平均的なプログラマの2,3日以下の内容だ。(プログラマに向いていない人は、諦めて別の職業に就くわけだ)
けれども、大昔に書かれた大量のコードを読んで、それを理解することは、それとは別の次元の話。大昔のメインフレームに合わた、今では廃れたテクニックも多用されているだろうし、それは泥臭い仕事。
Re:COBOLみたいな初等的な言語は誰でもできる (スコア:5, 興味深い)
10年位前に某金融機関のシステム更新でCOBOLの部分を追っかけた事があるが、ぶっちゃけこんな感じ。
「やってることは判るが
やってる意図が分からない」
で、いろんなところを訪ねてまわると、「ああ、それは○○の××さんに聞けば判るよ」と。
タクシー飛ばしていくと、遙かな昔の会議の席上でのやりとりで○○さんの顔を立てる為に云々って
アンドキュメントな事が理由だったと…。
仕様じゃ無いけどしょうがないからみたいな。
そんなんばっかり。
Re: (スコア:0)
それってどの言語にもありうることで。
でもとりわけCOBOLがそうなりがちなのは
長く長く保守が受け継がれかつ把握しづらい業種・業務に使われがちという不幸ゆえ。
Re: (スコア:0)
サービス業の様に実態の無いもので、飛び抜けてすごいものを人為的に作為的に
作ってしまった場合の末路ですよね。
docomoしかり、マクドしかり。
マクドなんて(数年前まで)あまりに素晴らしすぎて、買うために窓口に並ぶのが
利権に近くなって、「おまえの来る所では無い」とか言われたりして。
(二度と行かないですけどね)
COBOL85だってその走りだったのだと思います。あまりに統一しすぎて、
優遇しすぎて、
少しでも競合と比べてアラが出ると、途端にくそみそ扱いされるなんて
まさにそれです。
Re:COBOLみたいな初等的な言語は誰でもできる (スコア:1)
COBOLを学ぶとこの文章も理解できるようになるのだろうか。
Re: (スコア:0)
書いてる意味は分かるんだけど、
意図するところが分からない。
まさにそれです。 :-P
Re: (スコア:0)
「古いものをさっさと捨てたい」→「でもカネかけたくない」→「でも古いものを捨てたい」の無限ループで、
システムの更新を棚上げにしたまま人員がただ去って行って、システムダウンが会社の存亡に直結するような状況が
今日まで何年と続いてる
クソ会社昔の職場に比べたら、ね。Re:COBOLみたいな初等的な言語は誰でもできる (スコア:3)
言語自体はわりと簡単だけど
何したいのか理解し難い言語かも?
だらだら回りくどく書いてるし、時代によっては難解なGOTO文の使い方したり。
なんつーか読む気力が失せてくるかんじ。
昔はCOBOLで書いたときもあったけど、
オブジェクト思考言語で慣れちゃってから読むのはとても辛いです。
Cも同じく回りくどいし難解な部分もあるけど、
Cじゃないとってところで使われているからテンション下がらないんだけど。
Re:COBOLみたいな初等的な言語は誰でもできる (スコア:3, 興味深い)
COBOL自体は簡単なんですよ。
比較的自然言語(英語)に近い構文で、何をやってるか理解しやすいですし。
ただ、仕事でCOBOLにかかわった人にのみ解る、新の恐ろしさがあるんですよ。
それは・・・変数が 英字+連番 で、台帳管理されていること・・・
せっかく構文が英語なのに、変数が記号なんですよね。
おかげで可読性が高いというメリットが完全に殺されて、
記述が冗長なデメリットがさらに強調されている。
もうアホかと・・・
Re:COBOLみたいな初等的な言語は誰でもできる (スコア:2)
#S40年代の物なんて英数2文字の場合が・・・・
COBOLを言語として語るのは素人 (スコア:3, 参考になる)
COBOL言語を覚えればCOBOLプログラミングが出来るように語るのは, 実用的なプログラミングを作ったことが無い証左のようなものです.
COBOLは確かに初等的な言語であるゆえに, システムにアクセスする部分, 例えばデータベースアクセス, 通信, ユーザインターフェイスといったところは, 全てメーカが提供するライブラリに依存します. そのため, COBOLで実用的なプログラムを書くためにはCOBOL自体に加えてそれらライブラリが何をするのか分かっていなければなりません. しかもライブラリはメーカ・OS毎に互換性が無く, 性能や実装に基づくバッドノウハウが山盛り. また言語が初等的であるがゆえに抽象化や隠蔽などのテクニックが使えず(せいぜいマクロプリプロセッサが使えるくらい), 呪文化されたバッドノウハウコードがダイレクトに散りばめられていることが多々あります. データベースに至っては, 下手すりゃCODASYL型DB [nikkeibp.co.jp]だったりRDBであってもSQLを使わない独自APIだったりするので, 今日的な技術知識では歯が立たないことも.
# というのを傍から見ていただけなのが私の幸運
Re:COBOLみたいな初等的な言語は誰でもできる (スコア:1)
まあ、COBOLそのものは大したことないってのは同意ですが、
そんな初等的な言語で、複雑な業務をこなせるようなソースコードが書かれ、
初等的な言語にありがちな小手先のテクニックで最適化され、メンテされていた。
と想像すると、結構怖いです……
Re:COBOLみたいな初等的な言語は誰でもできる (スコア:1)
自分もCOBOLのソースを追いかけたことがあるけど、REDEFINESには結構泣かされました。
Re: (スコア:0)
COBOLをVB6に置き換えて考えてみよう…
COBOLやVB6に比べればC++やJavaの方がよっぽど優しいかもよ
#すごくうんざりした気分になった
Re: (スコア:0)
そんなあなたは、CobUnitを作ってくださいな。
Re: (スコア:0)
s/COBOL/アセンブラ/
Re: (スコア:0)
s/COBOL/アセンブリ言語/
or
s/COBOL/マシン語/
の間違いですねw