2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

オブジェクト指向がわからない

1 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 09:58:12.577 ID:AsSlmcuMM.net
class使えばオブジェクト指向なの?

2 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 09:58:28.338 ID:9hA513T5a.net
定期スレ

3 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 09:58:46.924 ID:eDK1VsOR0.net
うんこ

4 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 09:58:58.695 ID:FFl8e8bga.net
クラスで提供したい機能だけが外から使えるならオブジェクト指向だよ

5 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 09:59:20.312 ID:AsSlmcuMM.net
>>4
意味わかんね

6 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 09:59:47.747 ID:EpLLdIqTa.net
教本に書いてあんだろ

7 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:00:14.040 ID:jRZlWwwIa.net
うろ覚えだけどプログラムを部品の組み合わせで作って同じとこは共通化しよう
みたいな考え方だったと思う

8 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:01:27.106 ID:9HeIXckT0.net
俺は逆にオブジェクト指向以外がわからない

9 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:01:34.745 ID:AsSlmcuMM.net
>>6
3ページくらいしかない

10 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:01:51.968 ID:AsSlmcuMM.net
>>8
教えてよ

11 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:02:16.288 ID:BEzrfuTG0.net
肛門{
うんちぶり(){
うんちを肛門から出す
}
};

脳みそから肛門→うんちぶりを実行
屁も出せるように拡張もできる

12 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:02:50.423 ID:AsSlmcuMM.net
>>11
もっとわかんなくなってきた

13 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:03:43.359 ID:FFl8e8bga.net
>>5
エアコンでユーザに提供されてる機能はリモコンで操作出来る範囲に限るだろ?
でも実際は熱い空気を冷やしたり、排気したりとユーザが使わない内部の機能がある
その、ユーザに必要な機能しか触らせないのがオブジェクト指向

ちょっとこなれると
エアコンと冷蔵庫の「冷やす」という機能は同じ部品を使おう
とかそういうこともしだす

14 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:03:55.764 ID:dzNLb0phK.net
わかるやつ世界に10人もいない説

15 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:04:10.844 ID:l3PMIy5/0.net
オブジェクト指向はオワコン

16 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:05:13.433 ID:AsSlmcuMM.net
>>13
難しいことを隠蔽するって書いたあったけど結局難しい処理はクラス内のメソッドに書くんだし同じじゃない?

17 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:06:21.142 ID:9HeIXckT0.net
つまりPPAP

18 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:07:02.307 ID:L4PuEI8ha.net
オブジェクト指向という言葉を偉そうにいう奴はたくさんいるがそれを簡潔に説明できるやつは一人も見たことない
つまりそういうこと
みんなほんとはなんとなくしかわかってない

19 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:08:10.450 ID:AsSlmcuMM.net
>>18
オブジェクト指向だけで一冊本出てるじゃん
あれって意味ある?

20 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:08:30.249 ID:FFl8e8bga.net
>>16
難しいこととかじゃなく
例えばエアコンのリモコンに「冷房」と「空気を冷やす」ボタンが並んでたら混乱するだろ?
だから「空気を冷やす」機能は「冷房」の中で使うだけだから、ユーザには見せない
そうして使う機能を間違えないようにしたのがオブジェクト指向

21 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:09:03.619 ID:L0uHoZGpH.net
モジュールに分けるのとの違いがわからん

22 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:09:22.598 ID:9HeIXckT0.net

http://o.8ch.net/1a79r.png

23 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:09:24.374 ID:VSbAo40Od.net
俺は「憂鬱なプログラマのためのオブジェクト指向開発講座」
って本を読んで理解した

今ググったらダメな本らしいが

24 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:10:01.964 ID:AsSlmcuMM.net
>>20
メソッド名が冷房で実際の処理が空気を冷やすってこと?

25 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:10:04.500 ID:06O8govV0.net
>>11
ワロタ

26 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:10:52.278 ID:AsSlmcuMM.net
>>21
ほんこれ
モジュール内をさらに細分化するのがクラスと思ってる

27 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:11:22.982 ID:J5IHyjPy0.net
>>1
まさか!?class使わずにコードを!?

28 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:11:49.956 ID:AsSlmcuMM.net
>>27
なんとなく使ってる

29 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:11:57.463 ID:CJpseuGk0.net
オブジェクトって呼び方自体なんか大仰でよくわからん
単純に要素と処理を持ってる箱なんじゃないの

30 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:12:04.285 ID:9HeIXckT0.net
ゲームやってる?ゲームだとわかりやすいんだが

31 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:12:25.499 ID:SEaaD4jv0.net
ずっとCやってるけどいまだにC++に手出す気も起きないし必要も感じない

32 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:13:06.730 ID:AsSlmcuMM.net
>>29
どう箱に分けるか
オブジェクトって言っても車オブジェクトかタイヤオブジェクトかネジオブジェクトかよくわからん

33 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:13:34.266 ID:UVTVPiMx0.net
データと処理をオブジェクトごとにまとめて扱う考え方のこと

34 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:13:45.519 ID:FFl8e8bga.net
>>24
そんな感じ
「冷房」メソッドは「空気を冷やす」メソッドと「風を送り出す」メソッド等で構成されてる

要はオブジェクト指向ってのは
他の人に使わせてもミスのしにくい設計にしましょうって思想

35 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:14:06.245 ID:AsSlmcuMM.net
>>30
やってるよ

36 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:15:10.432 ID:CJpseuGk0.net
>>32
それはユーザーの自由にできるんじゃないの?
車だけ扱う人は車オブジェクトだけ見ればいいし
ちょっといじりたい人はマフラーオブジェクトとかハンドルオブジェクトも見ればいいし
設計・構築しなきゃいけないならネジオブジェクトまで見なきゃだし、みたいな
値・処理のユーザーに対するスコープをこちらの意図に沿って変えられる、程度の認識しかしてない

