無理やりオブジェクト指向にしたから出てきた問題を解決して凄い凄い言ってるだけ。
単なるマッチポンプ。
カプセル化(英語:encapsulation)とは、オブジェクト指向を構成する概念の一つで、
オブジェクト内部のデータを隠蔽したり(データ隠蔽)、オブジェクトの振る舞いを隠蔽したり、
オブジェクトの実際の型を隠蔽したりすることをいう。
偏差値の低い学校向けの情報処理系教科書において「大変すばらしいものであり絶対に使うように」と大体的に宣伝された。
一方、カリフォルニア大学バークレー校の有識者を中心としたインターネットを作った人たちは「階層化の有害性」として
「絶対に使うな」としている。大雑把にいうと、その時は良くても、将来的な改修の際に隠蔽されたデータに
アクセスできないと解決できない問題が出てきて、結果的にデスマーチに陥るというのである。
オブジェクト指向の発案者であるアラン・ケイもコーディング規約(頭文字にアンダースコアを付けるなどの命名規則)で
縛る程度にすることを推奨しており、アラン・ケイが関わったオブジェクト指向プログラミング言語にはどれも「private」
という概念はない。
https://monobook.org/wiki/%E3%82%AB%E3%83%97%E3%82%BB%E3%83%AB%E5%8C%96
前前前スレ
オブジェクト指向ってクソじゃね?
https://mevius.5ch.net/test/read.cgi/tech/1535085129/
前前スレ
オブジェクト指向ってクソじゃねぇよ? Part2
https://mevius.5ch.net/test/read.cgi/tech/1539872441/
前スレ
オブジェクト指向ってクソじゃねぇかよPart3
https://mevius.5ch.net/test/read.cgi/tech/1542884872/
オブジェクト指向ってクソじゃねぇかよPart4
レス数が950を超えています。1000を超えると書き込みができなくなります。
1デフォルトの名無しさん
2019/04/28(日) 23:38:35.09ID:URSBxRTf890デフォルトの名無しさん
2019/10/05(土) 06:19:51.42ID:8Xto2OBi じゃスレタイ変えないとな
「オブジェクト指向って糞(フン)じゃねえかよPart4」
「オブジェクト指向って糞(フン)じゃねえかよPart4」
891デフォルトの名無しさん
2019/10/05(土) 07:54:42.44ID:2MD3TX4f892デフォルトの名無しさん
2019/10/05(土) 08:32:01.56ID:2MD3TX4f893デフォルトの名無しさん
2019/10/05(土) 09:06:11.16ID:2MD3TX4f894デフォルトの名無しさん
2019/10/05(土) 09:39:23.97ID:lxRUxp6u フン族のアッティラは最強
あまりにも強すぎて「堕落した人に神が下した罰」と言われていた
つまり、オブジェクト指向は堕落したプログラマに神が下した罰なんだよ
あまりにも強すぎて「堕落した人に神が下した罰」と言われていた
つまり、オブジェクト指向は堕落したプログラマに神が下した罰なんだよ
895デフォルトの名無しさん
2019/10/05(土) 10:02:22.40ID:ZKwf0pOB 強さのわりに影薄い人
896デフォルトの名無しさん
2019/10/05(土) 14:10:17.26ID:6kmCxdz0897デフォルトの名無しさん
2019/10/05(土) 14:25:04.56ID:9LDqHcOt >>885
チンポは自分の意思で勃起する、チンポは誰の指図も受けない。
チンポは自分の意思で勃起する、チンポは誰の指図も受けない。
898デフォルトの名無しさん
2019/10/05(土) 14:47:53.02ID:Vfe/Rb+X899デフォルトの名無しさん
2019/10/05(土) 15:20:59.62ID:0WeqN8Y0 ぼくも性的なクラスに入って性的なメソッドを勉強したいです
900デフォルトの名無しさん
2019/10/05(土) 17:02:58.04ID:BVpkxdVd 再利用できるようにと、何もかもグローバル変数に詰め込んだり。
複数人が同じファイルにコードを追加する形になる共通化?とかもうウンザリ。
複数人が同じファイルにコードを追加する形になる共通化?とかもうウンザリ。
901デフォルトの名無しさん
2019/10/05(土) 20:23:18.25ID:YH2aFfQo 昔staticメソッド禁止の開発やったことあるけど
そのうちコンストラクタに処理を書くやつが現れて
int hoge = new Hoge(1, 2, 3).getResult();
こんなコードまみれになってしまった
そのうちコンストラクタに処理を書くやつが現れて
int hoge = new Hoge(1, 2, 3).getResult();
こんなコードまみれになってしまった
902デフォルトの名無しさん
2019/10/05(土) 20:25:45.31ID:Vfe/Rb+X 何をどうしたらそんな発想になるのか
903デフォルトの名無しさん
2019/10/05(土) 20:30:23.78ID:oRBX06Fv なんでそんなスタメソ使いたがるの?
904デフォルトの名無しさん
2019/10/05(土) 20:39:28.28ID:uMdI2g4g オブジェクト指向で重要なのは、『独立した知能回路』であり、俺の股間に付いているのだ!
905デフォルトの名無しさん
2019/10/05(土) 20:44:05.51ID:Vfe/Rb+X 処理に関係するパラメータが一か所にまとまっててすごく見やすい
入力に対して出力がいつも一定
基本状態がないからデバッグがすごく簡単
呼ばれる処理が1種類なのが確実
変な依存関係ができないように別クラスとかに定義できる
メリットしかない
むしろクラスメソッドの利点がわからんわ
入力に対して出力がいつも一定
基本状態がないからデバッグがすごく簡単
呼ばれる処理が1種類なのが確実
変な依存関係ができないように別クラスとかに定義できる
メリットしかない
むしろクラスメソッドの利点がわからんわ
906デフォルトの名無しさん
2019/10/05(土) 22:06:30.51ID:uV9UQ90R907デフォルトの名無しさん
2019/10/05(土) 22:08:05.78ID:Vfe/Rb+X あおるだけあおってなんも突っ込みなしかおい
908デフォルトの名無しさん
2019/10/05(土) 22:11:13.05ID:uV9UQ90R909デフォルトの名無しさん
2019/10/05(土) 22:26:52.57ID:uV9UQ90R910デフォルトの名無しさん
2019/10/06(日) 01:53:09.37ID:msiTBJMB 質問中うぜえ
子供電話相談室じゃねぇんだぞ
子供電話相談室じゃねぇんだぞ
911デフォルトの名無しさん
2019/10/06(日) 02:07:25.44ID:CtyJaUcB はい。子供じゃなくて大人相談室です。
912デフォルトの名無しさん
2019/10/06(日) 02:11:58.38ID:msiTBJMB それは発達障害
体は大人でも心は幼稚
体は大人でも心は幼稚
913デフォルトの名無しさん
2019/10/06(日) 02:15:11.41ID:msiTBJMB つか、体も子供のまま
老いて何も残すこともなく
土に返っていくんだろうな…
ナムアミダブツ(-人-)
老いて何も残すこともなく
土に返っていくんだろうな…
ナムアミダブツ(-人-)
914デフォルトの名無しさん
2019/10/06(日) 02:23:37.42ID:msiTBJMB 嗚呼、
あはれ、秋風よ
こころあらば 伝へてよ
あるところに、男ありて…
あはれ、秋風よ
こころあらば 伝へてよ
あるところに、男ありて…
915デフォルトの名無しさん
2019/10/06(日) 09:34:57.22ID:ZvZeq4YB 質問に答えられないって、反論できない証拠。
論破された人は「池沼」「発達障害」という言葉を使って威嚇することしかできなくなる。
まさに、論破された人の良い例だな。
論破された人は「池沼」「発達障害」という言葉を使って威嚇することしかできなくなる。
まさに、論破された人の良い例だな。
916デフォルトの名無しさん
2019/10/06(日) 10:22:00.60ID:VY1R7PR/ と、池沼は言う
917デフォルトの名無しさん
2019/10/06(日) 10:34:42.23ID:VY1R7PR/ 池沼は自分の考えを持たず他人の考えを受け入れないことによって最強となるが後に残るのは不毛の地である。あたり一帯を焼け野原にして文明を破壊する。
918デフォルトの名無しさん
2019/10/06(日) 10:40:20.39ID:8jFAirHA つまり、>>910は池沼だった。
919デフォルトの名無しさん
2019/10/06(日) 10:56:47.25ID:VY1R7PR/ 違います
920デフォルトの名無しさん
2019/10/06(日) 13:17:58.14ID:deUuIDtS ま、人生、負けてなんぼ。
元気出せ
元気出せ
921デフォルトの名無しさん
2019/10/06(日) 19:19:09.17ID:4QULAbyw922デフォルトの名無しさん
2019/10/06(日) 19:44:25.39ID:QJZ+cGSE 口八丁、手八丁
口ではなんとでも言える
ってやつだろJK
口ではなんとでも言える
ってやつだろJK
923デフォルトの名無しさん
2019/10/06(日) 20:05:30.73ID:0b2FKAup オブジェクト指向を正しく使えてる人ってどれくらいいるのだろうか
924デフォルトの名無しさん
2019/10/06(日) 20:06:35.95ID:FMdTw/Qr >>923
オブジェクト指向は俺の股間で生きているぞ?
オブジェクト指向は俺の股間で生きているぞ?
925デフォルトの名無しさん
2019/10/06(日) 21:12:27.37ID:w/xC9AH7 >>921
文句があるならおまえがここに書け
文句があるならおまえがここに書け
926デフォルトの名無しさん
2019/10/06(日) 21:44:46.99ID:4QULAbyw >>925
>>905
> 処理に関係するパラメータが一か所にまとまっててすごく見やすい
> 入力に対して出力がいつも一定
> 基本状態がないからデバッグがすごく簡単
> 呼ばれる処理が1種類なのが確実
> 変な依存関係ができないように別クラスとかに定義できる
スタメソのメリットの説明は、まぁ、いい。
インスタンスを生成しなくても使用できるがメリットという大きな理由に触れていないのは気になるが、そこはスルーしてやる。
> メリットしかない
ここが致命的に間違ってるわ。
インスタンスが持つ変数に直接アクセスできないのはオブジェクト指向を台無しにしかねないレベルの最大のデメリットだろ。
わからないことがあれば、質問、どうぞ。
>>905
> 処理に関係するパラメータが一か所にまとまっててすごく見やすい
> 入力に対して出力がいつも一定
> 基本状態がないからデバッグがすごく簡単
> 呼ばれる処理が1種類なのが確実
> 変な依存関係ができないように別クラスとかに定義できる
スタメソのメリットの説明は、まぁ、いい。
インスタンスを生成しなくても使用できるがメリットという大きな理由に触れていないのは気になるが、そこはスルーしてやる。
> メリットしかない
ここが致命的に間違ってるわ。
インスタンスが持つ変数に直接アクセスできないのはオブジェクト指向を台無しにしかねないレベルの最大のデメリットだろ。
わからないことがあれば、質問、どうぞ。
927デフォルトの名無しさん
2019/10/06(日) 21:58:22.85ID:4QULAbyw 870あたりからの会話の流れを読んでれば、905の解説をする必要性なんてないと思うのだが。
928デフォルトの名無しさん
2019/10/06(日) 22:18:41.80ID:VY1R7PR/ >>924
うぷしろ
うぷしろ
929デフォルトの名無しさん
2019/10/06(日) 22:21:20.07ID:VY1R7PR/ >>926
インスタンス変数にアクセスできないことによってスレッドセーフであることを保証できるわけだからロジックを共通化する手段としてインスタンス変数を持たないクラスには存在価値があるわけですよお!?
インスタンス変数にアクセスできないことによってスレッドセーフであることを保証できるわけだからロジックを共通化する手段としてインスタンス変数を持たないクラスには存在価値があるわけですよお!?
930デフォルトの名無しさん
2019/10/06(日) 22:25:47.21ID:noFzNfyw 入力に対して出力が一定って本当?
基本状態って何?
基本状態って何?
931デフォルトの名無しさん
2019/10/06(日) 22:27:53.42ID:VY1R7PR/ 可変な状態を持つオブジェクトはドメインには必要ない
可変な状態が必要なのはデータ構造
データ構造は標準ライブラリやフレームワーク由来のものを使用するのが基本
オブジェクトにインスタンス変数が必要になったときは設計を見直すしかない
ドメインとデータ構造をごっちゃにするから暗黙の依存関係でぐちゃぐちゃになってオブジェクト指向使わない方がマシという事態を招く
可変な状態が必要なのはデータ構造
データ構造は標準ライブラリやフレームワーク由来のものを使用するのが基本
オブジェクトにインスタンス変数が必要になったときは設計を見直すしかない
ドメインとデータ構造をごっちゃにするから暗黙の依存関係でぐちゃぐちゃになってオブジェクト指向使わない方がマシという事態を招く
932デフォルトの名無しさん
2019/10/06(日) 22:30:20.80ID:VY1R7PR/ スタティックおじさんの感覚は概ね正しい
業務システムのコンサルタントやってる立場から言わせてもらった
業務システムのコンサルタントやってる立場から言わせてもらった
933デフォルトの名無しさん
2019/10/06(日) 22:36:08.14ID:KmMY+7Om オブジェクト指向とは俺の股間で生きているそれだけで十分だ!
934デフォルトの名無しさん
2019/10/06(日) 22:52:41.78ID:oAew60H6 >>929
staticメソッドの使用はオブジェクト指向の基本中の基本、オブジェクトの生成と消滅の概念を壊してしまいます。
オブジェクト指向の基本的な考え方を破壊してまで、スレッドセーフの実現手法にstatic化が適切なのかはと言われると、そうは思いません。
第一、そのような方法によるスレッドセーフ実現がありなら、「インスタンスの生成は1つまで」というルールをつくるのもありだと思います。
まぁ、私はそんな方法でスレッドセーフは実現しませんが。
スレッド間を跨ぐオブジェクトはスレッドセーフ対応コレクションやmutexオブジェクトを使って実現しますけどね。
staticメソッドの使用はオブジェクト指向の基本中の基本、オブジェクトの生成と消滅の概念を壊してしまいます。
オブジェクト指向の基本的な考え方を破壊してまで、スレッドセーフの実現手法にstatic化が適切なのかはと言われると、そうは思いません。
第一、そのような方法によるスレッドセーフ実現がありなら、「インスタンスの生成は1つまで」というルールをつくるのもありだと思います。
まぁ、私はそんな方法でスレッドセーフは実現しませんが。
スレッド間を跨ぐオブジェクトはスレッドセーフ対応コレクションやmutexオブジェクトを使って実現しますけどね。
935デフォルトの名無しさん
2019/10/06(日) 23:04:52.08ID:oAew60H6 >>932
931はちょっとスルーして、先に932について尋ねますが、あなたはオブジェクト指向を否定する立場なのですか?肯定する立場なのですか?
それによって私の言うことが少し変わります。
まぁ、「実はオブジェクト指向って、しっくりこないんです」のstaticおじさん側ということは、否定だと思いますが。
それだったら、先程、オブジェクト指向の考えを破壊しかねないstaticメソッド使用は危険が伴うという指摘は、あなたにとってどうでもよかったということになりますね。
どうなのでしょう?
ちなみに、私は肯定している側です。
931はちょっとスルーして、先に932について尋ねますが、あなたはオブジェクト指向を否定する立場なのですか?肯定する立場なのですか?
それによって私の言うことが少し変わります。
まぁ、「実はオブジェクト指向って、しっくりこないんです」のstaticおじさん側ということは、否定だと思いますが。
それだったら、先程、オブジェクト指向の考えを破壊しかねないstaticメソッド使用は危険が伴うという指摘は、あなたにとってどうでもよかったということになりますね。
どうなのでしょう?
ちなみに、私は肯定している側です。
936デフォルトの名無しさん
2019/10/06(日) 23:10:57.51ID:FMdTw/Qr937デフォルトの名無しさん
2019/10/06(日) 23:19:37.37ID:OshNeVUq オブジェクト指向肯定の理由。
>>935
>あなたはオブジェクト指向を否定する立場なのですか?肯定する立場なのですか?
俺の股間に付いているのが、オブジェクト指向で無ければ何だというのか?
オブジェクト同士は常に二人称であり、オブジェクト指向では独立した知能回路が実装される。
>>935
>あなたはオブジェクト指向を否定する立場なのですか?肯定する立場なのですか?
俺の股間に付いているのが、オブジェクト指向で無ければ何だというのか?
オブジェクト同士は常に二人称であり、オブジェクト指向では独立した知能回路が実装される。
938デフォルトの名無しさん
2019/10/06(日) 23:52:01.09ID:oAew60H6 時間が時間なので、最後に...
別に、非オブジェクト指向のプログラムでstaticメソッドを使いまくるのは結構です。
ただ、そのプログラムを指差して「オブジェクト指向はクソ」と言われないようにだけしてください。
オブジェクト指向として解釈すると駄目だけど、別のプログラミング手法として解釈すると問題ないというのなら、それはそれでいいです。
>>937
あと、ちんこ哲学者さん、理由はどうであれ肯定ありがとうございます。
このスレで肯定一人は心細かったです。
ちんこ哲学については深すぎて理解が追いつきませんが。
別に、非オブジェクト指向のプログラムでstaticメソッドを使いまくるのは結構です。
ただ、そのプログラムを指差して「オブジェクト指向はクソ」と言われないようにだけしてください。
オブジェクト指向として解釈すると駄目だけど、別のプログラミング手法として解釈すると問題ないというのなら、それはそれでいいです。
>>937
あと、ちんこ哲学者さん、理由はどうであれ肯定ありがとうございます。
このスレで肯定一人は心細かったです。
ちんこ哲学については深すぎて理解が追いつきませんが。
939デフォルトの名無しさん
2019/10/07(月) 00:54:46.64ID:qRqbWkkD うるせえ大人が現実のプログラムの話してんだお前は学級委員でもやってろ
940デフォルトの名無しさん
2019/10/07(月) 01:00:53.90ID:qRqbWkkD >インスタンスが持つ変数に直接アクセスできないのはオブジェクト指向を台無しにしかねないレベルの最大のデメリットだろ。
>staticメソッドの使用はオブジェクト指向の基本中の基本、オブジェクトの生成と消滅の概念を壊してしまいます。
>オブジェクト指向の基本的な考え方を破壊してまで、スレッドセーフの実現手法にstatic化が適切なのかはと言われると、そうは思いません。
オブジェクト指向押してる連中のこのあたりの
教科書丸写ししただけみたいな感想に寒気をおぼえた
お前は何を言ってるんだ感がすごい
>staticメソッドの使用はオブジェクト指向の基本中の基本、オブジェクトの生成と消滅の概念を壊してしまいます。
>オブジェクト指向の基本的な考え方を破壊してまで、スレッドセーフの実現手法にstatic化が適切なのかはと言われると、そうは思いません。
オブジェクト指向押してる連中のこのあたりの
教科書丸写ししただけみたいな感想に寒気をおぼえた
お前は何を言ってるんだ感がすごい
941デフォルトの名無しさん
2019/10/07(月) 01:01:12.17ID:sle/7Qy/942デフォルトの名無しさん
2019/10/07(月) 01:06:17.07ID:qRqbWkkD オブジェクト指向がどうという次元の問題ではない
実際にどんな局面でそれがどう問題になったのか全く想像がつかないんだ
根本的にあたまおかしい
好意的に考えてもふだんからよっぽど酷いオブジェクトの使い方してたとしかおもえん
メンバをグローバル変数代わりにしてるとか
1年生がよくやる
実際にどんな局面でそれがどう問題になったのか全く想像がつかないんだ
根本的にあたまおかしい
好意的に考えてもふだんからよっぽど酷いオブジェクトの使い方してたとしかおもえん
メンバをグローバル変数代わりにしてるとか
1年生がよくやる
943デフォルトの名無しさん
2019/10/07(月) 01:23:58.76ID:sle/7Qy/ オブジェクト指向厨に基本が出来ていない奴が多いのは
確かだな
確かだな
944デフォルトの名無しさん
2019/10/07(月) 01:25:18.42ID:cbxlkLVD これヤバイなw
こんなめちゃくちゃなモデリングを1000人以上がいいね!しちゃうんだね
役割駆動設計で巨大クラスを爆殺する
https://qiita.com/MinoDriven/items/2a378a09638e234d8614
こんなめちゃくちゃなモデリングを1000人以上がいいね!しちゃうんだね
役割駆動設計で巨大クラスを爆殺する
https://qiita.com/MinoDriven/items/2a378a09638e234d8614
945デフォルトの名無しさん
2019/10/07(月) 01:38:44.97ID:sle/7Qy/ 多分悪い奴ではないんだよ、
でも自分で考え物事を見極める力が足りなかったんじゃないかな
よくいる。
それがオブジェクト指向宣教師にだまされ、迷信にどっぷりつかってしまったんだろ
アーメン
でも自分で考え物事を見極める力が足りなかったんじゃないかな
よくいる。
それがオブジェクト指向宣教師にだまされ、迷信にどっぷりつかってしまったんだろ
アーメン
946デフォルトの名無しさん
2019/10/07(月) 02:09:49.99ID:bNKU8AFH >>944
どうやばいの?
どうやばいの?
947あ
2019/10/07(月) 03:22:28.30ID:cbxlkLVD948デフォルトの名無しさん
2019/10/07(月) 06:19:32.49ID:BfE/iq70 >>947
レスが下手だなw 否定するだけで案を書いてない。
俺がテンプレ書いてやるから○○に当てはめてみな
× 一番ヤバイのは何のためにモデリングをするのか全く理解してないところ
○ ○○のためにモデリングということを理解しなければいけない
× 次にヤバイのはユーザーロールとクラスの責務を区別できてないところ
○ ユーザーロールとクラスの責務を区別するために○○をしなければいけない
レスが下手だなw 否定するだけで案を書いてない。
俺がテンプレ書いてやるから○○に当てはめてみな
× 一番ヤバイのは何のためにモデリングをするのか全く理解してないところ
○ ○○のためにモデリングということを理解しなければいけない
× 次にヤバイのはユーザーロールとクラスの責務を区別できてないところ
○ ユーザーロールとクラスの責務を区別するために○○をしなければいけない
949デフォルトの名無しさん
2019/10/07(月) 07:07:29.75ID:1E3ztz2w ふつうは番号で管理してる紐づきを直接クラスにぶち込んだらこうなる
EntityFrameworkとか使ってたらありそう
各機能の出力画面に1対1に対応してそうだし
DB設計じゃないからいいのかもしれない
EntityFrameworkとか使ってたらありそう
各機能の出力画面に1対1に対応してそうだし
DB設計じゃないからいいのかもしれない
950デフォルトの名無しさん
2019/10/07(月) 07:39:08.83ID:G5wRq45j >>934
インスタンスが一つでもスレッドセーフにはならんでしょ
インスタンスが一つでもスレッドセーフにはならんでしょ
951デフォルトの名無しさん
2019/10/07(月) 08:25:59.83ID:21Ng7BTy 938の書き込みを見たとき、絶対、火病起こす人が現れると思いきや案の定だった。
952デフォルトの名無しさん
2019/10/07(月) 08:33:33.39ID:+Gu4JkVA953デフォルトの名無しさん
2019/10/07(月) 08:34:06.70ID:iJ2tiwHS >>935
staticおじさんの方が君よりもまともだと思ってる
staticおじさんの方が君よりもまともだと思ってる
954デフォルトの名無しさん
2019/10/07(月) 08:46:30.67ID:iJ2tiwHS staticおじさんは状態が必要ないところではstaticメソッドを使うんだという当たり前のことを言ってるだけだよ
.NETフレームワークがオブジェクトを用意してるからビジネスロジックではそれを操作するのが主で自ずとstaticメソッドでロジックを組み上げるってこと
当時はASP.NET Web Formsを使ってた、フレームワークに従って作ればそうなるよ、ややこしいことやらんでいいよって文脈だった
staticおじさんエアプか?
.NETフレームワークがオブジェクトを用意してるからビジネスロジックではそれを操作するのが主で自ずとstaticメソッドでロジックを組み上げるってこと
当時はASP.NET Web Formsを使ってた、フレームワークに従って作ればそうなるよ、ややこしいことやらんでいいよって文脈だった
staticおじさんエアプか?
955デフォルトの名無しさん
2019/10/07(月) 08:54:40.28ID:+Gu4JkVA956デフォルトの名無しさん
2019/10/07(月) 08:59:34.03ID:iJ2tiwHS オブジェクトおじさん「これはオブジェクト指向なのか!?」
957デフォルトの名無しさん
2019/10/07(月) 09:00:38.33ID:iJ2tiwHS >>955
クラスオブジェクトに属してるから立派なオブジェクト指向です
クラスオブジェクトに属してるから立派なオブジェクト指向です
958デフォルトの名無しさん
2019/10/07(月) 09:04:09.42ID:iJ2tiwHS Mathクラスは数学に関するロジックを集約したオブジェクトですよね
959デフォルトの名無しさん
2019/10/07(月) 09:12:19.20ID:iJ2tiwHS 危惧してるのは状態を作ればオブジェクト指向になるんだって思いがちなところ
ビジネスロジックでオブジェクトを作り出したら危険信号、データ構造とロジックの分離ができてない証拠
昨今流行りの関数型がデータ構造に処理を丸投げすることで複雑さに対処するようにオブジェクト指向でもビジネスロジックとデータ構造の見極め大事
staticメソッドは悪いものじゃない
ビジネスロジックでオブジェクトを作り出したら危険信号、データ構造とロジックの分離ができてない証拠
昨今流行りの関数型がデータ構造に処理を丸投げすることで複雑さに対処するようにオブジェクト指向でもビジネスロジックとデータ構造の見極め大事
staticメソッドは悪いものじゃない
960デフォルトの名無しさん
2019/10/07(月) 09:23:22.01ID:+Gu4JkVA >>957
staticメソッドはデメリットがない、全部staticにすれば?ってのが奴の主張
オブジェクト指向プログラマーにとってstaticにするべきではない部分までstaticにしようとするから、こんな話になったんだろ?
必要のない と見なす部分が広すぎ
staticメソッドはデメリットがない、全部staticにすれば?ってのが奴の主張
オブジェクト指向プログラマーにとってstaticにするべきではない部分までstaticにしようとするから、こんな話になったんだろ?
必要のない と見なす部分が広すぎ
961デフォルトの名無しさん
2019/10/07(月) 09:26:34.03ID:1ngSbCFm >>957
それはクラスを名前空間として利用してるだけでオブジェクト指向とは言わんだろ
それはクラスを名前空間として利用してるだけでオブジェクト指向とは言わんだろ
962デフォルトの名無しさん
2019/10/07(月) 09:36:16.55ID:iJ2tiwHS >>960
奴とは?
奴とは?
963デフォルトの名無しさん
2019/10/07(月) 09:38:05.78ID:iJ2tiwHS964デフォルトの名無しさん
2019/10/07(月) 09:38:44.22ID:iJ2tiwHS クラスで分類するからオブジェクト指向
965デフォルトの名無しさん
2019/10/07(月) 09:51:31.82ID:+Gu4JkVA966デフォルトの名無しさん
2019/10/07(月) 15:50:12.22ID:i6JqkWTj もしかして...staticおじさんをただ単にstaticを使う人への煽りと解釈している人と、「実はオブジェクト指向ってしっくりこないんです!」の記事で大炎上した人という意味で解釈している人がいるんじゃないかな?
967デフォルトの名無しさん
2019/10/07(月) 16:27:55.17ID:iJ2tiwHS >>965
クラスオブジェクトに属してるんだからオブジェクトだよ
newは省略されてるだけ
名前空間とは明らかに違う
継承、ポリモー、カプセル化を使わないとオブジェクト指向じゃないとでも思ってるのかな?
クラスの存在そのものがオブジェクト指向だよ
クラスオブジェクトに属してるんだからオブジェクトだよ
newは省略されてるだけ
名前空間とは明らかに違う
継承、ポリモー、カプセル化を使わないとオブジェクト指向じゃないとでも思ってるのかな?
クラスの存在そのものがオブジェクト指向だよ
968デフォルトの名無しさん
2019/10/07(月) 17:23:04.80ID:i6JqkWTj >>967
世の中にはC言語でオブジェクト指向なプログラムを書いている人もいるから、その理屈は少し怪しいな。
世の中にはC言語でオブジェクト指向なプログラムを書いている人もいるから、その理屈は少し怪しいな。
969デフォルトの名無しさん
2019/10/07(月) 18:03:33.19ID:QTLP3T8x アランケイ「オブジェクト指向発明したけどC++がやりだしたクラスなんか知らないよ」
970デフォルトの名無しさん
2019/10/07(月) 18:49:05.79ID:A3f3M3xS ストラウストラップのハゲは列挙体使うときにクラスを名前空間代わりにして使ってたな
971デフォルトの名無しさん
2019/10/07(月) 19:30:59.83ID:ft7AjSjh972デフォルトの名無しさん
2019/10/07(月) 19:41:54.84ID:RwllG7mn まずは純粋にCだけで書かれたWindowsプログラムを読んでみることをおすすめする
言語がオブジェクト指向に対応してるにこしたことはないけど、
一般人には無縁のパラダイムだよ
言語がオブジェクト指向に対応してるにこしたことはないけど、
一般人には無縁のパラダイムだよ
>>972
あれのメッセージループの記述が、どんな教科書でも switch〜case なのは、そろそろいい加減にやめないといけない、と、強く感じているのですが…
一方、私は無駄に継承を重ねることにしました…薄い層にスライスしてメッセージループと、それ以外の関数との関係を強調する試みです
あれのメッセージループの記述が、どんな教科書でも switch〜case なのは、そろそろいい加減にやめないといけない、と、強く感じているのですが…
一方、私は無駄に継承を重ねることにしました…薄い層にスライスしてメッセージループと、それ以外の関数との関係を強調する試みです
974あ
2019/10/07(月) 20:45:15.45ID:cbxlkLVD >>967
JavaでMath.sqrt(36)って書くとMathがクラスだからオブジェクト指向で
他言語でMath.sqrt(36)って書いてもMathがクラスじゃなくモジュールだったらオブジェクト指向じゃないってことになるね
型クラスが存在してるHaskellはオブジェクト指向そのものw
JavaでMath.sqrt(36)って書くとMathがクラスだからオブジェクト指向で
他言語でMath.sqrt(36)って書いてもMathがクラスじゃなくモジュールだったらオブジェクト指向じゃないってことになるね
型クラスが存在してるHaskellはオブジェクト指向そのものw
975デフォルトの名無しさん
2019/10/07(月) 21:30:40.10ID:cbxlkLVD >>949
EFとか画面単位とか関係ない
↓こういう思考ロジック
[機能概要]
出品側として、商品を出品する。
購入側として、商品を選択し購入手続きをする。
↓
[関数シグニチャを想像]
出品する(出品者ID, 出品リスト)
購入手続きをする(購入者ID, 受け取り住所, 購入品リスト)
↓
[クラス化]
出品者クラス: [識別ID, 出品リスト], 出品する()
購入者クラス: [識別ID, 受け取り住所, 購入品リスト], 購入手続きをする()
リレーショナルモデリングでもオブジェクトモデリングでも
エンディティやオブジェクト間の関連を無視してまともなものはできないよ
EFとか画面単位とか関係ない
↓こういう思考ロジック
[機能概要]
出品側として、商品を出品する。
購入側として、商品を選択し購入手続きをする。
↓
[関数シグニチャを想像]
出品する(出品者ID, 出品リスト)
購入手続きをする(購入者ID, 受け取り住所, 購入品リスト)
↓
[クラス化]
出品者クラス: [識別ID, 出品リスト], 出品する()
購入者クラス: [識別ID, 受け取り住所, 購入品リスト], 購入手続きをする()
リレーショナルモデリングでもオブジェクトモデリングでも
エンディティやオブジェクト間の関連を無視してまともなものはできないよ
976デフォルトの名無しさん
2019/10/07(月) 21:32:53.13ID:2Ro4RUKT >>968
クラス的なものを使ってたらオブジェクト指向的なことができます怪しくないよ全然怪しくないよ
クラス的なものを使ってたらオブジェクト指向的なことができます怪しくないよ全然怪しくないよ
977デフォルトの名無しさん
2019/10/07(月) 21:34:11.03ID:2Ro4RUKT >>974
そのモジュールとやらをクラスとみなすことでオブジェクト指向とみなすことは可能だよ全然余裕だよ
そのモジュールとやらをクラスとみなすことでオブジェクト指向とみなすことは可能だよ全然余裕だよ
978デフォルトの名無しさん
2019/10/07(月) 21:35:30.78ID:2Ro4RUKT >>970
はは。さすがハゲ。
はは。さすがハゲ。
979デフォルトの名無しさん
2019/10/07(月) 21:36:57.35ID:2Ro4RUKT >>969
ケイちゃんのオブジェクト指向は今のWebサービスだかんな
ケイちゃんのオブジェクト指向は今のWebサービスだかんな
980デフォルトの名無しさん
2019/10/07(月) 21:44:51.49ID:2Ro4RUKT >>971
TI(ちんぽうちのう)ってかwwwやかましいわwww
TI(ちんぽうちのう)ってかwwwやかましいわwww
981デフォルトの名無しさん
2019/10/07(月) 21:49:54.27ID:2Ro4RUKT Webサービスがstaticメソッドで実装されてようがインスタンスメソッドで実装されてようがWebサービスの外からはWebサービスというオブジェクトしか見えない
ケイちゃんのオブジェクト指向はそういうでっかい視点でリモートでオブジェクトが協調する姿を画いてる
ケイちゃんにとってはクラスさえ瑣末なもの
ケイちゃんのオブジェクト指向はそういうでっかい視点でリモートでオブジェクトが協調する姿を画いてる
ケイちゃんにとってはクラスさえ瑣末なもの
982デフォルトの名無しさん
2019/10/07(月) 22:51:36.60ID:PHxdOQnu やっぱり人間は構造化できてないものは理解できない
関係の理解も2つが限度
メッセージパッシングによるオブジェクト指向は構造化をめちゃくちゃにする
シミュレーションぐらいしか使い道がない
構造化万歳ダイクストラ万歳
関係の理解も2つが限度
メッセージパッシングによるオブジェクト指向は構造化をめちゃくちゃにする
シミュレーションぐらいしか使い道がない
構造化万歳ダイクストラ万歳
983デフォルトの名無しさん
2019/10/07(月) 23:09:22.21ID:gEYFs1Cq 何だっけ?大工ストライキのこーちょこちょだっけ?
984デフォルトの名無しさん
2019/10/07(月) 23:14:25.56ID:PHxdOQnu 俺も大昔のギリシア人かと思ってた
985デフォルトの名無しさん
2019/10/07(月) 23:18:52.25ID:RK8d645+ もりかして:ダイクストラの互除法
986デフォルトの名無しさん
2019/10/07(月) 23:27:22.09ID:aU+ghkHH お風呂に入ってアルキメデスの原理を発見したポルトガル人ですよ
987デフォルトの名無しさん
2019/10/08(火) 07:54:22.73ID:dANDe70p988デフォルトの名無しさん
2019/10/08(火) 08:49:51.98ID:A8vN7xSK >>987
俺はstaticおじさんに詳しいんだ
俺はstaticおじさんに詳しいんだ
989デフォルトの名無しさん
2019/10/08(火) 08:59:08.94ID:A8vN7xSK 状態が必要ないならstaticを使うべし
状態に依存しないクリーンなメソッドであることを表すことができる
あるメソッドは状態に依存していて、あるメソッドは状態に依存してないそれらのメソッドは別のオブジェクトにするのが良いかもしれない
staticを使用することでこのような分析も可能になる
状態に依存しないクリーンなメソッドであることを表すことができる
あるメソッドは状態に依存していて、あるメソッドは状態に依存してないそれらのメソッドは別のオブジェクトにするのが良いかもしれない
staticを使用することでこのような分析も可能になる
レス数が950を超えています。1000を超えると書き込みができなくなります。
ニュース
- 【地震速報】青森県で震度6強 沿岸部に津波警報 ★6 [ぐれ★]
- 「日の丸にバツ印」掲げた大学生 あいまいな国旗損壊罪に「怖い」 The Mainichi [少考さん★]
- 【音楽】BARBEE BOYS・KONTAが事故で四肢麻痺を公表、新体制で活動は継続 [少考さん★]
- 中国「捜索レーダー起動は各国の通常の手法」 火器管制用か回答せず [蚤の市★]
- 【野球】野球の未来に危機感「マイナースポーツになる」 宮本慎也氏が開催…学童大会 [尺アジ★]
- 【訃報】声優・西村知道さん死去 「SLAM DUNK」安西先生役 9月に体調不良のため一時休業 [少考さん★]
- マヨネーズにわさび、山椒、卵の黄身、ラー油、オリーブオイルを入れてよく混ぜてください
- ぺこーら、地震で同僚が次々配信を止めるなか強行し続けるので悪目立ちするwww [268244553]
- 巨大地震 [957955821]
- ひろゆき「愛があるから人は苦しまなきゃいけないんだね」
- 【速報】高市早苗、起床 [779938112]
- 無限 vs 全知全能
