カプセル化(英語:encapsulation)とは、オブジェクト指向を構成する概念の一つで、
オブジェクト内部のデータを隠蔽したり(データ隠蔽)、オブジェクトの振る舞いを隠蔽したり、
オブジェクトの実際の型を隠蔽したりすることをいう。
偏差値の低い学校向けの情報処理系教科書において「大変すばらしいものであり絶対に使うように」と大体的に宣伝された。
一方、カリフォルニア大学バークレー校の有識者を中心としたインターネットを作った人たちは「階層化の有害性」として
「絶対に使うな」としている。大雑把にいうと、その時は良くても、将来的な改修の際に隠蔽されたデータに
アクセスできないと解決できない問題が出てきて、結果的にデスマーチに陥るというのである。
オブジェクト指向の発案者であるアラン・ケイもコーディング規約(頭文字にアンダースコアを付けるなどの命名規則)で
縛る程度にすることを推奨しており、アラン・ケイが関わったオブジェクト指向プログラミング言語にはどれも「private」
という概念はない。
https://monobook.org/wiki/%E3%82%AB%E3%83%97%E3%82%BB%E3%83%AB%E5%8C%96
オブジェクト指向ってクソじゃね?
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2018/08/24(金) 13:32:09.36ID:ifygL6bT2018/08/24(金) 13:35:00.08ID:vJMsvnBL
なにをいまさら
3デフォルトの名無しさん
2018/08/24(金) 13:35:14.51ID:ZAZ1bDZG よくある
4デフォルトの名無しさん
2018/08/24(金) 13:44:30.12ID:dWZiPnfz アホだな
2018/08/24(金) 13:44:39.27ID:GnRKIAsQ
マジかよ
6♨デフォルトの名無しさん
2018/08/24(金) 13:48:32.20ID:JNQXY3hm7♨デフォルトの名無しさん
2018/08/24(金) 13:48:49.10ID:JNQXY3hm8♨デフォルトの名無しさん
2018/08/24(金) 13:48:49.93ID:JNQXY3hm9♨デフォルトの名無しさん
2018/08/24(金) 13:49:06.65ID:JNQXY3hm10♨デフォルトの名無しさん
2018/08/24(金) 13:49:07.52ID:JNQXY3hm11♨デフォルトの名無しさん
2018/08/24(金) 13:49:24.49ID:JNQXY3hm12♨デフォルトの名無しさん
2018/08/24(金) 13:49:25.25ID:JNQXY3hm13♨デフォルトの名無しさん
2018/08/24(金) 13:49:42.00ID:JNQXY3hm14♨デフォルトの名無しさん
2018/08/24(金) 13:49:42.66ID:JNQXY3hm15♨デフォルトの名無しさん
2018/08/24(金) 13:49:59.43ID:JNQXY3hm16♨デフォルトの名無しさん
2018/08/24(金) 13:50:00.16ID:JNQXY3hm17♨デフォルトの名無しさん
2018/08/24(金) 13:50:17.05ID:JNQXY3hm18♨デフォルトの名無しさん
2018/08/24(金) 13:50:17.68ID:JNQXY3hm19♨デフォルトの名無しさん
2018/08/24(金) 13:50:34.99ID:JNQXY3hm20♨デフォルトの名無しさん
2018/08/24(金) 13:50:35.59ID:JNQXY3hm21♨デフォルトの名無しさん
2018/08/24(金) 13:50:52.74ID:JNQXY3hm22♨デフォルトの名無しさん
2018/08/24(金) 13:50:53.52ID:JNQXY3hm23♨デフォルトの名無しさん
2018/08/24(金) 13:51:10.36ID:JNQXY3hm24♨デフォルトの名無しさん
2018/08/24(金) 13:51:10.98ID:JNQXY3hm25♨デフォルトの名無しさん
2018/08/24(金) 13:51:27.73ID:JNQXY3hm26♨デフォルトの名無しさん
2018/08/24(金) 13:51:28.57ID:JNQXY3hm27♨デフォルトの名無しさん
2018/08/24(金) 13:51:46.63ID:JNQXY3hm28♨デフォルトの名無しさん
2018/08/24(金) 13:51:47.62ID:JNQXY3hm29♨デフォルトの名無しさん
2018/08/24(金) 13:52:04.41ID:JNQXY3hm30♨デフォルトの名無しさん
2018/08/24(金) 13:52:05.28ID:JNQXY3hm31♨デフォルトの名無しさん
2018/08/24(金) 13:52:22.20ID:JNQXY3hm32♨デフォルトの名無しさん
2018/08/24(金) 13:52:22.85ID:JNQXY3hm33♨デフォルトの名無しさん
2018/08/24(金) 13:52:39.73ID:JNQXY3hm34♨デフォルトの名無しさん
2018/08/24(金) 13:52:40.36ID:JNQXY3hm35♨デフォルトの名無しさん
2018/08/24(金) 13:52:57.00ID:JNQXY3hm36♨デフォルトの名無しさん
2018/08/24(金) 13:52:57.69ID:JNQXY3hm37♨デフォルトの名無しさん
2018/08/24(金) 13:53:14.69ID:JNQXY3hm38♨デフォルトの名無しさん
2018/08/24(金) 13:53:15.30ID:JNQXY3hm39♨デフォルトの名無しさん
2018/08/24(金) 13:53:32.47ID:JNQXY3hm40♨デフォルトの名無しさん
2018/08/24(金) 13:53:33.30ID:JNQXY3hm41♨デフォルトの名無しさん
2018/08/24(金) 13:53:50.36ID:JNQXY3hm42♨デフォルトの名無しさん
2018/08/24(金) 13:53:51.27ID:JNQXY3hm43♨デフォルトの名無しさん
2018/08/24(金) 13:54:07.98ID:JNQXY3hm44♨デフォルトの名無しさん
2018/08/24(金) 13:54:08.57ID:JNQXY3hm45♨デフォルトの名無しさん
2018/08/24(金) 13:54:25.45ID:JNQXY3hm46♨デフォルトの名無しさん
2018/08/24(金) 13:54:26.08ID:JNQXY3hm47♨デフォルトの名無しさん
2018/08/24(金) 13:54:42.76ID:JNQXY3hm48♨デフォルトの名無しさん
2018/08/24(金) 13:54:43.68ID:JNQXY3hm49♨デフォルトの名無しさん
2018/08/24(金) 13:55:00.44ID:JNQXY3hm50♨デフォルトの名無しさん
2018/08/24(金) 13:55:01.09ID:JNQXY3hm51♨デフォルトの名無しさん
2018/08/24(金) 13:55:17.72ID:JNQXY3hm52♨デフォルトの名無しさん
2018/08/24(金) 13:55:18.39ID:JNQXY3hm53♨デフォルトの名無しさん
2018/08/24(金) 13:55:36.07ID:JNQXY3hm54♨デフォルトの名無しさん
2018/08/24(金) 13:55:36.71ID:JNQXY3hm2018/08/24(金) 14:27:45.99ID:0hzqlpOd
2018/08/25(土) 00:54:02.71ID:6mB8j9/9
オブジェクト指向は、ウンコのようにニガい
2018/08/25(土) 13:13:07.84ID:00w/RGH3
砂糖(シンタックスシュガー)を加えて関数型言語っぽくしているが、臭いまではごまかせない
2018/08/25(土) 13:25:46.59ID:bFeNHPVf
オブジェクト指向が無くなった場合
メソッドは全部グローバル関数になるの?
PersonRename(Person p,string newName);
PersonSetAge(Person p,int age);
PersonGetAge();
FirePersonCreate(Person p);
FirePersonRename(Person p,string newName);
FirePersonSetAge(Person p,int age);
FirePersonGetAge();
メソッドは全部グローバル関数になるの?
PersonRename(Person p,string newName);
PersonSetAge(Person p,int age);
PersonGetAge();
FirePersonCreate(Person p);
FirePersonRename(Person p,string newName);
FirePersonSetAge(Person p,int age);
FirePersonGetAge();
2018/08/25(土) 13:27:10.91ID:bFeNHPVf
訂正
PersonRename(Person p,string newName);
PersonSetAge(Person p,int age);
PersonGetAge();
FirePersonCreate(Person p);
FirePersonRename(FirePerson p,string newName);
FirePersonSetAge(FirePerson p,int age);
FirePersonGetAge();
PersonRename(Person p,string newName);
PersonSetAge(Person p,int age);
PersonGetAge();
FirePersonCreate(Person p);
FirePersonRename(FirePerson p,string newName);
FirePersonSetAge(FirePerson p,int age);
FirePersonGetAge();
2018/08/27(月) 19:47:07.71ID:y3uHC3Z/
クソはオブジェクトやぞ
2018/08/31(金) 19:34:28.84ID:lHXkvQer
文系がこねくり回して、結果的に無駄にコード量増やすようなイメージしかない。
62デフォルトの名無しさん
2018/09/05(水) 05:14:03.10ID:UEpkpswy >>1
オブジェクト指向で組めない君らがクソ
オブジェクト指向で組めない君らがクソ
2018/09/05(水) 05:21:15.30ID:w7O3HrXU
スタティックおじさんの皆さん
2018/09/05(水) 09:21:08.12ID:BLSFUWnl
カプセル化が原因で開発ができなくなるとするならオブジェクトの分け方が不適切なのだろ、開発が進むに連れてオブジェクトの役割が変遷したのだろ、設計やり直せないなら地獄だな
2018/09/05(水) 09:22:22.65ID:BLSFUWnl
設計のないスタティックおじさん方式は柔軟かもわからんね↓
2018/09/05(水) 15:30:35.02ID:UEpkpswy
67デフォルトの名無しさん
2018/09/05(水) 23:23:20.11ID:BuNkH2Jq オブジェクト指向で描くロバストネス図なんてのは
構造化プログラミングの前のフローチャートそのものじゃないか
オブジェクト指向は現代のGOTO文なんだろ?
構造化プログラミングの前のフローチャートそのものじゃないか
オブジェクト指向は現代のGOTO文なんだろ?
2018/09/06(木) 01:28:19.10ID:uUC4mFDs
>>67
https://thinkit.co.jp/article/13487
> ロバストネス図を書くにあたっては、以下のルールを遵守する必要があります。
>
> ・アクターはバウンダリのみ関連線(矢印)が引ける
> ・バウンダリはコントロールとアクターのみ関連線が引ける
> ・エンティティはコントロールのみ関連線が引ける
> ・コントロールはコントロール同士とバウンダリのみ関連線が引ける
残念ながらフロー(流れ)を示す線は書けないので
フローチャートにはならない。特に条件分岐やループなどがない
https://thinkit.co.jp/article/13487
> ロバストネス図を書くにあたっては、以下のルールを遵守する必要があります。
>
> ・アクターはバウンダリのみ関連線(矢印)が引ける
> ・バウンダリはコントロールとアクターのみ関連線が引ける
> ・エンティティはコントロールのみ関連線が引ける
> ・コントロールはコントロール同士とバウンダリのみ関連線が引ける
残念ながらフロー(流れ)を示す線は書けないので
フローチャートにはならない。特に条件分岐やループなどがない
2018/09/06(木) 03:27:30.57ID:OdtAawkS
70デフォルトの名無しさん
2018/09/06(木) 07:33:26.04ID:ndioKak871デフォルトの名無しさん
2018/09/06(木) 07:42:10.81ID:ndioKak8 /** リストの要素をゼロで置き換える **/
private void clearList() {
for (Integer el : someList) {
el = new Integer(0);
}
}
なかなかファンキーなロケンロールだぜ
private void clearList() {
for (Integer el : someList) {
el = new Integer(0);
}
}
なかなかファンキーなロケンロールだぜ
2018/09/06(木) 08:26:13.84ID:abjuqq+M
2018/09/06(木) 08:28:15.97ID:abjuqq+M
2018/09/06(木) 08:31:32.42ID:abjuqq+M
構造化プログラムでゴトーが滅亡したようにオブジェクト指向にも構造化のブレイクスルーが生まれていい頃合いだと思うの
75デフォルトの名無しさん
2018/09/06(木) 12:51:58.13ID:ntAiYVJq オブジェクト指向って簡単な処理先に書いて難しい処理は後回しにする考え方でしょ
2018/09/06(木) 13:33:23.77ID:uUC4mFDs
2018/09/06(木) 13:46:11.74ID:abjuqq+M
インターフェースを切って実装を分離することを言ってるんじゃないか?
2018/09/06(木) 13:50:58.27ID:BY1c9tpo
そもそも、継承関係で隠蔽しちゃい合うのが問題なだけで、
インスタンス握り合うだけの仲なら、相手の陰部まで見に行く必要性なんて無いだろ。
インスタンス握り合うだけの仲なら、相手の陰部まで見に行く必要性なんて無いだろ。
2018/09/06(木) 23:36:20.94ID:OdtAawkS
2018/09/06(木) 23:37:17.79ID:OdtAawkS
2018/09/07(金) 08:35:51.18ID:avaKv6NM
2018/09/07(金) 08:40:25.09ID:avaKv6NM
責務ごとにクラスを作るのがどうして主流だよね?ってことですよ
2018/09/07(金) 09:19:04.85ID:avaKv6NM
責務ごとに分離したら凝集度が低下します
2018/09/07(金) 19:25:29.09ID:ZCXZkOYn
2018/09/07(金) 19:40:40.77ID:Nc+ifFiB
ボトムアップで設計したら結局最上位クラスが神クラス化しちゃうのは、アプリ層の設計が甘いんかな?
どうもUI部の設計は苦手だ。
どうもUI部の設計は苦手だ。
2018/09/07(金) 20:33:13.60ID:avaKv6NM
2018/09/07(金) 20:36:30.67ID:avaKv6NM
ドメインオブジェクトがドメインとしての振る舞いを持つのですから肥大化とは言いません、データと関わりのない振る舞いを持つわけではないんです
2018/09/07(金) 20:48:57.91ID:ZCXZkOYn
2018/09/07(金) 20:49:13.32ID:ZCXZkOYn
2018/09/07(金) 21:07:16.42ID:0j44DGgx
>>89
そんなバカな
行数でオブジェクトを捉えるべきじゃない
振る舞いがどこにあるべきかで考えないと
行数が増えたからオブジェクト分けましょうなんてのは
オブジェクト指向の理念に反する
データをカプセル化してデータに対する責務を持つのが
オブジェクトなんだよ
そんなバカな
行数でオブジェクトを捉えるべきじゃない
振る舞いがどこにあるべきかで考えないと
行数が増えたからオブジェクト分けましょうなんてのは
オブジェクト指向の理念に反する
データをカプセル化してデータに対する責務を持つのが
オブジェクトなんだよ
2018/09/07(金) 21:09:02.84ID:0j44DGgx
データに対する振る舞いが集まるんだから凝集度は高まるんです
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【速報】長期金利が一時2.050%に上昇。1999年2月以来、26年10カ月ぶり [蚤の市★]
- H3ロケット8号機、打ち上げ後に「第2段エンジン早期に燃焼終了」 [少考さん★]
- 鈴木農水相「自由にコメ作れば価格が暴落する」おこめ券はコメ価格に「ほとんど影響なし」 [Hitzeschleier★]
- 「さなえちゃんドレッシング」の女性強調に違和感… エプロン姿の高市首相、アンコンシャスバイアスでは?:東京新聞 [少考さん★]
- 【本】日本の「移民大国化」が止まらない…最新データが示す"永住型の労働移民は世界3位"という衝撃の現実 (是川 夕氏) [少考さん★]
- 【ボーボーの子が好き】新浪剛史氏が銀座のクラブでセクハラ「下半身を出し、ホステスに“見ろ”と」 [nita★]
- 【特大悲報】1千億円かけて開発した日本製衛星を積んだH3ロケット、第二エンジンが機能せず打ち上げ失敗…宇宙のもずくに☠ [339712612]
- 高市早苗「オールドメディアの取材よりSNSでの発信(大本営発表)を重視する」 [931948549]
- 一水会「小野田紀美大臣は、悪いことをする外国人は日本にいない状況をつくる、実に殊勝だ。統一教会の責任や米軍特権の是正もぜひ」 [256556981]
- 3日前に「緊急停止」したH3ロケット、5分後打ち上げ予定 [498389267]
- 【画像】育ち盛りの安心系JS6、冷凍弁当を二つもペロリ😋wwwwwwwwwwww
- H3ロケット8号機の第2段エンジンの燃焼、1秒で終了。予定より早く終了、JAXA詳しい状況を確認中 [256556981]
