QiitaでもCOBOL coding(155) docker(196)

# はじめに
Qiitaで組立語(assembler)・機械語(machine language)・CPU「アセンブラへの道」
https://qiita.com/kaizen_nagoya/items/46f2333c2647b0e692b2

のはてなブックマークの意見で「COBOL版求む。」というご意見をいただいた。

アセンブラ、BASIC, COBOL, FORTRANの順に覚え、仕事で使って来た。

PL/1からの移行で、COBOLにするか、JAVAにするか、C#にするかという選択の相談をいただくことがある。

４つの言語を比較できるような資料を心がけたい。

どうせなら、dockerに構築するとよいかもとCOBOLから着手。

COBOLを40年ぶりにうごかしてみた:dockerでcobol
https://qiita.com/kaizen_nagoya/items/9d9a216ce1b7b05dbb43

# COBOL
アセンブラとともに、オブジェクト指向言語の代表格。

出力を想定した命名規則と変数定義により、帳票出力に適した言語。

COBOLをJAVAに書き直す案件の相談はいくつか受けたことがある。

ハードウェアの置き換え(replace)を伴わない場合には、意味がないことを確認。
ハードウェアが1000万円以上で、それが半額以下になるものに置き換える際に、該当する機器に可搬性の高いCOBOLがない場合には候補にしてもよいだろう。

つまり、移植に500万円くらい投入できるのであれば、COBOLからJAVAへの移行は無駄にならないかもしれない。

2010年頃ならC#を勧めていたと思う。自分のまわりに、急速にC#の使い手が現れ、C#ってそんなに便利だったのって思った。Visual Basicのよいところと、JAVAのよいところを併せ持ち、Visual Basicの悪いところと、JAVAの悪いところを緩和したような感じっていう。（個人の感想です）

PL/1の置き換えの場合には、いきなりJAVAに移行するより、一先ず、同じ機種のCOBOLに以降し、小規模の機種のCOBOLへ再変換することを提案したことあり。
最初にCOBOLに移行する際に、小規模機種のCOBOLと同等機能だけを利用することが鍵。

この本文を最初に書いた時、
>最近では、C＃で短くかけるらしい。 COBOLとC#の比較は急務。

と書いてしまった。個人的にはCOBOLでもC#でもどっちでもいいと思う。　

## Cobol on Qiita
そういえば弊社もCOBOL保守してるけど全然触ったこと無いなという人向け、COBOLを完全理解できる記事
https://qiita.com/e99h2121/items/47857957fd549c83b5cb

ふとCOBOL入門してみたいなと思った人向けCOBOL入門
https://qiita.com/FPC_COMMUNITY/items/4e4fbbdb70e6b79b5729

【COBOL】初めての人でも簡単に開発環境（OpenCOBOL）を構築し、Hello Worldのプログラムを作成・実行出来るようにするまで
https://qiita.com/yut-nagase/items/bd76b6424d7d0b23221f

COBOLで湯婆婆を実装してみる~2バイト文字判定の仕方~
https://qiita.com/Keita_INAGAKI/items/6bb0551a483379a94229

COBOLで湯婆婆を…
https://qiita.com/Mosaku_Anchu/items/544b36a5d0caf69f1c8b

COBOLで「Hello World」
https://qiita.com/userisgod/items/06114912264671a523fc

COBOLでHello worldを表示する
https://qiita.com/YasuOza/items/dca343695c647c98123c

COBOLを触ってみる
https://qiita.com/CyberMergina/items/4586364201867966cc2e

PostgreSQLから複数行を取得するCOBOLプログラムの例
https://qiita.com/fujii_masao/items/b6c341add8161dee9194

Windows環境におけるopensourceCOBOL環境構築手順
https://qiita.com/Fujiwara775/items/b986d5908445a480a7ee

OpenCOBOLをUbuntu16.02TLSにインストールしてみた
https://qiita.com/walukure_k2/items/c4c6fe5cd943c56d6b50

COBOLでウェッブアプリケーションを書くhttps://qiita.com/horimislime/items/f9faac73b6ccc8f47094

