オブジェクト指向は愚かな考え。排便メソッドを実装した人間クラスから美少女クラスが作れない。
https://twitter.com/ProgrammingMono/status/665702678006140928
研究グループは、血管新生注において血管が伸長する際の血管内皮細胞注運動を制御するしくみを、生物学と数理モデル・
コンピュータシミュレーションを融合させた先端的な研究手法により明らかにしました。
生物は、最小の機能単位である細胞が寄り集まった多細胞体です。しかし、細胞の集まりが、組織や器官といった
秩序ある形態や構造をつくり機能するしくみはほとんど分かっていません。中でも血管は、体中の全組織に十分な
酸素や栄養源を効率よく供給するため、組織や組織の間に入り込み、血管外の環境との相互作用により、巧妙な
枝分かれ構造をとっています。
これまでに本研究グループは、新しく血管がつくられる(血管新生)際の細胞の動きに着目し、特に血管内皮細胞の
動きをリアルタイムで可視化し、定量的に捉えることを可能にしてきました。
今回さらに、血管の伸長を制御するしくみについて、細胞が自発的に自らを制御して動く過程(自律的過程)と、
隣接した細胞から適宜影響を受けて動く過程(協調的過程)がうまく共存することで、全体の動きが巧みに統制
されていることを世界に先駆けて実証しました。
興味深いことに、血管内皮細胞が前後したり、お互いに追い抜きあったりという血管新生で見られる複雑な細胞集団の
動きを制御している中枢部分は、細胞一つ一つの動き(スピードと方向性)の「確率的な変化」として十分説明できる
ことをコンピュータシミュレーションで実証しました。
http://www.jst.go.jp/pr/announce/20151120-2/#YOUGO3
前スレ
オブジェクト指向は愚かな考え。この世は計算式 ★2
http://peace.2ch.net/test/read.cgi/tech/1450153388/
探検
オブジェクト指向は愚かな考え。この世は計算式 ★3©2ch.net
2016/01/05(火) 02:10:25.72ID:hJUQcrkl
739デフォルトの名無しさん
2016/08/15(月) 16:45:21.70ID:P1EAyeII オブジェクト指向は愚かな考え。
排便メソッドを実装した人間クラスから美少女クラスが作れない。
排便メソッドを実装した人間クラスから美少女クラスが作れない。
740デフォルトの名無しさん
2016/08/15(月) 17:02:42.33ID:NHD7YcMK アヒルががーがーなくのではなく、がーがー鳴けばそれがアヒルなのである
うんこができればそれは人間なのである
うんこができればそれは人間なのである
741デフォルトの名無しさん
2016/08/15(月) 17:08:50.15ID:Y0Jnfl62 オウムがガーガーなけばそれはアヒルなのである?
742デフォルトの名無しさん
2016/08/15(月) 19:19:30.08ID:ATo5mwbJ743デフォルトの名無しさん
2016/08/16(火) 12:32:47.23ID:nB+m5lHF 頬を紅潮させた少女のアナルは今にも決壊寸前のダムの如くヒクヒクと静かに脈打つのであった
そのアナルをまるで獲物を狙う蜥蜴の様な眼差しでジットリと凝視していたお前は…
そのアナルをまるで獲物を狙う蜥蜴の様な眼差しでジットリと凝視していたお前は…
744デフォルトの名無しさん
2016/09/04(日) 22:44:30.10ID:AI4OMPbE やはり、オブジェクト指向は愚かな考えなんでしょうか?
それはなぜですか?
それはなぜですか?
745デフォルトの名無しさん
2016/09/05(月) 23:26:30.97ID:2pvjX+vh >>744
なんのメリットもないから
なんのメリットもないから
746デフォルトの名無しさん
2016/09/10(土) 22:12:27.45ID:vL431mpn クロージャという秘境
747デフォルトの名無しさん
2016/09/11(日) 09:06:24.12ID:HdsNani4 オブジェクト指向にクロージャーが取り入れられてから、
オブジェクト指向は更に便利になった。
オブジェクト指向は更に便利になった。
748デフォルトの名無しさん
2016/09/11(日) 09:11:08.53ID:xTqWSUIJ どうせなら理想のクロージャの構文はどんなものか議論しよう。
美少女のウンコの話はもういいから。
美少女のウンコの話はもういいから。
749デフォルトの名無しさん
2016/09/11(日) 10:48:53.37ID:EVh79L2H いや美少女うんこの方が重要だ
750デフォルトの名無しさん
2016/09/11(日) 18:47:04.73ID:LruamEXh 間をとってクソージャ
751デフォルトの名無しさん
2016/09/12(月) 10:17:01.19ID:WLe9OZIE おあとがよろしいようで
752デフォルトの名無しさん
2016/09/12(月) 11:18:07.22ID:DqPwyMnw じゃあ質問
若い時は買ってでもするものな〜んじゃ?
若い時は買ってでもするものな〜んじゃ?
753デフォルトの名無しさん
2016/09/12(月) 11:24:36.38ID:R5hylYBo コンビニでトイレだけ借りるのは気まずいので後で何か買って帰る
754デフォルトの名無しさん
2016/09/12(月) 13:15:37.24ID:zvXoPKj/ 美少女を買う
755デフォルトの名無しさん
2016/09/12(月) 21:03:27.94ID:p0km3lhz >>752
http://find-travel.jp/article/2123
シンガポール初 キッズクラブ
12歳までの子供が安全に遊べます。小さい子供連れのファミリに―にはうれしい施設です。
セントーサエキスプレスの終点ビーチ駅で下車、徒歩五分ほどです。
子供は有料ですが、付き添いの大人は、無料です。
http://find-travel.jp/article/2123
シンガポール初 キッズクラブ
12歳までの子供が安全に遊べます。小さい子供連れのファミリに―にはうれしい施設です。
セントーサエキスプレスの終点ビーチ駅で下車、徒歩五分ほどです。
子供は有料ですが、付き添いの大人は、無料です。
756デフォルトの名無しさん
2016/09/12(月) 21:04:17.88ID:p0km3lhz http://www.dan-b.com/tp_luna/page1_1.html
ウェーブスターライド
すべり台
もくば館の電動木馬
自走式のジェットコースター。小さなお子様でも、
大人の付き添いがあれば乗れる。
付き添いの大人は無料にしてくれる心遣いがうれしい。
ウェーブスターライド
すべり台
もくば館の電動木馬
自走式のジェットコースター。小さなお子様でも、
大人の付き添いがあれば乗れる。
付き添いの大人は無料にしてくれる心遣いがうれしい。
757デフォルトの名無しさん
2016/09/17(土) 19:06:05.53ID:iND/Jut9 オブジェクト指向と計算式という対比がまずおかしいスレ
758デフォルトの名無しさん
2016/10/11(火) 13:34:51.26ID:SPhMZv+b759デフォルトの名無しさん
2016/11/14(月) 16:47:20.70ID:cBDVjyju >>733
排便メソッドつくってうんち吐き出させれば良いじゃん…
排便メソッドつくってうんち吐き出させれば良いじゃん…
760デフォルトの名無しさん
2017/03/21(火) 23:51:29.32ID:RJ2XVIqX できの悪いプログラマはこうやってくだらんことに執着した挙げ句道を外すからな
オブジェクト指向を禁ずるのは当然だが、プログラムも規制すべきだろ
オブジェクト指向を禁ずるのは当然だが、プログラムも規制すべきだろ
761デフォルトの名無しさん
2017/05/12(金) 17:45:37.79ID:4b98WttR 外に公開するインターフェイスだけオブジェクト指向で中身は手続きとかできないの?
762デフォルトの名無しさん
2017/05/13(土) 00:36:36.42ID:1iFjjcJx 欲張りな事言うんじゃありません!
763デフォルトの名無しさん
2017/05/13(土) 06:58:15.64ID:tunExteF なんでもかんでもOOPしないといけないという強迫観念も新しい病気みたいなもんだ
764デフォルトの名無しさん
2017/05/14(日) 02:14:38.21ID:92l7gqU0 OOPは自然な概念。
しようとしなくても自然にOOPで書いてしまう。
しようとしなくても自然にOOPで書いてしまう。
765デフォルトの名無しさん
2017/05/14(日) 03:31:10.29ID:DFEPxXnF んじゃ、Cでファイル読んで行毎に番号振るプログラムを自然にOOPで書いてくれ。
OOPな言語でも油断してると手続き的なコードになるのが実感。
手続き型言語や関数型言語のが自然と言えば自然。
OOPはどっちかと言うと手続き型言語の限界を超える苦肉の策。
有効ではあっても、自然ではない。
OOPな言語でも油断してると手続き的なコードになるのが実感。
手続き型言語や関数型言語のが自然と言えば自然。
OOPはどっちかと言うと手続き型言語の限界を超える苦肉の策。
有効ではあっても、自然ではない。
766デフォルトの名無しさん
2017/05/14(日) 07:58:36.42ID:HpXv37Pf 手続き型の言語使ってるんだからそりゃ書き方は自然に手続き的になるわw
767デフォルトの名無しさん
2017/05/14(日) 08:01:38.88ID:FpH7uWr+ >>765
とりまなんかのOOPLで「ファイル読んで行毎に番号振る」操作の“油断した”版をideone.comあたりで晒して見せてよ
とりまなんかのOOPLで「ファイル読んで行毎に番号振る」操作の“油断した”版をideone.comあたりで晒して見せてよ
768デフォルトの名無しさん
2017/05/14(日) 09:35:08.29ID:Kxs5LDLR >>765は愚かな考え
769デフォルトの名無しさん
2017/05/15(月) 00:15:06.25ID:pPIG/Itw770デフォルトの名無しさん
2017/05/15(月) 03:18:59.80ID:sMDSuUUf 後での取り回しのために動作分離してオブジェクトにするんであって
なんで"その中身をオブジェクト指向で書けるか?"なんて
頓珍漢な発想が出るのかの方が不思議だよ。
なんで"その中身をオブジェクト指向で書けるか?"なんて
頓珍漢な発想が出るのかの方が不思議だよ。
771デフォルトの名無しさん
2017/05/15(月) 07:10:20.57ID:fipzejMn まぁそうだよね。関数型だって関数の中味に手続き書くだろうし
772デフォルトの名無しさん
2017/05/15(月) 07:18:26.21ID:Nl227Lk0 関数型言語で手続きは書けんですわ
773デフォルトの名無しさん
2017/05/15(月) 09:31:45.07ID:OVQU3b0Y んなこたーない何のためのモナドだよ
774デフォルトの名無しさん
2017/05/15(月) 12:20:31.47ID:BOxxzUgK >>771
関数型言語では手続きは書かない。
式か、式とパターンマッチやガードによる条件わけだけ。モナドもdo形式で書くと手続きっぽいけど、実際は大きな一つの式。
if/caseに似てるけど、文と式が入り乱れるのと違って全部式。
それで何が嬉しいかと言うと、正しい動作をすると言う証明が出来る。
関数型言語では手続きは書かない。
式か、式とパターンマッチやガードによる条件わけだけ。モナドもdo形式で書くと手続きっぽいけど、実際は大きな一つの式。
if/caseに似てるけど、文と式が入り乱れるのと違って全部式。
それで何が嬉しいかと言うと、正しい動作をすると言う証明が出来る。
775デフォルトの名無しさん
2017/05/15(月) 12:31:36.20ID:ADjMf5zc せやね関数型言語でも中身はモナド駆使して手続き的に書くのが自然やからね
…せやろか?
…せやろか?
776デフォルトの名無しさん
2017/05/16(火) 00:16:27.17ID:HWJ+4Z2c >>767
import sys
for i, line in enumerate(open(sys.argv[1])):
____print i, line,
Python3だとprint i, line end = ' '
ついついこう書いちゃうだろ?
でも、出力先がGUIになった途端破綻する。
そう言うのを見越して汎用的にしとかんと。
import sys
for i, line in enumerate(open(sys.argv[1])):
____print i, line,
Python3だとprint i, line end = ' '
ついついこう書いちゃうだろ?
でも、出力先がGUIになった途端破綻する。
そう言うのを見越して汎用的にしとかんと。
777デフォルトの名無しさん
2017/05/16(火) 06:05:49.63ID:TdUcLCGW 出力先を切り替えられるようにしたい、は別の要件でしょ
778デフォルトの名無しさん
2017/05/16(火) 06:12:48.09ID:YL1OfOAE >>776が全然破綻しとらん件
779デフォルトの名無しさん
2017/05/19(金) 01:55:11.10ID:879cm/wV CでOOPしてたやつって、なんかのGUIライブラリでなかったっけか?
780デフォルトの名無しさん
2017/05/19(金) 10:49:17.61ID:sbMh7Sut gtk
781デフォルトの名無しさん
2017/05/22(月) 08:36:50.27ID:wGbbC49U X
782デフォルトの名無しさん
2017/06/20(火) 16:22:37.74ID:AtKkt+PQ オブジェクト指向の方が自然だと思うし好きだけどPythonやjsみたいな動的型付け言語でオブジェクト指向は無理というか無駄な気がしてきた
オブジェクト指向は副作用を限定化するためにカプセル化が必須だけど動的型付け言語だとそれが保証されない
横からいくらでもメンバの付け足しやメソッドのすげ替えができてしまう
そうなると副作用の保証ができないどころか、静的解析によるインテリセンスやエラー検出というメリットさえ捨てる羽目になる
そうなるともうオブジェクト指向で作る意味がない
クラス単位で保証ができない以上、関数で保証する他なく
必然的に関数型にせざるを得ない
オブジェクト指向は副作用を限定化するためにカプセル化が必須だけど動的型付け言語だとそれが保証されない
横からいくらでもメンバの付け足しやメソッドのすげ替えができてしまう
そうなると副作用の保証ができないどころか、静的解析によるインテリセンスやエラー検出というメリットさえ捨てる羽目になる
そうなるともうオブジェクト指向で作る意味がない
クラス単位で保証ができない以上、関数で保証する他なく
必然的に関数型にせざるを得ない
783デフォルトの名無しさん
2017/06/20(火) 18:50:11.59ID:8inGEH6m 「世界がどんどん変わって行くのを俺が全部コントロールして阻止しなければならない…
そうでなければ世界はバラバラになってしまう…」
「どうしたんですか?先輩」(もぐもぐ
「おお後輩!…なんだそれ?」
「売店がパンじゃなくて弁当扱い出したんですよ
ゴミかさばるから売店とこで捨てろですって。
まぁ、どうせ僕が一括して持ってくんでしょうがw」
「後輩」
「はい?」
「カレーある?」
「たしか」
「じゃあ、それ一つ」
「はい」
そうでなければ世界はバラバラになってしまう…」
「どうしたんですか?先輩」(もぐもぐ
「おお後輩!…なんだそれ?」
「売店がパンじゃなくて弁当扱い出したんですよ
ゴミかさばるから売店とこで捨てろですって。
まぁ、どうせ僕が一括して持ってくんでしょうがw」
「後輩」
「はい?」
「カレーある?」
「たしか」
「じゃあ、それ一つ」
「はい」
784デフォルトの名無しさん
2017/06/21(水) 09:03:10.49ID:Y4WM7moX オブジェクト指向と副作用の保証は関係ない
785デフォルトの名無しさん
2017/07/27(木) 03:06:58.86ID:9ehpllTb パイセン方、JS勉強したてでオブジェクト指向って言葉が出てきたばっかでよく分かってないドブネズミ以下の僕に教えて
オブジェクト指向ってプログラミングのルールとか具体的な所作のことを指すの?
例えば「このプログラムは誰が読んでも分かりやすいものしよう」程度のものはオブジェクト指向とは言わないの?
オブジェクト指向ってプログラミングのルールとか具体的な所作のことを指すの?
例えば「このプログラムは誰が読んでも分かりやすいものしよう」程度のものはオブジェクト指向とは言わないの?
786デフォルトの名無しさん
2017/07/27(木) 04:46:03.86ID:wpPsIhCe オブシコきっしょ
787デフォルトの名無しさん
2017/07/27(木) 19:35:15.21ID:NhSve46F >>785
最初、「適当に飛び先決めて好きなように処理書いて戻す」やってたら
後でプログラマが死にそうになったので
"入り口があったら出口はここ"とブロック化しようぜ!が『構造化プログラミング』
Cなどが直接の成果で今の言語はほぼこの流れを受け継いでる。
次にブロック(サブルーチン)化されたからこれをクラスとして使いまわそうぜ!が『オブジェクト指向』
ここで単純に使い回しの方向でCから発展したのがC++
主目的が使い回し。
それとは別にブロックを使い回すにあたって「これをやれ」という具体的な
コマンドを受けてクラスが独自に動くようにすれば
相互の関係がゆるくなって取り回しと修正が楽になる。というのが
smalltalk>objective-C>JAVA〜と続いてるメッセージ/メソッド方式
目的はクラスの独立
もっと進んで命令すればクラスが自分でデータや仕事探すぐらいになるだろ?
というエージェント指向はまだ実現していない。
最初、「適当に飛び先決めて好きなように処理書いて戻す」やってたら
後でプログラマが死にそうになったので
"入り口があったら出口はここ"とブロック化しようぜ!が『構造化プログラミング』
Cなどが直接の成果で今の言語はほぼこの流れを受け継いでる。
次にブロック(サブルーチン)化されたからこれをクラスとして使いまわそうぜ!が『オブジェクト指向』
ここで単純に使い回しの方向でCから発展したのがC++
主目的が使い回し。
それとは別にブロックを使い回すにあたって「これをやれ」という具体的な
コマンドを受けてクラスが独自に動くようにすれば
相互の関係がゆるくなって取り回しと修正が楽になる。というのが
smalltalk>objective-C>JAVA〜と続いてるメッセージ/メソッド方式
目的はクラスの独立
もっと進んで命令すればクラスが自分でデータや仕事探すぐらいになるだろ?
というエージェント指向はまだ実現していない。
788デフォルトの名無しさん
2017/07/27(木) 20:29:54.68ID:5IXklzdW Javaをそちらのダメな考え方の方に入れるのはJavaが可哀そう
789デフォルトの名無しさん
2017/07/27(木) 20:37:05.89ID:2IdVcl0s メソッドはメッセージ側のスタイルなんでなぁ。
ウィキペディアの「影響を受けた言語」書き換えてくるかい?
「クラスとは構造体に関数がついたもの」って90年代の
C++なんかをベースにしたオブジェクト指向の説明とか
いまじゃ誰も電波すぎて理解できねぇよ。
「自動車は馬車から馬が外れたものである」かっつの…
ウィキペディアの「影響を受けた言語」書き換えてくるかい?
「クラスとは構造体に関数がついたもの」って90年代の
C++なんかをベースにしたオブジェクト指向の説明とか
いまじゃ誰も電波すぎて理解できねぇよ。
「自動車は馬車から馬が外れたものである」かっつの…
790デフォルトの名無しさん
2017/07/27(木) 21:48:06.61ID:5IXklzdW オブジェクトはデータに自身を操作するための処理が付いたもの
というありがちな説明は、これを正しいとするかどうかは別として
電波すぎて理解できない、という程のものではない
厳密かどうかは置いておいたとして、具体性があり、ある種の分かりやすさはある
「データ」とか「処理」とかいう言葉は、プログラマじゃなくても知ってる一般的な言葉だし
大体の人が正しく理解して使っているであろう
ということと、コンピュータの根本の原理も大昔から特に変わってないので
「データ」や「処理」という言葉が、理解できないほどに意味をなさなくなっているわけでもない
普通に理解できる範囲
実際にはもっと賢い表現が適切であろうが、今は理解できる文言かどうかが焦点であるから
関係が無い
どちらかというとsmalltalkというかアランケイのオブジェクト指向の表現の方が若干電波であり
事前に知識が無ければ、何を言っているかよくわからない、正しく理解できない
現実の部分が見えてこない、拡大解釈してしまう、思考が発散する、といったところ
最終的には生態系がどうのこうの言い出すから
というありがちな説明は、これを正しいとするかどうかは別として
電波すぎて理解できない、という程のものではない
厳密かどうかは置いておいたとして、具体性があり、ある種の分かりやすさはある
「データ」とか「処理」とかいう言葉は、プログラマじゃなくても知ってる一般的な言葉だし
大体の人が正しく理解して使っているであろう
ということと、コンピュータの根本の原理も大昔から特に変わってないので
「データ」や「処理」という言葉が、理解できないほどに意味をなさなくなっているわけでもない
普通に理解できる範囲
実際にはもっと賢い表現が適切であろうが、今は理解できる文言かどうかが焦点であるから
関係が無い
どちらかというとsmalltalkというかアランケイのオブジェクト指向の表現の方が若干電波であり
事前に知識が無ければ、何を言っているかよくわからない、正しく理解できない
現実の部分が見えてこない、拡大解釈してしまう、思考が発散する、といったところ
最終的には生態系がどうのこうの言い出すから
791デフォルトの名無しさん
2017/07/28(金) 08:44:57.99ID:NpsU3dCh >>790
> どちらかというとsmalltalkというかアランケイのオブジェクト指向の表現の方が若干電波
アラン・ケイのメッセージングのオブジェクト指向は、設計・実装・実行・運用・保守とあらゆる局面における
「遅延結合」(…という表現だと実行時のみにひっぱられる人がいるので「決定の遅延」の方がベターか)を
メッセージングというお題目を通じて実践・徹底・サポートするアイデアなのだけど
http://d.hatena.ne.jp/katzchang/20080807/p2
http://metatoys.org/oxymoron/oxymoron.html
具体的にはどこらへんが“電波”だと感じるのか、きかせてもらってもいい?
> どちらかというとsmalltalkというかアランケイのオブジェクト指向の表現の方が若干電波
アラン・ケイのメッセージングのオブジェクト指向は、設計・実装・実行・運用・保守とあらゆる局面における
「遅延結合」(…という表現だと実行時のみにひっぱられる人がいるので「決定の遅延」の方がベターか)を
メッセージングというお題目を通じて実践・徹底・サポートするアイデアなのだけど
http://d.hatena.ne.jp/katzchang/20080807/p2
http://metatoys.org/oxymoron/oxymoron.html
具体的にはどこらへんが“電波”だと感じるのか、きかせてもらってもいい?
792デフォルトの名無しさん
2017/07/28(金) 09:16:50.33ID:oLQXjxeQ 全部電波じゃねえかwww
793デフォルトの名無しさん
2017/07/28(金) 10:03:16.12ID:orh4jmw3 >>791
前からちょいちょい思ってたけれど、脳がパソコンの一個のCPUで完結してる人とか
処理時間の遅れとか当人の脳内世界に存在しないから概念が理解できないみたい。
60年代に大学間などの通信ネットワークが作られてこのかた
現代のマルチタスク・マルチコアに至るまで
相手の処理終了が不明な状態で
"逐次実行なんか期待できない"というところから話が始まってるのに
脳が「プログラムってバッチ処理だろ?」で止まってるから
「順番に動かないプログラムなんてあるか!」って本気で思ってるんだよ、こういう人…
前からちょいちょい思ってたけれど、脳がパソコンの一個のCPUで完結してる人とか
処理時間の遅れとか当人の脳内世界に存在しないから概念が理解できないみたい。
60年代に大学間などの通信ネットワークが作られてこのかた
現代のマルチタスク・マルチコアに至るまで
相手の処理終了が不明な状態で
"逐次実行なんか期待できない"というところから話が始まってるのに
脳が「プログラムってバッチ処理だろ?」で止まってるから
「順番に動かないプログラムなんてあるか!」って本気で思ってるんだよ、こういう人…
794デフォルトの名無しさん
2017/07/28(金) 13:34:41.77ID:NpsU3dCh795デフォルトの名無しさん
2017/07/28(金) 16:54:15.12ID:s1JdgxyV >>790
>事前に知識が無ければ、何を言っているかよくわからない、正しく理解できない
Smalltalkを理解するために事前の知識は要らないぞ。
実践せずに本やブログ記事を読むだけで理解しようと思っている人は苦労するだろうけど。
>事前に知識が無ければ、何を言っているかよくわからない、正しく理解できない
Smalltalkを理解するために事前の知識は要らないぞ。
実践せずに本やブログ記事を読むだけで理解しようと思っている人は苦労するだろうけど。
796デフォルトの名無しさん
2017/07/28(金) 19:42:10.36ID:NpsU3dCh >>795
んー、それはどうだろう。気持ちはわらんでもないけど、ちょっと言い過ぎではないかなぁ…
たとえば同じように Python を“理解するために事前に必要とされる知識”を問われた場合、
どんな答えを想定しているか教えてもらえる?
あるいは Java なら必要だけど、Python であれば Smalltalk と同程度には必要ないとかそんな程度の話?
んー、それはどうだろう。気持ちはわらんでもないけど、ちょっと言い過ぎではないかなぁ…
たとえば同じように Python を“理解するために事前に必要とされる知識”を問われた場合、
どんな答えを想定しているか教えてもらえる?
あるいは Java なら必要だけど、Python であれば Smalltalk と同程度には必要ないとかそんな程度の話?
797デフォルトの名無しさん
2017/07/29(土) 15:03:26.59ID:sLFMqneM 例のFILE構造体を用いたファイル操作はファイルシステムに対する低水準な操作がカプセル化され利用者から見えない設計だからオブジェクト指向設計、
と言って良いものかどうか…
(内部ではiob[ ]という配列操作になっておりインスタンスの個数に上限がある
&& 物理ディスクの個数はもっと小さいから、ファイル操作の内部の実装にはiob[ ]全体を操作対象とする手続き型のコードが含まれる
これをオブジェクト指向と呼んで良いのなら、ユニックスのシステムコールやWin32 APIからハンドルを受け取って
ハンドルに対して操作を行うのは全部オブジェクト指向と呼んで良いことになる
が
と言って良いものかどうか…
(内部ではiob[ ]という配列操作になっておりインスタンスの個数に上限がある
&& 物理ディスクの個数はもっと小さいから、ファイル操作の内部の実装にはiob[ ]全体を操作対象とする手続き型のコードが含まれる
これをオブジェクト指向と呼んで良いのなら、ユニックスのシステムコールやWin32 APIからハンドルを受け取って
ハンドルに対して操作を行うのは全部オブジェクト指向と呼んで良いことになる
が
798デフォルトの名無しさん
2017/07/29(土) 15:11:23.58ID:sLFMqneM >>793
順番として書けないプログラムがあるか!!!!111!!!!1!
確かに非同期に動く複数のブツというやつは全体としては順序的でない並列的な振る舞をするが
それらを同期させる手順自体は順序として書ける(そうでないとCPUに処理させられない
順番として書けないプログラムがあるか!!!!111!!!!1!
確かに非同期に動く複数のブツというやつは全体としては順序的でない並列的な振る舞をするが
それらを同期させる手順自体は順序として書ける(そうでないとCPUに処理させられない
799デフォルトの名無しさん
2017/07/29(土) 22:52:17.25ID:H/n/hEUB >>798
のような話もあると思う
マルチプロセスだろうが、複数のコンピュータだろうが、なんであれ
結局、処理の順番は大事だろう
というのもあるが、それは置いておいたとして
>"逐次実行なんか期待できない"というところから話が始まってるのに
逐次実行が期待できないケースがあったとして、それはそれで置いておくけど
逐次実行が期待できるケースにまでそのモデルを使わなければならないのかどうなのか
ってのは有ると思う
a = 1 + b; ・・・@
b = c + 2; ・・・A
の@Aに関しては、少なくとも逐次実行を期待したいし
複雑なモデルは必要ないと思う
全部の個所において、ありとあらゆることを想定した包括的モデル、を適用するのは
あまり好きではない
のような話もあると思う
マルチプロセスだろうが、複数のコンピュータだろうが、なんであれ
結局、処理の順番は大事だろう
というのもあるが、それは置いておいたとして
>"逐次実行なんか期待できない"というところから話が始まってるのに
逐次実行が期待できないケースがあったとして、それはそれで置いておくけど
逐次実行が期待できるケースにまでそのモデルを使わなければならないのかどうなのか
ってのは有ると思う
a = 1 + b; ・・・@
b = c + 2; ・・・A
の@Aに関しては、少なくとも逐次実行を期待したいし
複雑なモデルは必要ないと思う
全部の個所において、ありとあらゆることを想定した包括的モデル、を適用するのは
あまり好きではない
800デフォルトの名無しさん
2017/07/30(日) 00:46:29.50ID:k8Kwm2zH a={1,2,........100};
sum(a);
こんな場合、遠くの鯖でも近くの鯖でも10なら10ずつ(実際ににはもっと粒度が大きくないと割に合わないけど)分割して1-10の合計+11-20の合計+...って感じで全部揃いさえすれば順番関係無いって処理もあるお。
sum(a);
こんな場合、遠くの鯖でも近くの鯖でも10なら10ずつ(実際ににはもっと粒度が大きくないと割に合わないけど)分割して1-10の合計+11-20の合計+...って感じで全部揃いさえすれば順番関係無いって処理もあるお。
801デフォルトの名無しさん
2017/07/30(日) 02:32:19.52ID:pLyoXQEm >>799
オブジェクト指向(C++とかじゃなくて上でいうアランケイ的な)が
逐次処理を否定していると思ってるなら、それは違う
言うならば、並列処理できるときにも逐次処理するのを否定しているという感じ。
その例にあげた依存のある計算みたいに、逐次処理が必要なところは
そうしなきゃならない。でもそうじゃないところは並列にやればいい。
CPUのスーパースカラも同じだね。前の命令の演算結果を参照するような
場合はパイプラインが止まるけど、依存が無ければ並列にどんどん進められる
オブジェクト指向(C++とかじゃなくて上でいうアランケイ的な)が
逐次処理を否定していると思ってるなら、それは違う
言うならば、並列処理できるときにも逐次処理するのを否定しているという感じ。
その例にあげた依存のある計算みたいに、逐次処理が必要なところは
そうしなきゃならない。でもそうじゃないところは並列にやればいい。
CPUのスーパースカラも同じだね。前の命令の演算結果を参照するような
場合はパイプラインが止まるけど、依存が無ければ並列にどんどん進められる
802デフォルトの名無しさん
2017/07/30(日) 08:12:50.06ID:oVuvng50 >>800
バ、バラバラに計算した部分和を最後にどうするんです?
バ、バラバラに計算した部分和を最後にどうするんです?
803デフォルトの名無しさん
2017/07/30(日) 08:15:16.39ID:1m5312Xu sumなんだから足し合わせる。
804デフォルトの名無しさん
2017/07/30(日) 08:20:27.85ID:oVuvng50805デフォルトの名無しさん
2017/07/30(日) 10:22:05.09ID:AatiOL5G C#, Java8 の、Parallel はそう。
並列処理で、最後に同期する
各スレッドでソートして、最後にマージするとか
並列処理で、最後に同期する
各スレッドでソートして、最後にマージするとか
806デフォルトの名無しさん
2017/07/30(日) 20:37:12.58ID:OOsADo1S807デフォルトの名無しさん
2017/07/30(日) 22:10:03.14ID:22wh/XXk 処理が一つの処理(タスク)単位になった時に
シングルタスク指向じゃやってられないよねってあたりまえの話なのに
なんで2017年に「そんなことはない!俺はオブジェクト指向が嫌いだ!」って
頭ごとシングルタスクのじいさんが湧くんだ…
シングルタスク指向じゃやってられないよねってあたりまえの話なのに
なんで2017年に「そんなことはない!俺はオブジェクト指向が嫌いだ!」って
頭ごとシングルタスクのじいさんが湧くんだ…
808デフォルトの名無しさん
2017/07/30(日) 22:15:37.41ID:uSOmX9+I >>801
そういう風に俺は言ってない
>逐次実行が期待できないケースがあったとして、それはそれで置いておくけど
>逐次実行が期待できるケースにまでそのモデルを使わなければならないのかどうなのか
と書いた
そういう風に俺は言ってない
>逐次実行が期待できないケースがあったとして、それはそれで置いておくけど
>逐次実行が期待できるケースにまでそのモデルを使わなければならないのかどうなのか
と書いた
809デフォルトの名無しさん
2017/07/30(日) 22:23:06.49ID:uSOmX9+I シングルタスクじゃ扱いきれなくて
マルチタスクが合ってるって思える部分が出てきたら
その部分ではマルチタスク指向とやらをやれば良いのでは?
オブジェクト指向とは直接的に関係が無いね
マルチタスクが合ってるって思える部分が出てきたら
その部分ではマルチタスク指向とやらをやれば良いのでは?
オブジェクト指向とは直接的に関係が無いね
810デフォルトの名無しさん
2017/07/30(日) 22:57:11.52ID:UpPLfSXm C++とかハードに直結してるのに使い回しにだけオブジェクト指向を使おうとしたクソを通してオブジェクト指向知った人の末路がこれ
811デフォルトの名無しさん
2017/07/30(日) 22:57:44.42ID:AatiOL5G シングルスレッドで同時接続数、1万をこなす、Node.js の、WebSocket
ただし、CPU を多く使うものは、ダメだけど
ただし、CPU を多く使うものは、ダメだけど
812デフォルトの名無しさん
2017/07/30(日) 23:41:28.81ID:uSOmX9+I そーゆーのとオブジェクト指向は本質的に関係なくない?
タスクの実装に向いているとしたところで
じゃあ、タスクの実装以外ではメリット無いのか?ってことになる
全体的にはマルチタスク的だったとしても、細かく見ていけば、個々はシングルタスクな部分も出てくるだろ
ほとんどのOO言語のオブジェクトの実装は
「データと処理を一纏めにしたもの」、っていう実装になってることが多いんだから
それを考えると、ほとんど何でも実装しやすいんだけども
(↑マルチタスクとかシングルタスクとか関係なくね)
この説明に拒否反応を示す人がいて
> いまじゃ誰も電波すぎて理解できねぇよ。
って言うから、どーなんだよ、と
オブジェクトはデータと処理を一纏めにしたもの、ってそんなに理解しにくいか?という話だったはず
ただ、この説明の仕方は、かなりボトムアップ的で、実装から炙り出したところがあって
「とどのつまりこういうことだろ」と頭ごなしに言われているようで気分が悪い
つまり、オブジェクト指向の効率的で有効な実装は、えてしてそうなる、というような
あとオブジェクトの全貌は語ってなくて、「言っている範囲においては間違ったことは言ってない」
程度の説明でしかないけども
しかし実際にそのような実装になってる言語が多いから、完全に無視してよいというものではないし
頭にはおいておかなければならないね
タスクの実装に向いているとしたところで
じゃあ、タスクの実装以外ではメリット無いのか?ってことになる
全体的にはマルチタスク的だったとしても、細かく見ていけば、個々はシングルタスクな部分も出てくるだろ
ほとんどのOO言語のオブジェクトの実装は
「データと処理を一纏めにしたもの」、っていう実装になってることが多いんだから
それを考えると、ほとんど何でも実装しやすいんだけども
(↑マルチタスクとかシングルタスクとか関係なくね)
この説明に拒否反応を示す人がいて
> いまじゃ誰も電波すぎて理解できねぇよ。
って言うから、どーなんだよ、と
オブジェクトはデータと処理を一纏めにしたもの、ってそんなに理解しにくいか?という話だったはず
ただ、この説明の仕方は、かなりボトムアップ的で、実装から炙り出したところがあって
「とどのつまりこういうことだろ」と頭ごなしに言われているようで気分が悪い
つまり、オブジェクト指向の効率的で有効な実装は、えてしてそうなる、というような
あとオブジェクトの全貌は語ってなくて、「言っている範囲においては間違ったことは言ってない」
程度の説明でしかないけども
しかし実際にそのような実装になってる言語が多いから、完全に無視してよいというものではないし
頭にはおいておかなければならないね
813デフォルトの名無しさん
2017/07/31(月) 20:33:56.98ID:E0ER4Q8l814デフォルトの名無しさん
2017/07/31(月) 20:46:14.25ID:nj7BetAr 「あ、お客さま、こちらのおリンゴ少々傷んでおりますので、交換致しますね」
レジから店員が離れたらどうなっちゃうの!どうなっちゃうの!?
もう仕事できないよね!業務崩壊だよね!!
「はい、こちらで宜しかったでしょうか? では御会計は〜」
戻ってくるなんて説明なかったよね!処理が続くとも言ってないよね!!!
ボク意味わかんない!!!!!!!!
レジから店員が離れたらどうなっちゃうの!どうなっちゃうの!?
もう仕事できないよね!業務崩壊だよね!!
「はい、こちらで宜しかったでしょうか? では御会計は〜」
戻ってくるなんて説明なかったよね!処理が続くとも言ってないよね!!!
ボク意味わかんない!!!!!!!!
815デフォルトの名無しさん
2017/07/31(月) 21:15:55.31ID:E0ER4Q8l >>814
お客様はCPUです!!
お客様はCPUです!!
816デフォルトの名無しさん
2017/08/01(火) 02:33:45.51ID:A0OBZNC2 オブジェクト指向は、データと処理をひと纏めにする?
馬鹿じゃないの。
機能で分けるの。
馬鹿じゃないの。
機能で分けるの。
817デフォルトの名無しさん
2017/08/01(火) 08:15:51.20ID:9qUpAvFS >>816
機能で分けることはデータと処理を一体化することを否定しない
機能で分けることはデータと処理を一体化することを否定しない
818デフォルトの名無しさん
2017/08/01(火) 08:17:16.36ID:9qUpAvFS 一体化とはつまり一線を超えるということ
819デフォルトの名無しさん
2017/08/01(火) 09:02:35.58ID:qHCR3K6Z そんな集合論の話してるんじゃなかろうに
820デフォルトの名無しさん
2017/08/01(火) 15:47:46.27ID:zRlG3ihR 機能で分けるって言ったら、そら、なんでも機能で分けるもんなんだよ
例えばCなんかで関数に分けるって事を考えても、当たり前、機能で分けるわ
機能で分けるってだけじゃ何の説明にもなってない
むしろ機能以外で分ける必然性がないし
だから機能で分けるのはどのような何であろうと、分ける以上は当たり前そうする前提として
「具体的にどのような方法、単位で分けるの?」って部分がないと
その時に、データと処理を一纏めにしたものをオブジェクトとして、ってのが出てくる
クラスは機能で分ける、って文言は、おかしなクラス設計をする人に対して
クラスは機能で分けなきゃダメだよ、と注意するために有るのであって
オブジェクト指向の説明にはなってないんだよ
例えば、「関数は機能でわける」って言い方も出来るし、なんでもそうじゃん
例えばCなんかで関数に分けるって事を考えても、当たり前、機能で分けるわ
機能で分けるってだけじゃ何の説明にもなってない
むしろ機能以外で分ける必然性がないし
だから機能で分けるのはどのような何であろうと、分ける以上は当たり前そうする前提として
「具体的にどのような方法、単位で分けるの?」って部分がないと
その時に、データと処理を一纏めにしたものをオブジェクトとして、ってのが出てくる
クラスは機能で分ける、って文言は、おかしなクラス設計をする人に対して
クラスは機能で分けなきゃダメだよ、と注意するために有るのであって
オブジェクト指向の説明にはなってないんだよ
例えば、「関数は機能でわける」って言い方も出来るし、なんでもそうじゃん
821デフォルトの名無しさん
2017/08/01(火) 19:28:14.48ID:zRlG3ihR 平たく言えば「機能で分ける」ってのは
クラスの作り方や設計方針の話であって
クラスやオブジェクトの根底のメカニズムについては何も言及してないんだよ
クラスの作り方や設計方針の話であって
クラスやオブジェクトの根底のメカニズムについては何も言及してないんだよ
822デフォルトの名無しさん
2017/08/01(火) 21:13:20.77ID:jGPQWGeS ふる〜いサブルーチン的な「関数」の発想だと
たとえば「ドルと円を換算する」"関数"はただの「処理機」だから
レートと額を送ると換算額が返ってくる、という発想になる。
そこがオブジェクト指向では「ドルと円を換算する」"クラス"は
そういう処理をする「処理場」なので送るのは
"換算してくれ"という命令コマンドと額になる。
違いはなんだろう?
「関数じゃなくてクラスはレートってデータを持ってて、換算という操作関数が付いてんだろ?」?
違います。自動車が馬抜き馬車ではないように。
ポイントは「換算」というタスクは当該クラスが責任を持つ仕事で
処理を頼んだ側まで責任は及ばない設計になっていることです。
オブジェクト指向の思想ではそれぞれで責任が切り分けられているので
プログラムの修正の際に修正が延々波及する事態を抑制できるし
処理はタスクを行う実行単位で切り分けられているから
処理終了を待つ必要のないタスクは並列実行できる。
"そういうこともできる"ではなく"そういうことをやるように"仕様が作られている。
そういう違いです。
たとえば「ドルと円を換算する」"関数"はただの「処理機」だから
レートと額を送ると換算額が返ってくる、という発想になる。
そこがオブジェクト指向では「ドルと円を換算する」"クラス"は
そういう処理をする「処理場」なので送るのは
"換算してくれ"という命令コマンドと額になる。
違いはなんだろう?
「関数じゃなくてクラスはレートってデータを持ってて、換算という操作関数が付いてんだろ?」?
違います。自動車が馬抜き馬車ではないように。
ポイントは「換算」というタスクは当該クラスが責任を持つ仕事で
処理を頼んだ側まで責任は及ばない設計になっていることです。
オブジェクト指向の思想ではそれぞれで責任が切り分けられているので
プログラムの修正の際に修正が延々波及する事態を抑制できるし
処理はタスクを行う実行単位で切り分けられているから
処理終了を待つ必要のないタスクは並列実行できる。
"そういうこともできる"ではなく"そういうことをやるように"仕様が作られている。
そういう違いです。
823デフォルトの名無しさん
2017/08/01(火) 23:31:45.78ID:zRlG3ihR で、結局クラスやオブジェクトの持つメカニズムについては言及しないのであった
書いてある内容は「そういう風に考えてください、そういう風にとらえてください」
程度のものでしかない
後半の並列処理なんか全然オブジェクト指向と関係が無いしな
そういう風に書けば、そうなる、ってだけ
「ポイントは「換算」というタスクは〜」の部分に関してなど
一般化して他のものに関しても同じことが言えるし
何の説明にもなってない
唯の一般的に良いといわれるプログラミングの作法を説明しているに過ぎない
もちろんその作法はOOPでも通用するが、OOPの説明にはなってない
例えば、クラスを"関数"に置き換えて
「ポイントは「換算」というタスクは当該"関数"が責任を持つ仕事で
処理を頼んだ側まで責任は及ばない設計になっていることです。
"関数"を使う思想では、それぞれで責任が切り分けられているので
プログラムの修正の際に修正が延々波及する事態を抑制できるし
処理はタスクを行う実行単位で"関数"に切り分けられている」
っていう風に言ったって別に通じるし、オブジェクト指向の説明になってないことが分かる
一般的に良いといわれるプログラミングの作法を説明しているに過ぎない
となれば結局、「関数とクラスは何が違うのか」って事がクローズアップされるべきで
「関数じゃなくてクラスはレートってデータを持ってて、換算という操作関数が付いてんだろ?」
ってのは結構的を得た説明なわけだ、少なくとも君の糞みたいな説明よりは
書いてある内容は「そういう風に考えてください、そういう風にとらえてください」
程度のものでしかない
後半の並列処理なんか全然オブジェクト指向と関係が無いしな
そういう風に書けば、そうなる、ってだけ
「ポイントは「換算」というタスクは〜」の部分に関してなど
一般化して他のものに関しても同じことが言えるし
何の説明にもなってない
唯の一般的に良いといわれるプログラミングの作法を説明しているに過ぎない
もちろんその作法はOOPでも通用するが、OOPの説明にはなってない
例えば、クラスを"関数"に置き換えて
「ポイントは「換算」というタスクは当該"関数"が責任を持つ仕事で
処理を頼んだ側まで責任は及ばない設計になっていることです。
"関数"を使う思想では、それぞれで責任が切り分けられているので
プログラムの修正の際に修正が延々波及する事態を抑制できるし
処理はタスクを行う実行単位で"関数"に切り分けられている」
っていう風に言ったって別に通じるし、オブジェクト指向の説明になってないことが分かる
一般的に良いといわれるプログラミングの作法を説明しているに過ぎない
となれば結局、「関数とクラスは何が違うのか」って事がクローズアップされるべきで
「関数じゃなくてクラスはレートってデータを持ってて、換算という操作関数が付いてんだろ?」
ってのは結構的を得た説明なわけだ、少なくとも君の糞みたいな説明よりは
824デフォルトの名無しさん
2017/08/01(火) 23:33:36.12ID:zRlG3ihR だたし、オブジェクトはデータと処理を一纏めにしたものって説明は
オブジェクトの性質の全部を言い表しているわけじゃない
「言っている範囲においては間違ったことは言ってない」程度のもの
オブジェクトの性質の全部を言い表しているわけじゃない
「言っている範囲においては間違ったことは言ってない」程度のもの
825デフォルトの名無しさん
2017/08/01(火) 23:58:00.10ID:jGPQWGeS なんかまだ現実を理解していないみたいだけど
誰かがそう考えているとかそういう話ですらなくて
"君が"一人で自動車が走り回ってるこの時代のど真ん中で
「いいや!自動車は馬なし馬車ともみなせる!誰も自動車の細かいシステムについて
俺に懇切丁寧にマンツーマンで教えてくれないからな!
あくまで自動車とかいうのは馬なし馬車にすぎない!!」
ってほざいてるからみんななんだこのボケジジイwと笑ってるだけだよ。
誰かがそう考えているとかそういう話ですらなくて
"君が"一人で自動車が走り回ってるこの時代のど真ん中で
「いいや!自動車は馬なし馬車ともみなせる!誰も自動車の細かいシステムについて
俺に懇切丁寧にマンツーマンで教えてくれないからな!
あくまで自動車とかいうのは馬なし馬車にすぎない!!」
ってほざいてるからみんななんだこのボケジジイwと笑ってるだけだよ。
826デフォルトの名無しさん
2017/08/02(水) 00:03:52.06ID:fdgsCGyr 俺は別に笑われてないんだけど
君の書き込みは電波すぎて誰にも相手にされてないかもしれないが
これが自己紹介乙というやつか
君の書き込みは電波すぎて誰にも相手にされてないかもしれないが
これが自己紹介乙というやつか
827デフォルトの名無しさん
2017/08/05(土) 13:13:40.78ID:S4Sewhvz >>823
>書いてある内容は「そういう風に考えてください、そういう風にとらえてください」
>程度のものでしかない
だってOOPとかその程度のものやとしか言いようが無いし…
OOPにしたからといってチューリングマシンでできない計算ができるようになるわけでもないし、
高階関数の系の能力を超えるわけでもない
「オブジェクト」も「機能」や「データ構造」と同じく人間が勝手に設けた区切りと考えたほうが精神衛生上宜しい
「漏れの無い抽象化」を達成せしめたクラスに属するオブジェクトのみが、独立した数学的対象同然の正当性を有す
でもそうじゃないクラス(とそのインスタンスとしてのオブジェクト)も世の中にはゴマンとあり、実用OOPはそれらも包含してゐる
OOPの枠内の全てをスッキリ定義づけて一意のクラス分けを導くような数学は目下無いしこれからも無さげ
>書いてある内容は「そういう風に考えてください、そういう風にとらえてください」
>程度のものでしかない
だってOOPとかその程度のものやとしか言いようが無いし…
OOPにしたからといってチューリングマシンでできない計算ができるようになるわけでもないし、
高階関数の系の能力を超えるわけでもない
「オブジェクト」も「機能」や「データ構造」と同じく人間が勝手に設けた区切りと考えたほうが精神衛生上宜しい
「漏れの無い抽象化」を達成せしめたクラスに属するオブジェクトのみが、独立した数学的対象同然の正当性を有す
でもそうじゃないクラス(とそのインスタンスとしてのオブジェクト)も世の中にはゴマンとあり、実用OOPはそれらも包含してゐる
OOPの枠内の全てをスッキリ定義づけて一意のクラス分けを導くような数学は目下無いしこれからも無さげ
828デフォルトの名無しさん
2017/08/05(土) 13:16:50.26ID:S4Sewhvz ちな
>「関数じゃなくてクラスはレートってデータを持ってて、換算という操作関数が付いてんだろ?」 (823)
というんのはクラスを「レートという束縛変数を有する「換算」という関数」の定義とみなしてゐる、
とみなすこともできる、、
>「関数じゃなくてクラスはレートってデータを持ってて、換算という操作関数が付いてんだろ?」 (823)
というんのはクラスを「レートという束縛変数を有する「換算」という関数」の定義とみなしてゐる、
とみなすこともできる、、
829デフォルトの名無しさん
2017/08/05(土) 18:31:55.27ID:g5qo54h/ そこまでわかってるなら、手続き型言語には何があるかも分かってるだろ
紐解いていけば、手続き型言語には、「テータ構造」と「制御構造」の二つしかない
あとは定数とかもあるけど、無視しといてよいし
本当に、データ構造と制御構造しかない
クラスはこの二つをまとめたパーツ、ぐらいの認識でよろしい
紐解いていけば、手続き型言語には、「テータ構造」と「制御構造」の二つしかない
あとは定数とかもあるけど、無視しといてよいし
本当に、データ構造と制御構造しかない
クラスはこの二つをまとめたパーツ、ぐらいの認識でよろしい
830デフォルトの名無しさん
2017/08/05(土) 18:37:32.12ID:g5qo54h/ データ構造はメモリの空間的分割構造といえるし
制御構造はCPUの時間的分割構造といえる
これで空間と時間がそろったからプログラミングの準備が出来たといえる
クラスは単に、C時代はデータ構造と制御構造を別々に定義していたのを
区切りの良いところで纏めて定義しましょうってだけだよ
小さなプログラム(クラス)の破片を集めて大きなプログラムにしましょうってだけ
実際クラスのメンバ変数はクラス内のグローバル変数だしな
制御構造はCPUの時間的分割構造といえる
これで空間と時間がそろったからプログラミングの準備が出来たといえる
クラスは単に、C時代はデータ構造と制御構造を別々に定義していたのを
区切りの良いところで纏めて定義しましょうってだけだよ
小さなプログラム(クラス)の破片を集めて大きなプログラムにしましょうってだけ
実際クラスのメンバ変数はクラス内のグローバル変数だしな
831デフォルトの名無しさん
2017/08/05(土) 21:05:03.20ID:S4Sewhvz >>830
>実際クラスのメンバ変数はクラス内のグローバル変数だしな
これはそう作ればそうなるし、そうでない作り方もできる
(クロージャにするなら通常はコンストラクタでメンバ変数の値を固定してしまい以後変えないとか、
OOPはハマるべきところにはきっちりハマるから、必要性はある
ハマればセマンティクスとコードの表記がきれいに対応してたいへん保守しやすく書きやすいコードになる
ただしそうなるのは漏れの無い抽象化が可能とか、漏れを設計で見えにくいところに隠せるとかそういうケースに限られる
>実際クラスのメンバ変数はクラス内のグローバル変数だしな
これはそう作ればそうなるし、そうでない作り方もできる
(クロージャにするなら通常はコンストラクタでメンバ変数の値を固定してしまい以後変えないとか、
OOPはハマるべきところにはきっちりハマるから、必要性はある
ハマればセマンティクスとコードの表記がきれいに対応してたいへん保守しやすく書きやすいコードになる
ただしそうなるのは漏れの無い抽象化が可能とか、漏れを設計で見えにくいところに隠せるとかそういうケースに限られる
832デフォルトの名無しさん
2017/08/07(月) 07:48:42.00ID:GyL1JWIh >漏れの無い抽象化が可能
こんなのよっぽど単純な事象以外ありえんだろ。
こんなのよっぽど単純な事象以外ありえんだろ。
833デフォルトの名無しさん
2017/08/07(月) 08:20:11.85ID:nZ0RU5t+ なんか、別なものに見立てての説明ばかり受けたせいで
なにかに見立てないとオブジェクト指向じゃないみたいな変な理解をしてる人がおるけど
要するに会社の「◯◯部」とか「◯◯課」みたいに
仕事と処理を送るとよしなにやってくれる単位で切り分けるってだけの話だし
「こういうことも◯◯課の仕事に新設」でも「仕事の質が変わったから部課を統廃合して編成しなおし」でも
部課が責任を持つことで取り回しが楽になるよね。だし
なにかに見立てないとオブジェクト指向じゃないみたいな変な理解をしてる人がおるけど
要するに会社の「◯◯部」とか「◯◯課」みたいに
仕事と処理を送るとよしなにやってくれる単位で切り分けるってだけの話だし
「こういうことも◯◯課の仕事に新設」でも「仕事の質が変わったから部課を統廃合して編成しなおし」でも
部課が責任を持つことで取り回しが楽になるよね。だし
834デフォルトの名無しさん
2017/08/07(月) 12:21:59.74ID:+X2y1OVW お前もやんw見立て上手やねw
835デフォルトの名無しさん
2017/08/07(月) 14:20:12.45ID:nZ0RU5t+ いや、会社みたいな組織は必要な仕事の流れに応じて組み変わるじゃん?
無理ないちゃもんつける人は変化しないもの出してきて
「猫に羽が生えて飛ばないからオブジェクト指向は間違い!」って言いだすからw
無理ないちゃもんつける人は変化しないもの出してきて
「猫に羽が生えて飛ばないからオブジェクト指向は間違い!」って言いだすからw
836デフォルトの名無しさん
2017/08/07(月) 23:55:38.90ID:ZYg+qYF7 部署部署言ったって、それはプログラムにおいては、何に相当するのか
って話がある
そこが無いと本当に意味のないたとえ話にすぎない
プログラムで会社の部署のように振舞わせるには
データと処理の両方が必要
データだけでも処理だけでも部署のようには振舞えない
classはプログラム環境のフルセットじゃないといけない
その意味で、オブジェクトは処理とデータを纏めたものでなければならないし
そうなってる
それだけの話
って話がある
そこが無いと本当に意味のないたとえ話にすぎない
プログラムで会社の部署のように振舞わせるには
データと処理の両方が必要
データだけでも処理だけでも部署のようには振舞えない
classはプログラム環境のフルセットじゃないといけない
その意味で、オブジェクトは処理とデータを纏めたものでなければならないし
そうなってる
それだけの話
837デフォルトの名無しさん
2017/08/16(水) 14:51:22.44ID:3vyPkFdL 変な例え話を出したり、大仰な説明をしたりしないと理解できないだろう、なんて思ってる時点で間違ってると思わないのか
プログラムの素養の無い人でもOOならプログラミングできるようになります!とか妄想してるのか?
プログラムの素養の無い人でもOOならプログラミングできるようになります!とか妄想してるのか?
838デフォルトの名無しさん
2017/08/17(木) 13:15:34.31ID:1fq8yyMU そうだね、自動車は馬なし馬車だから運転者は御者だね。
最近の馬なし馬車は馬を繋ぐパーツが欠落してるからけしからんね。
最近の馬なし馬車は馬を繋ぐパーツが欠落してるからけしからんね。
レスを投稿する
ニュース
- 習政権、高市首相への態度硬化 台湾有事発言で連日非難 中国 ★10 [ぐれ★]
- 【日本大使館】中国在留邦人は安全確保を [ぐれ★]
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- おで、反日分子。日中対立を利用して日本政府を苦しめることに成功。かかったなネトウヨ!! [805596214]
- ニートしかいない時間ってマジでつまんないよな
- 小池百合子「キィィ…!なんでアタシより先に総理になってンのよ…あの女狐ッ!」
- メスイキして快感が身体の内側に残ってる間に寝るのが気持ちいい
- 中国人「昔の仇を取る」「高市は狂ってる。制裁すればいい」「高市はことの重大さを認識してない」 [931948549]
- さっき突如右脇腹が猛烈に痛み出したってスレ立てた者だが救急車呼んだ