37 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:16:11.492 ID:AsSlmcuMM.net
>>36
一番操作しやすいオブジェクトっていうか関連したデータの集まりと考えればいいんだね

38 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:17:57.348 ID:AsSlmcuMM.net
MVCのコントローラクラスもよくわからない

39 :以下、\(^o^)/でVIPがお送りします:2018/10/02(火) 10:18:01.738 ID:eLp33WqM0.net
オブジェクト指向の言語って規模でかくなると親クラス弄りようがなくなるからある意味柔軟性がなくね?

40 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:18:55.557 ID:J5IHyjPy0.net
>>29
new式で生成されるあいつがオブジェクトで
その、あいつをどうこうする手法がオブジェクト志向

41 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:20:49.829 ID:9HeIXckT0.net
>>35
やっぱり難しいわ
親子関係の一言につきる

42 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:21:11.060 ID:rzzHCYBU0.net
http://www.dmm.co.jp/mono/dvd/-/detail/=/cid=dasd466/

43 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:22:06.928 ID:L0uHoZGpH.net
関数も内包する構造体って感じ?

44 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:22:53.614 ID:AsSlmcuMM.net
>>43
それは定義で定理じゃないんじゃない?

45 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:23:40.641 ID:0Do82wktM.net
ある機能を1つのオブジェクトとして表現する
システム全体を複数のオブジェクトとその相互作用として表現する
カプセル化→オブジェクトの内部状態を外部に公開しないかわりにメソッドを公開する、状態を変更できるのは自分自身のみ
ポリモーフィズム→適切に抽象化されたクラス階層を使ってサブクラスを特定のインタフェースを持ったスーパークラスとして扱う、サブクラスを新たに作って差し替えるだけで済むからいろいろ楽チン

46 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:24:34.790 ID:CJpseuGk0.net
>>40
なんだそれめっちゃ簡単じゃん

47 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:27:08.113 ID:mi2WhmI6a.net
冷房のくだりめっちゃ分かりやすくてワロタ

48 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:31:48.413 ID:l4b62od0H.net
勘違いしやすいのは
オブジェクト志向って
成果物を効率よく作るためのフレームワークみたいなものではなく
一度作ったプログラムの変更や改修を容易にするための手法
究極言えば
一人で作るかつ変更があり得ないのであれば無用の賜物

49 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:34:45.745 ID:L0uHoZGpH.net
よくわからん
なんでメンテしやすいってことになるんだ?

50 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:38:23.253 ID:l4b62od0H.net
>>49
カプセル化によって必要なもの以外他のオブジェクトから隠蔽することでオブジェクト同士を粗結合にするから
あるオブジェクトを大幅変更しても他のオブジェクトを壊すことなく変更が加えられる可能性が高くなる

51 :以下、\(^o^)/でVIPがお送りします:2018/10/02(火) 10:38:24.259 ID:eLp33WqM0.net
むしろオブジェクト指向って変更しづらいものの代表格だと思うんだが
親クラスから子クラスが見えないんだぞ?

52 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:40:19.701 ID:l4b62od0H.net
>>51
だから一般的に継承は敬遠される
基本はインターフェースに対して実装をするのが良い

53 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:41:39.466 ID:9HeIXckT0.net
>>49
例えば
「押したら音がなって画面が光って今日の日付が表示されるボタン」があったとして一直線にこの命令を書くより
「押したらAとBとCをするボタン」「Aは音を出す」「Bは画面を光らせる」「Cは日付を表示する」って分けたほうが汎用性高いじゃん

54 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:44:15.126 ID:0GEg7iRxd.net
メッセージパッシング

55 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:44:44.004 ID:J5IHyjPy0.net
>>53
誕生日の時だけ音を変える遊びが捗るな

56 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:46:57.972 ID:L0uHoZGpH.net
>>53
やっぱ関数とかモジュールと同じじゃねえか

57 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:48:01.921 ID:q2oaxUWB6.net
オブジェクト指向を超える上位概念ないの?
なんか非効率な気がする

58 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:48:38.914 ID:JqibUpjWd.net
ぐぐれば色々あるだろ

59 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:49:09.368 ID:9HeIXckT0.net
>>56
モジュールはよくわからんけど関数はちょっと違う

60 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:49:51.212 ID:q2oaxUWB6.net
>>59
戻り値がない
でもクラスにも実質戻り値あるよね

61 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:50:14.831 ID:cWtNXKtBr.net
数値を入れると二乗してくれる機械に2を入れたら4が出てきた!→手続き型

2に二乗しろって命令したら4が出てきた!→オブジェクト指向

62 :以下、\(^o^)/でVIPがお送りします:2018/10/02(火) 10:55:17.938 ID:eLp33WqM0.net
ラムダ式はオブジェクト指向って言っていいの?

63 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 10:56:38.886 ID:cWtNXKtBr.net
>>62
ラムダ式は関数定義を式でできるようにしただけでオブジェクト指向は関係ない

64 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 11:13:55.902 ID:WFttrp2Td.net
実装はコロコロ変わるもんなんだからこれからは仕様に依存しようず
オブジェクトそれぞれに責務を割り当てて他プログラムへの依存度を減らせばテストも変更もしやすくね?
って今は言われてるけどアラン・ケイがSmalltalkとか作った頃のは非同期のほうに焦点があってた気がする

65 :以下、?ちゃんねるからVIPがお送りします:2018/10/02(火) 12:13:03.681 ID:RtaUHAYGr.net
ぞい

総レス数 65
16 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★