COBOLでGUIプログラミングもどき
https://qiita.com/nRioki/items/37f669d91ab7a2e326ab

COBOLの私見
https://qiita.com/masapiko/items/2388ea7e25dbd9227989

COBOLの構成について
https://qiita.com/masapiko/items/188dd347b7def30d0a74

COBOLの基本（コーディング制約）
https://qiita.com/walukure_k2/items/7dd2ec3aa01e99477447

ズンドコキヨシ with COBOL
https://qiita.com/Yaggytter/items/397df7a85dde0ef4ae17

COBOLでFizzBuzz
https://qiita.com/saba1024/items/8b54b0348da6bdee5ca9

COBOL VS PHP
https://qiita.com/aoi_coro_/items/2c764cf27ca51fd3a147

小数点を扱うならBCDを採用している言語が圧倒的
https://qiita.com/ma2shita/items/d8aeec9e2921dc3536f4

COBOL とその言語処理系の今昔比較
https://qiita.com/hanotch/items/c591d66245c25db682fb

COBOL初めて見たレベルからCOBOLの静的解析ツールを作った話
https://qiita.com/koob/items/3e7c8d2dc31495a2b092

WinMergeプラグイン（COBOL行頭番号無視）
https://qiita.com/tak458/items/bac4c1775be980060672

COBOLで彼女をつくりたかった
https://qiita.com/nRioki/items/85871aeb2aad5586d9b0

1人COBOL再研修〜基礎編〜
https://qiita.com/zama_8722/items/65935680e157de2c7927

## AWS

[JAWS-UG CLI] AWS Batch #3 より実践的な使い方＜COBOL使用＞
https://qiita.com/pottava/items/a1d316e5a622b705efba

COBOLをとにかく動かしたい（AWS、opensourceCOBOL）
https://qiita.com/kazu-ojisan/items/f8b94e643b1e4cf43271

COBOLをAWS上のマイクロサービスとして使ってみる
https://qiita.com/nor51010/items/dfef285e1dcf41cf27e9

## GnuCOBOL

Gnu-COBOL 四則演算
https://qiita.com/sogu/items/e021b1322a3af39d76d1

GnuCOBOLでHTML出力
https://qiita.com/tukiyo3/items/50f1ffa23e7dbc69c9e6

## macOS

Mac 上の opensource COBOL で Hello World!!
https://qiita.com/fujii_masao/items/ce57288ba8dd18859fbf

mac OS HighSierraでのCOBOL環境構築
https://qiita.com/oshuya/items/9d6926f563160f59a564

Mac(OS:El Capitan)でのCOBOL開発環境構築
https://qiita.com/xxxamxxx/items/34247c250ba73d2929de

MacにCobolを入れていじってみた話
https://qiita.com/yhinoz/items/125ff9809f74f5890a33

macOS CatalinaでVSCode使ってCOBOL環境整備
https://qiita.com/imaicom/items/fcb637138b477e2bd819

Mac上でCOBOLからPostgreSQLにアクセス
https://qiita.com/fujii_masao/items/817af1c5947f2bfdf06e

### COBOLの開発環境を快適にしよう @nonbiri15
COBOLの開発環境を快適にしよう 1 - バージョン管理と課題管理の改善 -
https://qiita.com/nonbiri15/items/2fcca2f329d5c9393b27

COBOLの開発環境を快適にしよう 2 - シンタックスハイライトをしてくれるエディタ -
https://qiita.com/nonbiri15/items/d6716f5cea30f2708bc2

COBOLの開発環境を快適にしよう　3 - 補助作業の自動化の勧め-
https://qiita.com/nonbiri15/items/76832a932b8d82f5f3a3

### AtCoder ABC : COBOL で解いてみた @ShinjiSHIBATA

AtCoder ABC 過去問 を COBOL で解いてみた
https://qiita.com/ShinjiSHIBATA/items/1ef8cbf4b87969a46015

AtCoder ABC ソート を COBOL で解いてみた
https://qiita.com/ShinjiSHIBATA/items/ea1fb8b3e98c752f3dac

