オブジェクト指向は愚かな考え。排便メソッドを実装した人間クラスから美少女クラスが作れない。
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
2016/01/09(土) 19:39:23.22ID:OrUjMMRy
メッセージングのオブジェクト指向の言い方で言うと、
主語はメッセージのレシーバであり、文の残りはメッセージだ
主語はメッセージのレシーバであり、文の残りはメッセージだ
2016/01/09(土) 23:40:46.34ID:3kY/wzgi
>>58 チンパンジーのアイちゃんかな?
2016/01/09(土) 23:55:42.86ID:CpCNnIMM
>>58
x.sin() では x がオブジェクトで、sinというメソッド(もしくはメッセージ?)を処理していて、
sin(x) では sin がオブジェクトで、xという入力を処理している。
どちらかの方がよりオブジェクト指向的だという序列なんかない。
数学関数それ自体をオブジェクトと認めようとしない思想(?)の根源は何なんだ?
x.sin() では x がオブジェクトで、sinというメソッド(もしくはメッセージ?)を処理していて、
sin(x) では sin がオブジェクトで、xという入力を処理している。
どちらかの方がよりオブジェクト指向的だという序列なんかない。
数学関数それ自体をオブジェクトと認めようとしない思想(?)の根源は何なんだ?
62デフォルトの名無しさん
2016/01/10(日) 00:13:34.71ID:MD/fGeTk ポーランド記法嫌いそう
2016/01/10(日) 00:21:12.30ID:sdj7zt3O
演算子前置のポーランド記法は嫌いだなぁ
存在する意味がわからないレベルで嫌い。
演算子後置の逆ポーランドじゃないとね。
存在する意味がわからないレベルで嫌い。
演算子後置の逆ポーランドじゃないとね。
2016/01/10(日) 00:34:49.51ID:0XznusY4
> 存在する意味がわからないレベルで嫌い。
なんで?
> 演算子後置の逆ポーランドじゃないとね。
なんで?
なんで?
> 演算子後置の逆ポーランドじゃないとね。
なんで?
2016/01/10(日) 00:40:13.45ID:hoksOuY6
Add 3 to 5, then multiple it by 2.
2016/01/10(日) 01:09:07.40ID:UgGJRpwk
逆ポーランドの方が実装しやすいと思う。
人それぞれの範疇だが。
人それぞれの範疇だが。
67デフォルトの名無しさん
2016/01/10(日) 01:11:54.59ID:MiN6/z6v >逆ポーランドの方が実装しやすいと思う。
意味がわからん。
構文木作るのに一番前と後でなんか変わるか?
AST作らずにそのまま逐次実行するならスタックに
積むだけでいい逆ポーランドの方がいいかもしれんが
意味がわからん。
構文木作るのに一番前と後でなんか変わるか?
AST作らずにそのまま逐次実行するならスタックに
積むだけでいい逆ポーランドの方がいいかもしれんが
2016/01/10(日) 01:16:08.27ID:+l1yiqNW
x.sin() では x がオブジェクトで、sinというメソッド(もしくはメッセージ?)を処理していて、
sin(x) では sin がオブジェクトで、xという入力を処理している。
どちらかの方がよりオブジェクト指向的だという序列なんかない。
数学関数それ自体をオブジェクトと認めようとしない思想(?)の根源は何なんだ?
違うよな
どちらがオブジェクト志向的かといえばx.sin()でしょ
xというオブジェクトにsin()というメソッドが属しているという考えなんだから
sin()は関数に対してxというオブジェクト、あるいは単にデータを引き渡しているだけ
後者は明らかに関数的な考え方、動詞優位
sin(x) では sin がオブジェクトで、xという入力を処理している。
どちらかの方がよりオブジェクト指向的だという序列なんかない。
数学関数それ自体をオブジェクトと認めようとしない思想(?)の根源は何なんだ?
違うよな
どちらがオブジェクト志向的かといえばx.sin()でしょ
xというオブジェクトにsin()というメソッドが属しているという考えなんだから
sin()は関数に対してxというオブジェクト、あるいは単にデータを引き渡しているだけ
後者は明らかに関数的な考え方、動詞優位
69デフォルトの名無しさん
2016/01/10(日) 01:27:11.07ID:hZikTLMs 関数へのエイリアスのようなメソッドはドットで繋ぐのでなく、
別の文字にした方がいいよな。
別の文字にした方がいいよな。
2016/01/10(日) 01:29:17.31ID:sdj7zt3O
釣りじゃなくて単に本当にあたまおかしいのかな?
Xはデータであって演算ではない。Xは演算しない。
Xをオブジェクトとして扱った場合、その操作として実装されるメソッドは
データのゲットセットなど内部状態を隠蔽するためのメソッドと
可変不変などのデータ状態をあらわすメソッド。
まだお前の脳内じゃおまえがコーヒーを飲むんじゃなくて
コーヒーが勝手に口に飛び込んで来てんのか。
Xはデータであって演算ではない。Xは演算しない。
Xをオブジェクトとして扱った場合、その操作として実装されるメソッドは
データのゲットセットなど内部状態を隠蔽するためのメソッドと
可変不変などのデータ状態をあらわすメソッド。
まだお前の脳内じゃおまえがコーヒーを飲むんじゃなくて
コーヒーが勝手に口に飛び込んで来てんのか。
2016/01/10(日) 01:29:19.21ID:Ch7U5rc3
x.sin()は手続き言語的だと思うけどなあ
もちろんsin(x)も。
オブジェクト指向ならメッセージを送るような記述の方が自然では
もちろんsin(x)も。
オブジェクト指向ならメッセージを送るような記述の方が自然では
72デフォルトの名無しさん
2016/01/10(日) 01:52:12.61ID:hZikTLMs 現実世界をオブジェクト指向に当てはめるやついるけど馬鹿だよなー
コーヒーが勝手に口まで運ばれてくる機能をコーヒにつけただけじゃんw
ついでにコーヒーがしゃべる機能もつけたよ。
問題がないからそういう設計にしたんですよ
コーヒーが勝手に口まで運ばれてくる機能をコーヒにつけただけじゃんw
ついでにコーヒーがしゃべる機能もつけたよ。
問題がないからそういう設計にしたんですよ
2016/01/10(日) 01:53:23.52ID:+l1yiqNW
どちらがより汎化されているかではなく
具体例で語ろうとする人間は、プログラムを実装したことがないのでは?
具体的な手続きによる具体的な文字通りのプログラムを書きたいなら
Cでかいてどうぞ
具体例で語ろうとする人間は、プログラムを実装したことがないのでは?
具体的な手続きによる具体的な文字通りのプログラムを書きたいなら
Cでかいてどうぞ
2016/01/10(日) 01:59:31.92ID:+l1yiqNW
オブジェクト指向だろうと関数志向だろうとやってることは変わらない
オブジェクトはメソッドの第一引数でしかない
コーヒーを飲むという行為を書くためには手続き的に書くしか無い
コーヒーが俺の口の中にあるという結果を宣言的に書きたいのに
その手続きを丹念に描写したいならそうすればいい
I.drink(coffee)と書けばいいんだよ
I.drink(coffee)とyou.drink(coffee)は飲み方が違う!というのならそう実装すればよい
モデリングとは物事を単純化する行為、汎化する行為であって具象化する行為ではない
Iとyouの違いがモデルのキーポイントなら、Iとyouという(メソッドの第一引数)をパラメータに加えればいいし
そうでないなら含まないほうがモデルがシンプルに保たれる
数学ができない自称モデラーはプログラムを手続き的に書いたらいいんだよ
オブジェクトはメソッドの第一引数でしかない
コーヒーを飲むという行為を書くためには手続き的に書くしか無い
コーヒーが俺の口の中にあるという結果を宣言的に書きたいのに
その手続きを丹念に描写したいならそうすればいい
I.drink(coffee)と書けばいいんだよ
I.drink(coffee)とyou.drink(coffee)は飲み方が違う!というのならそう実装すればよい
モデリングとは物事を単純化する行為、汎化する行為であって具象化する行為ではない
Iとyouの違いがモデルのキーポイントなら、Iとyouという(メソッドの第一引数)をパラメータに加えればいいし
そうでないなら含まないほうがモデルがシンプルに保たれる
数学ができない自称モデラーはプログラムを手続き的に書いたらいいんだよ
75デフォルトの名無しさん
2016/01/10(日) 02:00:42.57ID:hZikTLMs 特化させたいのに汎化する必要ある?
狭い世界で使うなら特化させていい。
広い世界で使うなら汎化させる。
それだけ。
狭い世界で使うなら特化させていい。
広い世界で使うなら汎化させる。
それだけ。
76デフォルトの名無しさん
2016/01/10(日) 02:03:41.63ID:hZikTLMs 汎化と特化させるもんを決めるのが設計な
77デフォルトの名無しさん
2016/01/10(日) 02:42:12.92ID:JhCLPk/278デフォルトの名無しさん
2016/01/10(日) 03:01:38.69ID:JhCLPk/22016/01/10(日) 04:22:46.36ID:sdj7zt3O
アクセル→エンジン→ギア→タイヤじゃなくて
タイヤ.回転で自動車設計してそうだなおまえら。
タイヤ.回転で自動車設計してそうだなおまえら。
80デフォルトの名無しさん
2016/01/10(日) 05:12:47.23ID:JhCLPk/2 >>79
そうやって現実の構造を想定している時点でもう駄目なんだよ
そうやって現実の構造を想定している時点でもう駄目なんだよ
81デフォルトの名無しさん
2016/01/10(日) 05:20:12.43ID:JhCLPk/2 ちうかこれオブジェクトが目的語とか言ってる人か?
英語とプログラミングのobject混同とかとてもまともとは思えないよ
英語とプログラミングのobject混同とかとてもまともとは思えないよ
2016/01/10(日) 05:34:14.40ID:97NQyWJD
>>74
JavaScriptだと実際foo.barは第0番目の引数を指定するための糖衣構文でしか無い
オブジェクト指向は別にそんな大したものでも、手続き型と相容れないものでもない
指向とは言うが実際の所スタイルの一部だね
JavaScriptだと実際foo.barは第0番目の引数を指定するための糖衣構文でしか無い
オブジェクト指向は別にそんな大したものでも、手続き型と相容れないものでもない
指向とは言うが実際の所スタイルの一部だね
2016/01/10(日) 08:13:48.91ID:86WjwACC
いいえ、自転車.操業で設計しています
2016/01/10(日) 08:49:55.36ID:jS8+hJYw
2016/01/10(日) 09:36:41.30ID:AcnVMiQc
>>68
いいえ。
sin(x) と書いたときのsinは十分オブジェクトに見えるでしょ。
xとsinは違う階層(空間)に属するモノだけど、後者の方が階層としては高い。
x.sin()と書くと、あるオブジェクトが自分より高い階層のオブジェクトを所有しているように見えてしまう。
これは俺にとっては不自然なので好きになれない。
いいえ。
sin(x) と書いたときのsinは十分オブジェクトに見えるでしょ。
xとsinは違う階層(空間)に属するモノだけど、後者の方が階層としては高い。
x.sin()と書くと、あるオブジェクトが自分より高い階層のオブジェクトを所有しているように見えてしまう。
これは俺にとっては不自然なので好きになれない。
86デフォルトの名無しさん
2016/01/10(日) 09:42:21.66ID:KeJgEHCD オブジェクト指向は手続き型と直行する概念だと理解してないのが何人かいるな
2016/01/10(日) 09:44:41.71ID:sdj7zt3O
88デフォルトの名無しさん
2016/01/10(日) 09:52:56.57ID:Itquv6VW sinは関数だろね。
テーブルを持つためにクラスを使わなければならない言語があったとしても、
極力、ユーザーにとって関数に見えるように実装するべきじゃないのかな。
テーブルを持つためにクラスを使わなければならない言語があったとしても、
極力、ユーザーにとって関数に見えるように実装するべきじゃないのかな。
2016/01/10(日) 10:08:13.09ID:jS8+hJYw
関数がオブジェクトじゃ何か困ることでも?
2016/01/10(日) 10:09:40.58ID:jS8+hJYw
>>79
君が設計する自動車ではエンジンブレーキが効かないようだな。
君が設計する自動車ではエンジンブレーキが効かないようだな。
91デフォルトの名無しさん
2016/01/10(日) 10:29:26.64ID:hZikTLMs ブレーキなんてのは外部から
ベクトルの力を操作するんだから
後付けで全然構わないんだが。
ベクトルの力を操作するんだから
後付けで全然構わないんだが。
2016/01/10(日) 10:41:27.70ID:AcnVMiQc
関数を手続きだと思ってるならそれでいいけど、名前が関数ってだけで数学関数をそういうカテゴリーのものとするのは不適当でしょうね。
2016/01/10(日) 11:09:22.36ID:hXY04te0
クロージャーって、関数なの?オブジェクトなの?
rubyだとProcのインスタンスでしかないよね
rubyだとProcのインスタンスでしかないよね
2016/01/10(日) 12:33:30.21ID:jS8+hJYw
>>91
わからないなら無理に口を挟まないほうがいいよ。
わからないなら無理に口を挟まないほうがいいよ。
95デフォルトの名無しさん
2016/01/10(日) 13:26:28.06ID:Itquv6VW >>92
関数が状態を持つべきかどうか考えると自ずと答えが出るのではないだろうか。
関数が状態を持つべきかどうか考えると自ずと答えが出るのではないだろうか。
2016/01/10(日) 13:37:48.58ID:UyzGSaeg
sin(x)は関数の値であって関数ではないよな。 関数は∀x∈double.sin(x)のことだよな。
2016/01/10(日) 13:51:03.83ID:ainPuYsM
98デフォルトの名無しさん
2016/01/10(日) 14:13:06.68ID:Itquv6VW >>97
それは不自然な考え方じゃないかな。
原点に立ち返ってみると、オブジェクト志向とはコード再利用に際して
コンポーネント化の要求から発生したもの。
現実に存在する物のように、ディスプレイ上のウィンドウに四角形を
描画しろとメッセージを送るというようなシンプルなものだ。
この場合、四角形自体がオブジェクトであることは問題が無いように感じる。
これは、四角形が状態を保持しているからかもしれない。
一方、数値に対してsinを要求するのは突拍子もないように感じる。
これは、数値を日常いたるところで使用していて、数値がメッセージを受け取る性質を
もたないと良く知ってるからではないだろうか。
あるいは計算機オブジェクトに対してsinを要求するなら不自然に感じないのかもしれない。
どうだろうか?
それは不自然な考え方じゃないかな。
原点に立ち返ってみると、オブジェクト志向とはコード再利用に際して
コンポーネント化の要求から発生したもの。
現実に存在する物のように、ディスプレイ上のウィンドウに四角形を
描画しろとメッセージを送るというようなシンプルなものだ。
この場合、四角形自体がオブジェクトであることは問題が無いように感じる。
これは、四角形が状態を保持しているからかもしれない。
一方、数値に対してsinを要求するのは突拍子もないように感じる。
これは、数値を日常いたるところで使用していて、数値がメッセージを受け取る性質を
もたないと良く知ってるからではないだろうか。
あるいは計算機オブジェクトに対してsinを要求するなら不自然に感じないのかもしれない。
どうだろうか?
2016/01/10(日) 14:14:35.30ID:CDx7UjTI
この種のくそ議論って恣意的な答えしかないんだから、
議論するだけ無駄なんだけどねぇ。
議論するだけ無駄なんだけどねぇ。
100デフォルトの名無しさん
2016/01/10(日) 14:15:24.10ID:AcnVMiQc101デフォルトの名無しさん
2016/01/10(日) 14:17:25.96ID:ainPuYsM つか、sin(x)ってなんやねんw
引数無しのメソッドの話か? それならsinは例として不適当だ。
sinを例にするなら、x.sin(value) か、sin(x, value) だろ。
引数無しのメソッドの話か? それならsinは例として不適当だ。
sinを例にするなら、x.sin(value) か、sin(x, value) だろ。
102デフォルトの名無しさん
2016/01/10(日) 14:17:26.78ID:AcnVMiQc103デフォルトの名無しさん
2016/01/10(日) 14:17:31.05ID:Itquv6VW こういうシンプルな考えに基づくと、四角形と三角形は形状クラスから
派生すると思われる。
しかし、四角形オブジェクトと三角形オブジェクトの合成メソッドは、形状クラスあるいは
その派生クラスにあってはならないように感じる。
それは形状合成器クラスに、あるいは単純な関数であった方が良いように感じる。
派生すると思われる。
しかし、四角形オブジェクトと三角形オブジェクトの合成メソッドは、形状クラスあるいは
その派生クラスにあってはならないように感じる。
それは形状合成器クラスに、あるいは単純な関数であった方が良いように感じる。
104デフォルトの名無しさん
2016/01/10(日) 14:21:04.23ID:JhCLPk/2105デフォルトの名無しさん
2016/01/10(日) 14:21:57.10ID:UyzGSaeg 属すじゃなくて依存するだと思うが。
106デフォルトの名無しさん
2016/01/10(日) 14:25:29.45ID:JhCLPk/2 例えばゲームでキャラクターが特定のアイテムを使用するモデル
キャラ.使う(アイテム)はもらうアイテムによってメソッドの動作を変える必要があるが
設計としてはアイテム.適用(キャラ)のが遥かに取り回しやすい
なのにあえて前者のクソ設計を選ぶのが>>87のようなオバカさん
キャラ.使う(アイテム)はもらうアイテムによってメソッドの動作を変える必要があるが
設計としてはアイテム.適用(キャラ)のが遥かに取り回しやすい
なのにあえて前者のクソ設計を選ぶのが>>87のようなオバカさん
107デフォルトの名無しさん
2016/01/10(日) 14:26:22.66ID:ainPuYsM108デフォルトの名無しさん
2016/01/10(日) 14:44:22.50ID:AcnVMiQc109デフォルトの名無しさん
2016/01/10(日) 14:48:45.22ID:jS8+hJYw Smalltalkerが引き上げたらもう初心者しか残ってないのかよ
110デフォルトの名無しさん
2016/01/10(日) 15:22:03.47ID:yvIOv1as111デフォルトの名無しさん
2016/01/10(日) 15:23:27.70ID:yvIOv1as 美少女が云々言うのも一般的なクラスベースは融通が効かないねという話であって
オブジェクト指向とは直接関係ないし
オブジェクト指向とは直接関係ないし
112デフォルトの名無しさん
2016/01/10(日) 15:44:15.32ID:KeJgEHCD >>111
ほう、それならウンコをしない美少女をオブジェクト指向で設計して貰おうか
ほう、それならウンコをしない美少女をオブジェクト指向で設計して貰おうか
113デフォルトの名無しさん
2016/01/10(日) 15:50:56.07ID:AcnVMiQc >>97
見逃したいたが、x.sin(value)の value って何だい?
見逃したいたが、x.sin(value)の value って何だい?
114デフォルトの名無しさん
2016/01/10(日) 16:06:27.16ID:ainPuYsM115デフォルトの名無しさん
2016/01/10(日) 16:18:07.80ID:hZikTLMs xって中身は例えばfloatのデータ自身だぞ?
だから、引数は必要ないんだぞ?
だから、引数は必要ないんだぞ?
116デフォルトの名無しさん
2016/01/10(日) 16:26:17.41ID:ainPuYsM117デフォルトの名無しさん
2016/01/10(日) 16:29:21.43ID:CDx7UjTI 一般に sin に必要な引数は、 pi/2 とかの実数(もしくは複素数) かな。
あとはいくつまでの級数和をとるとか何桁まで計算するとかが引数になるんじゃないかね。
その辺をあいまいなまま value とか x がクラスだの引数だの言ってることに何か意味があると思ってんのかね。
あとはいくつまでの級数和をとるとか何桁まで計算するとかが引数になるんじゃないかね。
その辺をあいまいなまま value とか x がクラスだの引数だの言ってることに何か意味があると思ってんのかね。
118デフォルトの名無しさん
2016/01/10(日) 16:34:25.26ID:ainPuYsM >>117
いや、sinの引数がオブジェクトの場合はあるよ。
実数や10進型をクラスで表現したりするし、俺も実際やる。
xがそういうオブジェクトなら、sin(x)でいいし、x.sin()はおかしい。
まあ絶対におかしいとか無理ってわけじゃないけどなw
いや、sinの引数がオブジェクトの場合はあるよ。
実数や10進型をクラスで表現したりするし、俺も実際やる。
xがそういうオブジェクトなら、sin(x)でいいし、x.sin()はおかしい。
まあ絶対におかしいとか無理ってわけじゃないけどなw
119デフォルトの名無しさん
2016/01/10(日) 16:54:55.24ID:yIre7PYR 新しいC++ではsin(x)でもx.sin()でも、どちらの方法でも統一的に呼び出せるようになる予定だから
こんな議論は全く意味ないんだよ?
呼び出す側からしたら、sinがメンバ関数だろうが外部関数だろうが、何であれ、知ったことではないからね
気にしなければならないのは実装する側だけ
だからどちらの方法でも呼び出せるようになる、らしい
どちらの方法でも呼び出せるんだから、喧嘩する必要ないし、気にする必要ないよね
こんな議論は全く意味ないんだよ?
呼び出す側からしたら、sinがメンバ関数だろうが外部関数だろうが、何であれ、知ったことではないからね
気にしなければならないのは実装する側だけ
だからどちらの方法でも呼び出せるようになる、らしい
どちらの方法でも呼び出せるんだから、喧嘩する必要ないし、気にする必要ないよね
120デフォルトの名無しさん
2016/01/10(日) 16:57:47.72ID:yIre7PYR どちらの方法でも呼び出せるんだから
どちらの方が、よりオブジェクト指向的か、考えるのは意味がないんだよ
等しいわけ、等価と考えてよい
見た目が違うだけ
大した問題じゃない
どちらの方が、よりオブジェクト指向的か、考えるのは意味がないんだよ
等しいわけ、等価と考えてよい
見た目が違うだけ
大した問題じゃない
121デフォルトの名無しさん
2016/01/10(日) 17:00:24.30ID:ainPuYsM なんか違うような気がするなw
122デフォルトの名無しさん
2016/01/10(日) 17:07:10.06ID:fbwGqbCo こんなにややこしいプログラムがオブジェクト指向を使って
こんなに簡潔になりましたって事例が欲しい
こんなに簡潔になりましたって事例が欲しい
123デフォルトの名無しさん
2016/01/10(日) 17:12:10.48ID:1042xGua >>112
思うんだけど、
うんkをしないというのが、
意思を持ってひたすら我慢して(人の目がある場所では)しないのか、
それとも腸内の美少女菌のおかげでする必要が無いのか、
もしくは他の何かなのかによってイメージが変わってくると思う。
でもしないにしろする必要がないにしろ、排便メソッド自体は備わっててもなんら問題ないと思う。
逆に、腸内やなんかの問題を解決せずに、排便メソッドだけ外して他を流用するということは、
オブジェクト指向的であろうがなかろうが不可能だと思う。
それこそ亞人として設計しなおして全ての手続やメソッドを別に用意することが妥当かもしれない。
だから結論を言うと、この例はそもそも良くないと思う。
思うんだけど、
うんkをしないというのが、
意思を持ってひたすら我慢して(人の目がある場所では)しないのか、
それとも腸内の美少女菌のおかげでする必要が無いのか、
もしくは他の何かなのかによってイメージが変わってくると思う。
でもしないにしろする必要がないにしろ、排便メソッド自体は備わっててもなんら問題ないと思う。
逆に、腸内やなんかの問題を解決せずに、排便メソッドだけ外して他を流用するということは、
オブジェクト指向的であろうがなかろうが不可能だと思う。
それこそ亞人として設計しなおして全ての手続やメソッドを別に用意することが妥当かもしれない。
だから結論を言うと、この例はそもそも良くないと思う。
124デフォルトの名無しさん
2016/01/10(日) 17:51:06.88ID:QPFpTdMb >>122
サイズを持っていてくれるのですら俺は嬉しいと思う
文字列や配列を扱うとき
int string::size() {return strlen(data);} // 数える関数を使うって例
↑こーいうのじゃなくて
int string::size() {return end - begin;} // 簡単な計算(ポインタの差分)で返す
int string::size() {return size;} // 内部でケアしていたprivate変数を返す
こういう実装をしうるのが嬉しい
使うときに
a = s.size * s.size / s.size % s.size
みたいにいっぱい呼び出しても安心
逆に言うとせっかく用意されたsizeメソッドが内部で数えなおしてる場合はつまらないと思う
サイズを持っていてくれるのですら俺は嬉しいと思う
文字列や配列を扱うとき
int string::size() {return strlen(data);} // 数える関数を使うって例
↑こーいうのじゃなくて
int string::size() {return end - begin;} // 簡単な計算(ポインタの差分)で返す
int string::size() {return size;} // 内部でケアしていたprivate変数を返す
こういう実装をしうるのが嬉しい
使うときに
a = s.size * s.size / s.size % s.size
みたいにいっぱい呼び出しても安心
逆に言うとせっかく用意されたsizeメソッドが内部で数えなおしてる場合はつまらないと思う
125デフォルトの名無しさん
2016/01/10(日) 19:10:53.94ID:fbwGqbCo >>124
なるほどねー。
なるほどねー。
126デフォルトの名無しさん
2016/01/10(日) 19:16:06.37ID:fbwGqbCo >>112
美少女はマーカーインターフェースであり、
美少女として扱うとき排便は隠蔽される。
interface 美少女 {
}
class おっさん implements 美少女 {
void 排便() {
}
}
美少女はマーカーインターフェースであり、
美少女として扱うとき排便は隠蔽される。
interface 美少女 {
}
class おっさん implements 美少女 {
void 排便() {
}
}
127デフォルトの名無しさん
2016/01/10(日) 20:20:59.69ID:VQDMXfno128デフォルトの名無しさん
2016/01/10(日) 20:34:00.62ID:fbwGqbCo >>127
何を言うてんの?排便メソッドを持つのはおっさんだよ。
何を言うてんの?排便メソッドを持つのはおっさんだよ。
129デフォルトの名無しさん
2016/01/10(日) 20:41:36.36ID:KeJgEHCD 聖水メソッドもないのに美少女とか笑わせんなよw
130デフォルトの名無しさん
2016/01/10(日) 21:17:46.16ID:+l1yiqNW オブジェクト志向の考えだと
大便ableインターフェースを実装するんだろ
大便ableインターフェースを実装するんだろ
131デフォルトの名無しさん
2016/01/10(日) 21:57:06.57ID:Hm2sxH4v 美少女クラスを欲する奴が美少女のウンコがついたぱんつを欲しがらないかと考えると
これは要件定義から間違っているような気がしてならない。
これは要件定義から間違っているような気がしてならない。
132デフォルトの名無しさん
2016/01/10(日) 22:05:43.79ID:zd2SpHtU 実装からメソッド設計を考えるより使い方から設計したほうが上手く行くと思う
つまり美少女がうんこ出来るのか、出来ないのかで考えるのでは無く美少女にうんこをさせたいのか、うんこさせたくないのかで考える
つまり美少女がうんこ出来るのか、出来ないのかで考えるのでは無く美少女にうんこをさせたいのか、うんこさせたくないのかで考える
133デフォルトの名無しさん
2016/01/10(日) 22:12:58.59ID:hZikTLMs 肛門はコンポーネントとしてアタッチする。
美少女は肛門をインプリメントしていない
美少女は肛門をインプリメントしていない
134デフォルトの名無しさん
2016/01/11(月) 02:57:08.55ID:87Jnvcw4 あのさ、どんな美少女もウンコするんだけど?
135デフォルトの名無しさん
2016/01/11(月) 03:08:27.43ID:Rwcs8mHW 真の美少女は実在しない
136デフォルトの名無しさん
2016/01/11(月) 03:18:02.16ID:4rCdY4Yq137デフォルトの名無しさん
2016/01/11(月) 04:26:03.17ID:3eUcyomA w
138デフォルトの名無しさん
2016/01/11(月) 14:41:47.97ID:GiqteBDS 関数型言語っていい点もあるけど、変更に弱過ぎない?
ちょっと動作を変えるのにかなり見直さないといけない
ちょっと動作を変えるのにかなり見直さないといけない
139デフォルトの名無しさん
2016/01/11(月) 16:00:11.66ID:Rwcs8mHW 作りようだね
140デフォルトの名無しさん
2016/01/11(月) 17:41:31.97ID:d9M93+6h >>138
関数型言語を使えば完璧なプログラミングが可能なので後から変更する必要が無い。
関数型言語を使えば完璧なプログラミングが可能なので後から変更する必要が無い。
141デフォルトの名無しさん
2016/01/11(月) 17:50:34.21ID:KkwWauMD142デフォルトの名無しさん
2016/01/11(月) 17:53:14.36ID:GiqteBDS 仕様変更できないって実用上ヤバくないですか
143デフォルトの名無しさん
2016/01/11(月) 18:03:26.01ID:RUBsLBHi オブジェクト指向は細かい修正で済むと手を抜き続けた結果メチャクチャ悲惨なことになる
全て書き直すくらいがちょうどいい
全て書き直すくらいがちょうどいい
144デフォルトの名無しさん
2016/01/11(月) 18:08:52.97ID:hbMmOduf > メチャクチャ悲惨なこと
たとえば?
たとえば?
145デフォルトの名無しさん
2016/01/11(月) 18:13:38.40ID:rz35E4wE >>144
全て書き直すはめになる
全て書き直すはめになる
146デフォルトの名無しさん
2016/01/11(月) 18:18:05.61ID:V0AQQEoP 関数型言語は仕様変更のたびにめちゃくちゃ悲惨なことをしなければならないのか
147デフォルトの名無しさん
2016/01/11(月) 18:31:28.27ID:KoUNfQqa 言語の問題でなくて作ってる奴が馬鹿なだけでは?
148デフォルトの名無しさん
2016/01/11(月) 18:59:27.70ID:A5Rx7ofK ただのリスト操作を関数型と呼んでいる可能性
149デフォルトの名無しさん
2016/01/11(月) 19:14:51.77ID:d9M93+6h >>141
関数型なら完全に未来を予測できる。
関数型なら完全に未来を予測できる。
150デフォルトの名無しさん
2016/01/11(月) 19:37:40.52ID:ugQF1NqL そらすげーわ
151デフォルトの名無しさん
2016/01/11(月) 19:38:18.20ID:rz35E4wE >>149
そういうのいいから
そういうのいいから
152デフォルトの名無しさん
2016/01/11(月) 19:43:22.94ID:XhrtL63c 関数型言語はコンパイルした瞬間全てが完了される。
153デフォルトの名無しさん
2016/01/11(月) 19:46:13.85ID:d9M93+6h コンパイルが通ればバグが無いことを保証される。
154デフォルトの名無しさん
2016/01/11(月) 19:47:17.32ID:rz35E4wE >>153
それもいいから
それもいいから
155デフォルトの名無しさん
2016/01/11(月) 19:49:39.36ID:d9M93+6h >>154
お前関数型馬鹿にしてんの?
お前関数型馬鹿にしてんの?
156デフォルトの名無しさん
2016/01/11(月) 19:53:45.95ID:XhrtL63c 関数型言語にとって型とはプログラムの設計図なのである。
157デフォルトの名無しさん
2016/01/11(月) 19:55:09.91ID:rz35E4wE >>155
関数型じゃなくてお前を馬鹿にしてるんだよw
関数型じゃなくてお前を馬鹿にしてるんだよw
158デフォルトの名無しさん
2016/01/11(月) 19:55:15.79ID:eiYfk44d 1000近くなった雰囲気だな
レスを投稿する
ニュース
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」 [冬月記者★]
- 【外国人問題】小野田紀美担当相「不法就労や不法滞在は許さない」 [シャチ★]
- 【野球】井端監督 大谷翔平、山本由伸らのWBCへの参加 「1日も早く返事ほしい」「待っててといっても、国内組が遅くなってしまう」★3 [冬月記者★]
- 経団連会長、日中は建設的対話を 経済3団体が高市首相と初会談も日中関係は話題に登らず… [BFU★]
- 中国で「クレしん」公開延期 対日報復、エンタメに波及 [蚤の市★]
- 東京株式市場 インバウンド関連株が下落 中国政府の渡航自粛要請で [バイト歴50年★]
- 5:55:55.555
- 有識者「高市総理が発言を撤回したり、辞職するしかないと言っている人は、それで日中関係が今まで通りになると思ってる?」 [834922174]
- 戦争は無くならないし殺人は起きるし女はレイプされるし子供は餓死するし
- 日経時間外、5万円割れ 垂直落下始まる [402859164]
- 高市さんに土下座してもらったら一発解決なのに何でやらないんだろ??
- 【悲報】男性人気アイドルグループJO1、中国公演中止wwwwwwwwwwwwwwwwwwwwwwwwwww
