26/07/25 20:39:02.85 ADFHfe3R.net
定義とか定理ってクラスっぽい
11:132人目の素数さん
26/07/25 20:52:02.42 8DZVfi3/.net
Rubyでは、整数が+というメソッドを持っているが、x + yが何になるかは、ℤをどのような代数系と見なしているのかに依存する
たとえば、x + y := max(x, y)と定義してもよい
整数自身がメソッドを持っているわけではない
12:132人目の素数さん
26/07/25 20:57:02.75 NH0+TiKk.net
オブジェクト指向言語では継承関係をクラス定義に記述しなければいけない
しかしたとえば単位的可換環を可換モノイドと見なす自然な方法は二つあるから、環をモノイドと見なす方法は環の定義ではない
13:132人目の素数さん
26/07/25 21:12:14.16 CnlBTIEV.net
長方形クラスに、辺の長さを再設定するメソッドがあったとする
正方形は長方形だから、正方形は長方形を継承できる
しかし、正方形に対して、長方形の辺の長さの再設定を施すと、正方形でなくなってしまう
14:132人目の素数さん
26/07/25 21:33:35.82 w8hVZYjm.net
よりグローバルな概念を求める学問だから
15:132人目の素数さん
26/07/25 21:35:38.23 qUQ187Ol.net
デザインパターン数学
16:132人目の素数さん
26/07/26 09:53:54.13 Cabn1iHr.net
>>12
メソッドとか継承とか用語をきちんと説明してください
17:132人目の素数さん
26/07/26 10:03:11.77 80zgOfAK.net
>>16
自分で調べろかす
18:132人目の素数さん
26/07/26 10:19:37.07 BWzDZKnx.net
>>13
これはどんな型システムを用いても解消できない
状態変更が可能である限りオブジェクト指向は論理的に間違ったモデルになる
19:132人目の素数さん
26/07/26 10:55:36.46 iDWfLw31.net
>>16
変数と関数(数学でなくプログラミングでの)をひとまとまりにしたものがクラス
このうち関数の方をメソッドという
継承は、あるクラスの中身にプラスアルファして別のクラスを作ること
20:132人目の素数さん
26/07/26 13:06:41.97 NuWTlo6A.net
そもそもメモリのアドレッシングと書き換えに意味を割り当てるというモデル自体が数学と相反する
21:132人目の素数さん
26/07/26 17:20:23.46 GAZVSuj5.net
プログラミングなんてどこまで行ってもチューリングマシンなのに
そっち系の人は拡大解釈した万能感持ってるよな
22:132人目の素数さん
26/07/26 17:35:35.84 NTYTanlF.net
>>21
kwsk
23:132人目の素数さん
26/07/26 21:51:49.68 geUKjCVv.net
>>13
自分が作るとしたら、正方形クラスの辺の長さ設定関数はオーバーライドした上で独自ルールとするけど
例えば第2引数(高さ)は無視する仕様とか
24:132人目の素数さん
26/07/27 05:13:36.83 M/NAb+VI.net
新しいRectangleオブジェクトを返すようにすればいいだけだろ(笑)
25:132人目の素数さん
26/07/28 00:24:49.94 0k5Ian/E.net
オブジェクト指向とは?
26:132人目の素数さん
26/07/28 08:30:08.80 J9TdLLcq.net
オブジェクト指向は関数と変数をひとまとめにした塊をたくさん作って組み合わせていく方法
関数と変数をひとまとめにした設計図が「クラス」
クラスに則った1つ1つの実体が「オブジェクト」
27:132人目の素数さん
26/07/28 12:13:53.63 jAK0Wn/b.net
>>25
ゴミ
28:132人目の素数さん
26/07/28 12:38:44.26 fisiI1C2.net
>>25
かつて流行った誤った設計手法
29:132人目の素数さん
26/07/30 18:50:36.53 NUFnNG3w.net
Juliaのパラダイム
30:132人目の素数さん
26/08/02 12:02:43.87 k1sK+XTW.net
数学はオブジェクト指向的だと思うけど
思想レベルで言えば集合論とオブジェクト指向ってほぼ同じだから