AtCoder ABC 入力大き目 を COBOL で解いてみた
https://qiita.com/ShinjiSHIBATA/items/af3c9a6a8dd26233dc7e

AtCoder ABC ビット演算 を COBOL で解いてみた
https://qiita.com/ShinjiSHIBATA/items/a668b1c9ecebde58287d

### COBOLでチェックインタープリタ @madilloar

スタックを実装するには？：COBOLでチェックインタープリタ
https://qiita.com/madilloar/items/5adab1a477edccd0c505

COBOLで作るチェックインタプリタ用の仮想マシンコード、そして定数と変数：COBOLでインタープリタ
https://qiita.com/madilloar/items/8a82b56ad8a03e0e3a2f

変数をどのように扱うか？：COBOLでチェックインタープリタ
https://qiita.com/madilloar/items/a3b3572048e09badd67c

COBOLでインタープリタ的なものを作るには？
https://qiita.com/madilloar/items/153080ffea4d4c72963b

＜上記記事へのコメント：
３０年ほど前、COBOLで作成されたCASL(またはCAP-X)のアセンブラ（のシミュレータ）をPC-VANのACOSクラブ（当時サブシス）等で配布させていただいたことがあります。共用体のような感じで処理していたような記憶です。何か思い出したらご報告いたします。　参考：http://software.fujitsu.com/jp/manual/manualfiles/M050008/B1WN5901/01Z200/apgod07/apgod373.htm
＞

メインフレームOSをCent OS下で動かす(Hello World) : <ソースを見るとCOBOL>
https://qiita.com/madilloar/items/d38c9d4d323b7d4cd5ef

2020年はCOBOL元年なので1時間でHello Worldに挑戦
https://qiita.com/glassmonkey/items/695e0b021cdcb3092b98

私のCOBOL記事を参照くださっている。感謝。

### COBOL脳を解説する @egoisangel
COBOL脳を解説する（１）
https://qiita.com/egoisangel/items/c853eea91b12e96b8ed5

COBOL脳を解説する（２）
https://qiita.com/egoisangel/items/99114f0400b2d79ecc4f

## 言語比較
Groovy なら単純な計算結果がおかしくない。COBOL も（コメント参照）。
https://qiita.com/Nabetani/items/9b3585df4a1cfe232add

COBOL　>>　Ruby(on Rails)　>>　Go(revel)　>>　JavaScript(AngularJS + YEOMAN)
https://qiita.com/masahirok_jp/items/468a5d66e483296855f9

各種言語別　Hello World!出力一覧　　(適時更新予定)
https://qiita.com/cororonn/items/6dd60d6cc8529b8094fe

# オープンソースCOBOL
MacでCOBOLのプログラムを動かすまで
https://qiita.com/araya/items/f0a26c688cc7f74e5c23

Mac上でCOBOLからPostgreSQLにアクセス
https://qiita.com/fujii_masao/items/817af1c5947f2bfdf06e

Gnu-COBOL インストール
https://qiita.com/sogu/items/6851b222c6ca748424d9

Gnu-COBOL 配列
https://qiita.com/sogu/items/e584e95b7443fd47e168

COBOLを書いてみた~UbuntuとGnuCOBOLによる環境構築からプログラムを実行する~
https://qiita.com/yuichisan65/items/b8e088e5f15aa80fabcf

opensource COBOLをAWS Lambdaで動かしてみた
https://qiita.com/nor51010/items/de720093e284c4f906ac

Windows環境でWSLをつかってopensource COBOLする
https://qiita.com/nor51010/items/f11beed7a9a24bf3035e

opensource COBOLダウンロード
https://www.osscons.jp/osscobol/download/

GnuCOBOL
https://sourceforge.net/projects/open-cobol/

OpenCobolIDE
https://github.com/OpenCobolIDE/OpenCobolIDE 

node-cobol
https://github.com/IonicaBizau/node-cobol

Simh/i1401 with COBOL on docker(1)
https://qiita.com/suzanHud/items/032db7575a829e577754

