17/04/02 19:33:57.36 VFzZvOnH.net
>>973
list2 = list.sort()
swiftなんかだと、listは値を持つが状態はもたん
配列が役にたたんと言う気か
997:デフォルトの名無しさん
17/04/02 19:35:49.63 equ9Ou77.net
ここまで熱く語れるのはなんか色々通り越してうらやましいわ
998:デフォルトの名無しさん
17/04/02 20:00:30.00 DzpU0i7z.net
リストなの?配列なの?
オブジェクト指向の文脈において、不変性はパフォーマンス低下以外の何のメリットがあるの?
listに参照型は格納できないの?
最大の疑問は
なんで状態を持たないのに、list.sort()をlist2変数に格納してるの?
letしたってこと?、
varだとまるっきり意味ない宣言だよね?
そのコードだとパフォーマンス低下以外の何のメリットがあるの?
その短文でここまでツッコミ所あるとか何もわかってねえわ
り
リストと配列の区別もつかないやつがオブジェクト指向にたいして何か言えると思ってる時点でキチガイだろ、レベル低すぎなんだが
999:デフォルトの名無しさん
17/04/02 20:10:24.77 T05HwBIb.net
>>966
おおよそおっしゃる通り
オブジェクト指向言語だからとオブジェクト指向でしか書けないわけではないからな
必要なのは指向への固執ではなく選択すること
1000:デフォルトの名無しさん
17/04/02 20:10:31.32 l1VJjSJU.net
何?新しいお題あるの?
1001:デフォルトの名無しさん
17/04/02 20:12:40.21 T05HwBIb.net
>>967
パラダイムが異なれば破綻の定義が変わってくる
それはスパゲッティになることとはイコールではない
1002:デフォルトの名無しさん
17/04/02 20:16:26.26 l1VJjSJU.net
配列とかのソートは関数型が強過ぎてオブジェクト指向で語る気にもならんな
1003:デフォルトの名無しさん
17/04/02 20:18:16.49 T05HwBIb.net
>>972
friendは諸刃の剣だからな
正しく使えば強い剣にはなるのは同意
C+は良くも悪くも開発者のスキルに依存しすぎるのがアンチが多い理由
1004:デフォルトの名無しさん
17/04/02 20:54:50.53 VFzZvOnH.net
>>976 まくしたてて煙に巻くタイプだな >オブジェクト指向の文脈において、不変性はパフォーマンス低下以外の何のメリットがあるの? >不変性 まさにお前の懸念してた保守性がよくなる。 どう変わるかわからん隠ぺいされた内部状態にびくびくしないでよくなる。 自分で言っといて1レスで忘れるなよ…
1006:デフォルトの名無しさん
17/04/02 21:02:37.18 cWX073Y/.net
お前ら英語のweとか分かんなそうだよな
1007:デフォルトの名無しさん
17/04/02 21:10:36.70 DzpU0i7z.net
>>982
じゃあこうきこうか
immutableList<mutableClass>
は不変か?
1008:デフォルトの名無しさん
17/04/02 21:17:24.87 VFzZvOnH.net
何がいいたいのかわからんが
名前通りのクラスなら個々の参照先は不変だけど参照先の内容は可変
1009:デフォルトの名無しさん
17/04/02 21:19:07.44 n7h/bBRg.net
構造はオブジェクト指向、
関数の中身は関数型
それが今の時代のトレンドだよ。
1010:デフォルトの名無しさん
17/04/02 21:19:43.59 n7h/bBRg.net
なぜオブジェクト指向言語がこぞって関数型言語の
機能を取り入れているのかを考えてみたほうが良い
1011:デフォルトの名無しさん
17/04/02 21:30:47.41 DzpU0i7z.net
>>985
じゃあ
immutableList<mutableClass>という設計は実装上のどのような利得があるの?
immutableList<Value>は有益だけどこれ関数型そのものだ
なぜ有益なのかはまだ答を出さない
問題はmutableClassを前提としているオブジェクト指向において、言い換えれば参照透過性をみたさないものに対してimmutableなクラスを使うことにどのような実装上の便益があるのか興味があるからだ
1012:デフォルトの名無しさん
17/04/03 08:00:03.70 qOfWhjuM.net
>>972
クラス化は、散逸を呼び排他的になる結果、ほぼ同じ、働きが一緒、意味が似ているものを重複させ、それを増長させる。
風穴を開けるのがフレンド。
所謂、シェア
1013:デフォルトの名無しさん
17/04/03 08:19:13.93 nXV6xz2a.net
>>965
オブジェクト指向を原理主義、杓子定規に当て嵌めるには、
メソッドは動詞か名詞か?
クラス名は固有名詞か代名詞か現象を表す集合か?
媒介クラスとは、物(オブジェクト)であるのか?
つまり、言語仕様にそんな規定がないのだから、その議論はオブジェクト指向の議論でなく、命名規則の原理原則を押し付けているだけ。
識別子に属性つけて、その属性からコンパイラに機械的な検査とコード展開を促すのがオブジェクト指向と言われる言語を指す。
「オブジェクト」ってのが「Googleエコシステム(利権)」と同じバズワード。
エヴァみたいなエポック文学にハマる愚か者なんだよ。
1014:デフォルトの名無しさん
17/04/03 08:25:43.76 nXV6xz2a.net
言いたいことは
オブジェクト指向を学んでも設計技術は磨けない。
設計とは分けること。分ける指標が設計技術の力。
分けた結果をクラスに当てはめて制約する。
クラスをみても設計の指標は書いていない。
1015:デフォルトの名無しさん
17/04/03 09:16:40.43 DYsJriQe.net
それでも他のパラダイムよりは圧倒的に設計指針が明確なのがオブジェクト指向なのだよ
良い言語とは学習コストが小さくかつ凡人が書いてもそれなりに体をなしてしまう言語
pythonやjavaが席巻しているのもそれが理由
関数型の台頭を妨げる理由もそれ
javascript、お前だけは絶対に許さない
1016:デフォルトの名無しさん
17/04/03 09:45:54.68 VDwG6zpG.net
>>991
設計技術ある人間がクラス設計すべきなのはその通りだろうが
オブジェクト指向を学んだら設計力が身につくべきなんてこともないだろ
プログラミング言語の読み方を覚えたら
コードが書けるようになるのかい?
1017:デフォルトの名無しさん
17/04/03 09:47:57.14 MrxLrKt6.net
>>991が言いたいのは
設計で分けた結果を表現するのにクラス(オブジェクト指向)が
必須ということだよ。
1018:デフォルトの名無しさん
17/04/03 09:50:04.72 MrxLrKt6.net
赤い車、青い車。
こういうのを関数型ではうまく表現できない
1019:デフォルトの名無しさん
17/04/03 09:53:24.49 28dsjWMc.net
>>992
学習コストの大きいプログラミング言語なんてあるの?
(日本語の情報が少ないとかの固有の条件は除いて)
1020:デフォルトの名無しさん
17/04/03 09:55:23.85 DYsJriQe.net
>>996
むしろ全ての言語の学習コストが同じだと思っているの!?
1021:デフォルトの名無しさん
17/04/03 11:06:38.65 28dsjWMc.net
>>997
「大きいものはない→全部同じ」
が成り立つ世界で生きてるの?
1022:デフォルトの名無しさん
17/04/03 11:36:04.05 Gsk36gq9.net
設計とか表面だけで実装の部分を知らない者がオブジェクトを万能薬と思って推し進める
プログラムを書いた事無い者が口を挟んで炎上みたいなものか
オブジェクト指向はいいんだけど
1023:デフォルトの名無しさん
17/04/03 11:58:12.00 e66yg0jR.net
end
1024:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています