構造化プログラミングで言うところの「抽象化データ構造とその操作の抽象文の共同詳細化」はオブジェクト指向のクラスで実現された。
しかし、オブジェクト指向だけでは、階層化と段階的詳細化と段階的抽象化が実現できない。
まだ構造化プログラミングは必要なのではないのか?
しかし、今は風化しているように思えて仕方がないし、ダイクストラの考えを知っていれば、もっとマシなコードが書けそうだが。
(Wikipedia の構造化プログラミング)
https://ja.wikipedia.org/wiki/%E6%A7%8B%E9%80%A0%E5%8C%96%E3%83%97%E3%83%AD%E3%82%B0%E3%83%A9%E3%83%9F%E3%83%B3%E3%82%B0
構造化プログラミングはまだ必要ではないのか?
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/08/15(水) 00:28:28.85ID:mWz8Up0Y2018/08/15(水) 11:01:29.41ID:i49BHTWw
コード書くときに「これはオブジェクト指向、あっちは構造化プログラム」っていちいち意識するかバカ者
3デフォルトの名無しさん
2018/08/15(水) 11:43:51.12ID:XWCO67672018/08/15(水) 14:01:49.63ID:/D7pa/qT
>>1
構造化プログラミングについて少し歴史的なことをメモしておこう
構造化定理は逐次的プログラム(つまり並行して動作し得る複数のプロセス・スレッド・タスクが存在せず単一のプログラムカウンタで済むプログラム)について
3基本構造(順接、分岐、反復)の表現能力に関する数学的事実を述べた定理に過ぎず、書かれるプログラムの信頼性とか読み易さ・理解し易さとは無関係
それをさも関係があるように錯覚させたのが実務畑のHarlan D. Millsの狡猾なところであり、またある意味では有能なところでもある
つまり、多くのプログラマはバカだから単純なクライテリアでなければ理解できないから、バカ向けの単純なクライテリアを与えてやった、これが確信犯Millsの功績であり罪過でもある
言い換えればDijkstraの高尚な“structured programming”の精神などはバカな大衆プログラマには理解不能で豚の耳に念仏だとMillsは悟っていたから
Dijkstraの提唱した“structured programming”という標語だけ借りて中身はバカ向けに完全に換骨奪胎したのがMills流の“structured programming=goto-less programming”という一種の運動
そして、この運動を権威づけるために使ったのが単なる表現定理に過ぎない構造化定理だったわけだ
つまり「この運動が正しいことはちゃんと数学で保証されてるんだよ!」って権威づけをしたわけね
アカデミアの世界にずっと身を置いていたDijkstraとは違い、MillsはIBMの研究員として開発現場の指導なども行って現場プログラマのほとんどはバカばかりだと嫌というほど思い知らされていたはず
だからこそ「正しいが難し過ぎてバカには正しく理解するのは不可能」なDijkstra流の高尚な“structured programming”からキャッチフレーズの“structured programming”だけ流用して
「正しくないがバカにも理解し実行できて多少は効果が見込める」Mills流の低俗な“structured programming”を広めたのだよ
そしてMichael Jacksonパパが構造化定理に基づいて事務処理向けのプログラミングを入出力データ構造の対応から3基本構造を用いる形で系統的に導出する手法として
JSP (Jackson Structured Programming) を提案して大人気を博したことでMills流の低俗な“structured programming”運動は一層の盛り上がりを見せたというわけ
構造化プログラミングについて少し歴史的なことをメモしておこう
構造化定理は逐次的プログラム(つまり並行して動作し得る複数のプロセス・スレッド・タスクが存在せず単一のプログラムカウンタで済むプログラム)について
3基本構造(順接、分岐、反復)の表現能力に関する数学的事実を述べた定理に過ぎず、書かれるプログラムの信頼性とか読み易さ・理解し易さとは無関係
それをさも関係があるように錯覚させたのが実務畑のHarlan D. Millsの狡猾なところであり、またある意味では有能なところでもある
つまり、多くのプログラマはバカだから単純なクライテリアでなければ理解できないから、バカ向けの単純なクライテリアを与えてやった、これが確信犯Millsの功績であり罪過でもある
言い換えればDijkstraの高尚な“structured programming”の精神などはバカな大衆プログラマには理解不能で豚の耳に念仏だとMillsは悟っていたから
Dijkstraの提唱した“structured programming”という標語だけ借りて中身はバカ向けに完全に換骨奪胎したのがMills流の“structured programming=goto-less programming”という一種の運動
そして、この運動を権威づけるために使ったのが単なる表現定理に過ぎない構造化定理だったわけだ
つまり「この運動が正しいことはちゃんと数学で保証されてるんだよ!」って権威づけをしたわけね
アカデミアの世界にずっと身を置いていたDijkstraとは違い、MillsはIBMの研究員として開発現場の指導なども行って現場プログラマのほとんどはバカばかりだと嫌というほど思い知らされていたはず
だからこそ「正しいが難し過ぎてバカには正しく理解するのは不可能」なDijkstra流の高尚な“structured programming”からキャッチフレーズの“structured programming”だけ流用して
「正しくないがバカにも理解し実行できて多少は効果が見込める」Mills流の低俗な“structured programming”を広めたのだよ
そしてMichael Jacksonパパが構造化定理に基づいて事務処理向けのプログラミングを入出力データ構造の対応から3基本構造を用いる形で系統的に導出する手法として
JSP (Jackson Structured Programming) を提案して大人気を博したことでMills流の低俗な“structured programming”運動は一層の盛り上がりを見せたというわけ
5デフォルトの名無しさん
2018/08/15(水) 17:57:46.43ID:XWCO6767 >>1
Wikipediaより
>1987年の第9回ソフトウェア工学国際会議(ICSE)において、Millsは会場にチューリング賞受賞者がいないことを確かめると
>「ダイクストラやホーア達はどこへ行ってしまったのか。我々はもう彼らから学ぶものがないのか。」とその現状を批判した
>(しかし木村泉の見解が当たっていたとするならば、「ソフトウェア工学」をそういったものにしていった張本人こそが、その発言をしたMillsであるということになる)。
酷いよなあ
ダイクストラの研究を粉砕した張本人がよくこんなことを言えるわ
Wikipediaより
>1987年の第9回ソフトウェア工学国際会議(ICSE)において、Millsは会場にチューリング賞受賞者がいないことを確かめると
>「ダイクストラやホーア達はどこへ行ってしまったのか。我々はもう彼らから学ぶものがないのか。」とその現状を批判した
>(しかし木村泉の見解が当たっていたとするならば、「ソフトウェア工学」をそういったものにしていった張本人こそが、その発言をしたMillsであるということになる)。
酷いよなあ
ダイクストラの研究を粉砕した張本人がよくこんなことを言えるわ
6デフォルトの名無しさん
2018/08/15(水) 20:19:38.78ID:9o1ne3nM (きちんとクラスが整理された上での)OOPこそ構造化プログラミングの結実したものと思っていたんだが違うのか
2018/08/15(水) 20:52:41.51ID:0gxCPQjR
構造化とオブジェクトは別物だと思っていたが
8デフォルトの名無しさん
2018/08/15(水) 21:28:28.97ID:mWz8Up0Y 今はオブジェクト指向さえできれば十分という風潮がある。
しかし、オブジェクト指向は主にクラスを使うというだけであって、
綺麗で分かりやすいプログラムを書けるかどうかとは別問題。
構造化プログラミングは綺麗で分かりやすいプログラムを書く手法としては今でも大事かと。
しかし、オブジェクト指向は主にクラスを使うというだけであって、
綺麗で分かりやすいプログラムを書けるかどうかとは別問題。
構造化プログラミングは綺麗で分かりやすいプログラムを書く手法としては今でも大事かと。
2018/08/15(水) 21:34:08.82ID:PyNbth/v
2018/08/15(水) 21:41:38.81ID:X+03HcfZ
COBOL、VB、Java…と時代が流れても馬鹿は馬鹿なコードを書く。
11デフォルトの名無しさん
2018/08/15(水) 22:39:09.18ID:9+ksv3W612デフォルトの名無しさん
2018/08/15(水) 22:43:49.88ID:mWz8Up0Y >>11
自分は片方だけとは書いていないが?
自分は片方だけとは書いていないが?
2018/08/16(木) 00:11:08.97ID:qKowi4/2
>>1 がクソコードしか書けないのは分かったからいちいちスレ立てんな。
2018/08/16(木) 00:21:20.74ID:zxs39t0T
>>13
いや、スレ建ての言い分は稚拙かもしれないが、
型クラスベース+継承でソフトウエアを表現すると
依存の茂みを作ってスパゲティーの山になる欠点に薄々気がついて
王様の耳はロバの耳と、あえて言っているのかもしれない…
いや、スレ建ての言い分は稚拙かもしれないが、
型クラスベース+継承でソフトウエアを表現すると
依存の茂みを作ってスパゲティーの山になる欠点に薄々気がついて
王様の耳はロバの耳と、あえて言っているのかもしれない…
2018/08/16(木) 00:46:01.96ID:uRZjuhnI
>>14
オブジェクト指向で却ってややこしくなった面もあるかもね
オブジェクト指向で却ってややこしくなった面もあるかもね
16デフォルトの名無しさん
2018/08/16(木) 01:20:22.82ID:G6TcbKDp オブジェクト指向技術はエディタの機能で代替できるような気がする。
エディタにはコードの検索や置換機能があるし、
VimやSublime,サクラエディタで高速に既存コードを再利用できる。
だからエディタの機能やVimを極めれば継承とかほぼ要らないし、
再利用性重視でなくてもいい。
変更の影響範囲とかもエディタを使って洗い出せば、管理できる。
だからオブジェクト指向の高度な機能を使わなくてもエディタや
ツールで代替えできる。
コードの差分はGitやWinMergeで洗い出せる。
オブジェクト指向のガチガチの設計を書くととにかく
変数名、メソッド名などの名前が長くなる。
名前が横に長いと非常に読みにくく画面外に隠れるし、
名前というのはスペース区切りもカンマ区切りもないわけだから、
上記のエディタ機能で編集がやりにくい。
だからJavaみたいなガチガチのオブジェクト指向ってもう今の時代
必要ないんだと思う。JavaScriptやPythonくらいのオブジェクト指向
だけで十分だもの。
Javaの作法の時代遅れ感とか、馬鹿馬鹿しさってそろそろ気付くべき。
エディタにはコードの検索や置換機能があるし、
VimやSublime,サクラエディタで高速に既存コードを再利用できる。
だからエディタの機能やVimを極めれば継承とかほぼ要らないし、
再利用性重視でなくてもいい。
変更の影響範囲とかもエディタを使って洗い出せば、管理できる。
だからオブジェクト指向の高度な機能を使わなくてもエディタや
ツールで代替えできる。
コードの差分はGitやWinMergeで洗い出せる。
オブジェクト指向のガチガチの設計を書くととにかく
変数名、メソッド名などの名前が長くなる。
名前が横に長いと非常に読みにくく画面外に隠れるし、
名前というのはスペース区切りもカンマ区切りもないわけだから、
上記のエディタ機能で編集がやりにくい。
だからJavaみたいなガチガチのオブジェクト指向ってもう今の時代
必要ないんだと思う。JavaScriptやPythonくらいのオブジェクト指向
だけで十分だもの。
Javaの作法の時代遅れ感とか、馬鹿馬鹿しさってそろそろ気付くべき。
17デフォルトの名無しさん
2018/08/16(木) 09:06:07.27ID:xlcF1CtQ18デフォルトの名無しさん
2018/08/16(木) 09:09:40.06ID:xlcF1CtQ >>15
2010年のインタビューでは、オブジェクト指向の御大は「実現方法に欠点があった」と考えてるようだ。
オブジェクト指向プログラミングは間違いだったか?
https://www.infoq.com/jp/news/2010/07/objects-smalltalk-erlang
>このインタビューを受けたのは、Erlangの最初の開発者であるJoe Armstrong博士とSmalltalk、OOP、パターンに長い間関係している
>Ralph Johnson博士だ。私たちは「間違った道」を当てもなくさまよって
>きたが、これはオブジェクトの考え方の実現方法に欠点があったため
>であり、この考え方自体の欠点ではないと2人は述べた。
2010年のインタビューでは、オブジェクト指向の御大は「実現方法に欠点があった」と考えてるようだ。
オブジェクト指向プログラミングは間違いだったか?
https://www.infoq.com/jp/news/2010/07/objects-smalltalk-erlang
>このインタビューを受けたのは、Erlangの最初の開発者であるJoe Armstrong博士とSmalltalk、OOP、パターンに長い間関係している
>Ralph Johnson博士だ。私たちは「間違った道」を当てもなくさまよって
>きたが、これはオブジェクトの考え方の実現方法に欠点があったため
>であり、この考え方自体の欠点ではないと2人は述べた。
19デフォルトの名無しさん
2018/08/16(木) 09:45:07.99ID:c55d0qec2018/08/17(金) 09:05:58.30ID:tlmPPTdZ
元祖オブジェクト志向は俺らのモノだってだけの主張
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相答弁を“引き出した”立民・岡田克也氏が改めて説明「なぜ慎重な答弁をされなかったのか。非常に残念に思っている」 ★2 [ぐれ★]
- 【速報】中国、水産物輸入停止と通達 「処理水」理由、日本政府へ ★7 [おっさん友の会★]
- 【次の一手】台湾問題で小林よしのり氏が私見「まさに戦争前夜」「ただちに徴兵制を敷いて、高市支持者を最前線へ」… [BFU★]
- 中国側が首相答弁の撤回要求、日本側拒否★7 [夜のけいちゃん★]
- 「高市人気」どこに? 自民候補が福島市長選で大敗、葛飾区議選でも苦戦 衆院早期解散論に冷や水 [1ゲットロボ★]
- 【ホタテ】中国が水産物輸入停止を伝達「ビクビクしながら…」北海道の水産業者からは落胆の声 [おっさん友の会★]
- 中国「水産物輸入停止は高市首相の発言が理由」 [256556981]
- 日本人、ついに気づく「あれ、日本が対中国で取れる対抗措置ってなくない…?」 [931948549]
- 【号外】中国外務省、高市首相が台湾関連の発言を撤回しなければ「断固たる対抗措置」を取らざるを得ないと述べた [115996789]
- 中国「次に禁止してほしいものを教えて」 [358382861]
- 【画像】外務省局長のあの写真、日本側に無許可で撮影されたものだったwwwwwwwww [834922174]
- 嫌儲、1人で発狂してると話題にwwww [279254606]