Simh/i1401 with COBOL on docker(2)
https://qiita.com/suzanHud/items/6aba1031e4c95e727618

Windows環境でのCOBOL開発
https://qiita.com/r_iyama/items/ed7ade7475f0628d2c3d

# ISO/IEC/JIS COBOL
JIS X 3002-2001
http://kikakurui.com/x3/X3002-2011-01.html

COBOL -- JIS X 3002:2011公示について
https://www.itscj.ipsj.or.jp/hasshin_joho/hj_jis_kozi/cobol_jis_x_30022011_nl89.html

JIS COBOL2011の概要
http://www.cobol.gr.jp/knowledge/technical/base005.html

# 関連 on Qiita
COBOLerを脱出して、Web業界に行こう
https://qiita.com/ryuchan00/items/f7bf202136940cd96dae

COBOLERにはスキルなんてない、と言われてしまうことについて
https://qiita.com/pro_proletariat/items/f3ed59dc34776976c52a

PythonでCOBOLの転職市場を調べてみた
https://qiita.com/kkdmgs110/items/14dd48a69aed487278dd

金融機関のCOBOLに対抗して、産業（工業系）の制御を書いてみるｗ
https://qiita.com/Kazu-zamasu/items/cb5366f5ce8ebde5a2de

コボラーがDjangoエンジニアになるまでに読んだ書籍の紹介
https://qiita.com/pro_proletariat/items/b385a042d0823b73c1a6

下請けCOBOLERから抜けるための技術
https://qiita.com/pro_proletariat/items/61574ed31b5f4fa5041a

## 自己参照(self reference)
dockerでcobol。
https://qiita.com/kaizen_nagoya/items/d91aa6370f377ab676ff

プログラミング言語教育のXYZ
https://qiita.com/kaizen_nagoya/items/1950c5810fb5c0b07be4

データサイエンティストの気づき!「勉強して仕事に役立てない人。大嫌い!!」『それ自分かも?』ってなった!!!
https://qiita.com/kaizen_nagoya/items/d85830d58d8dd7f71d07

名刺代わりの技術書10選
https://qiita.com/kaizen_nagoya/items/dc497dcaa5a304fc96c8

一覧の一覧( The directory of directories of mine.) Qiita(100)
https://qiita.com/kaizen_nagoya/items/7eb0e006543886138f39

プログラマが知っていると良い「公序良俗」
https://qiita.com/kaizen_nagoya/items/9fe7c0dfac2fbd77a945

小川清最終講義、小川清最終講義（再）計画, Ethernet(100) 英語(100) 安全(100)
https://qiita.com/kaizen_nagoya/items/e2df642e3951e35e6a53

 ＜この記事は個人の過去の経験に基づく個人の感想です。現在所属する組織、業務とは関係がありません。＞
### 文書履歴(document history)
ver. 0.01 初稿 20190119 朝
ver. 0.02 参考資料追記 20190119 昼
ver. 0.03 階層構造化 20190119 午後
ver. 0.04 JIS COBOL追記 20190120 昼
ver. 0.05 オープンソースCOBOL追記 20190120 夕
ver. 0.06 COBOLを40年ぶりにうごかしてみた:dockerでcobol 追記 20190201 
ver. 0.07 URL追記 20210615
ver. 0.08 URL追記 20210819
ver. 0.09 URL等追記　20230224
### 最後までおよみいただきありがとうございました。
いいね　💚、フォローをお願いします。
####  Thank you very much for reading to the last sentence.
Please press the like icon 💚　and follow me for your happy life.

<a href="http://b.hatena.ne.jp/entry/s/qiita.com/items/60596bad631956127cf8" class="hatena-bookmark-button" data-hatena-bookmark-layout="basic-label-counter" data-hatena-bookmark-lang="ja" title="このエントリーをはてなブックマークに追加"><img src="https://b.st-hatena.com/images/v4/public/entry-button/button-only@2x.png" alt="このエントリーをはてなブックマークに追加" width="20" height="20" style="border: none;" /></a>
http://b.hatena.ne.jp/guide/bbutton