前スレ
オブジェクト指向システムの設計 172
http://mevius.2ch.net/test/read.cgi/tech/1467992113
類似スレ
手続き型システムの設計 1
http://mevius.2ch.net/test/read.cgi/tech/1500282714
探検
オブジェクト指向システムの設計 173 [無断転載禁止]©2ch.net
レス数が1000を超えています。これ以上書き込みはできません。
1デフォルトの名無しさん
2017/08/08(火) 17:52:14.38ID:4Kd2O+xB969デフォルトの名無しさん
2017/09/25(月) 00:29:03.77ID:8cq/CpUk >>968
コマンドオブジェクト内のメソッドのことを関数ポインタと呼んでるんなら
コマンド内には関数ポインタは必須だよ(間接的に呼び出すのでも別に構わないけど)
コマンドを実行する側が、コマンドの内部実装を気にする必要がなく
executeメソッドやundoメソッドみたいに共通の呼び出しで
各コマンドを処理できることに意味がある
Javaも8からラムダ使えるから単なる関数の実行だけなら
インターフェースや継承使わなくても関数ポインタ的なものを
実行側のリストに直接追加するなりハッシュ作って追加するなりできるよ
コマンドオブジェクト内のメソッドのことを関数ポインタと呼んでるんなら
コマンド内には関数ポインタは必須だよ(間接的に呼び出すのでも別に構わないけど)
コマンドを実行する側が、コマンドの内部実装を気にする必要がなく
executeメソッドやundoメソッドみたいに共通の呼び出しで
各コマンドを処理できることに意味がある
Javaも8からラムダ使えるから単なる関数の実行だけなら
インターフェースや継承使わなくても関数ポインタ的なものを
実行側のリストに直接追加するなりハッシュ作って追加するなりできるよ
970デフォルトの名無しさん
2017/09/25(月) 00:36:24.94ID:8cq/CpUk undo/redoの仕組みは
- 操作を記録する方法
- 状態を記録する方法
- 状態の差分を記録する方法
のどれかかその組み合わせ
コマンドパターンでのundoは操作を記録して逆操作をする
メメントパターンでのundoは状態を記録
それぞれ良し悪しあるから状況にあったのを選べばいい
何を記録するか以外に
サポートするundoの機能によって記録するデータ構造が変わる
stackとかtreeとか
- 操作を記録する方法
- 状態を記録する方法
- 状態の差分を記録する方法
のどれかかその組み合わせ
コマンドパターンでのundoは操作を記録して逆操作をする
メメントパターンでのundoは状態を記録
それぞれ良し悪しあるから状況にあったのを選べばいい
何を記録するか以外に
サポートするundoの機能によって記録するデータ構造が変わる
stackとかtreeとか
971デフォルトの名無しさん
2017/09/25(月) 00:51:45.61ID:N+1HPlkM スナップショットってどうやって実現すればいいの?
undo/redoってどうやって実現すればいいの?
その答がデザインパターンなんだな
undo/redoってどうやって実現すればいいの?
その答がデザインパターンなんだな
972デフォルトの名無しさん
2017/09/25(月) 00:53:39.30ID:3XblncDf >>969
> コマンドオブジェクト内のメソッドのことを関数ポインタと呼んでるんなら
> コマンド内には関数ポインタは必須だよ(間接的に呼び出すのでも別に構わないけど)
ああ、この認識でいい。
Java7まではメンバポインタを関数ポインタ代わりとみなし、差し込んで上位からメソッド呼び出ししかなかったろ。
そこで疑問だが、ここで関数ポインタ直接差込のメリットあるか?
俺だったらハッシュをクロージャで捕捉して、
「この呼び出し機構から呼べるのはこのハッシュ内関数のみ」として制限する。
この方がソース上で一覧も見やすくなるし。
直接差込だと何でも実行可能になり、どうしてもバラけるし、
(俺はあまり気にしないが)変な物を差し込まれてないかのテスト等がしにくい。
パターン作った連中はここら辺の事情は分かっているはずで、ちょっと不自然さを感じるんだが。
> コマンドオブジェクト内のメソッドのことを関数ポインタと呼んでるんなら
> コマンド内には関数ポインタは必須だよ(間接的に呼び出すのでも別に構わないけど)
ああ、この認識でいい。
Java7まではメンバポインタを関数ポインタ代わりとみなし、差し込んで上位からメソッド呼び出ししかなかったろ。
そこで疑問だが、ここで関数ポインタ直接差込のメリットあるか?
俺だったらハッシュをクロージャで捕捉して、
「この呼び出し機構から呼べるのはこのハッシュ内関数のみ」として制限する。
この方がソース上で一覧も見やすくなるし。
直接差込だと何でも実行可能になり、どうしてもバラけるし、
(俺はあまり気にしないが)変な物を差し込まれてないかのテスト等がしにくい。
パターン作った連中はここら辺の事情は分かっているはずで、ちょっと不自然さを感じるんだが。
973デフォルトの名無しさん
2017/09/25(月) 00:55:43.76ID:N+1HPlkM メンバポインタってなんだ?
974デフォルトの名無しさん
2017/09/25(月) 00:57:17.48ID:N+1HPlkM C言語には関数ポインタは有るけど、
その関数ポインタは名前の通り関数へのポインタであって
データへのポインタは含まないんだよな
だから関数とデータで別々に扱わないといけない
その関数ポインタは名前の通り関数へのポインタであって
データへのポインタは含まないんだよな
だから関数とデータで別々に扱わないといけない
975デフォルトの名無しさん
2017/09/25(月) 00:57:27.34ID:3XblncDf976デフォルトの名無しさん
2017/09/25(月) 00:58:44.83ID:N+1HPlkM >>972
> パターン作った連中はここら辺の事情は分かっているはずで、ちょっと不自然さを感じるんだが。
パターンは実装ではないので、
あるパターンに対して幾つもの実装がある
言語が変われば実装は異なる
だから君みたいに実装のことなんて考えてないんだよ
あくまで設計だから一つ上の層から物事を考えてる
> パターン作った連中はここら辺の事情は分かっているはずで、ちょっと不自然さを感じるんだが。
パターンは実装ではないので、
あるパターンに対して幾つもの実装がある
言語が変われば実装は異なる
だから君みたいに実装のことなんて考えてないんだよ
あくまで設計だから一つ上の層から物事を考えてる
977デフォルトの名無しさん
2017/09/25(月) 00:59:09.44ID:N+1HPlkM978デフォルトの名無しさん
2017/09/25(月) 03:20:37.55ID:eX6e3GbI みんな話が通じてるかのように会話してるけど俺にはさっぱりだ
ロジックを無理に日本語にせずJavaかC++の疑似コードかなんかで書いてくれた方が誤解なく伝わるぞ
ロジックを無理に日本語にせずJavaかC++の疑似コードかなんかで書いてくれた方が誤解なく伝わるぞ
979デフォルトの名無しさん
2017/09/25(月) 03:21:41.82ID:/NZHFTqW しったかの応酬
980デフォルトの名無しさん
2017/09/25(月) 05:13:23.75ID:2SJhli4d981デフォルトの名無しさん
2017/09/25(月) 22:28:14.08ID:DU69B7yE デザパタって何?
982デフォルトの名無しさん
2017/09/25(月) 22:34:32.01ID:AtwfXPhb なんだろう?
983デフォルトの名無しさん
2017/09/25(月) 23:07:47.29ID:N+1HPlkM >>981
> デザパタって何?
デザインパターンのこと
設計のパターン
例えばソートでもアルゴリズムによって
バブルソートなどという名前がついているように、
デザパタでもパターンに名前をつけてる。
もし名前がなくて「undo/redoを実現するやり方」という言い方をしたら
どうやってやるのか?っていうのを他の人と知識の共有ができないし、
逆にどうやってやるのか?を「オブジェクトをリストの形でもって
それぞれが変更内容の情報を持っていて、その変更内容を逆方向に
適用することでundo、順方向に適用することでredoを実現する」という
言い方をしたら冗長な上に正確ではないし、undo/redo以外にも使えるってことが
わからないし、まあ何も良いことがないだろ?
名前をつけることで、デザパタの知識を持っている人の間で
知識を共有できるわけよ。
その知識のカタログがデザインパターン
> デザパタって何?
デザインパターンのこと
設計のパターン
例えばソートでもアルゴリズムによって
バブルソートなどという名前がついているように、
デザパタでもパターンに名前をつけてる。
もし名前がなくて「undo/redoを実現するやり方」という言い方をしたら
どうやってやるのか?っていうのを他の人と知識の共有ができないし、
逆にどうやってやるのか?を「オブジェクトをリストの形でもって
それぞれが変更内容の情報を持っていて、その変更内容を逆方向に
適用することでundo、順方向に適用することでredoを実現する」という
言い方をしたら冗長な上に正確ではないし、undo/redo以外にも使えるってことが
わからないし、まあ何も良いことがないだろ?
名前をつけることで、デザパタの知識を持っている人の間で
知識を共有できるわけよ。
その知識のカタログがデザインパターン
984デフォルトの名無しさん
2017/09/25(月) 23:20:57.87ID:5HagYgjy 哲学
985デフォルトの名無しさん
2017/09/25(月) 23:30:01.68ID:3XblncDf986デフォルトの名無しさん
2017/09/25(月) 23:36:45.43ID:N+1HPlkM いや・・・クイックソートという名前を出してる人に
クイックソートを実装してみろって意味不明だろ。
クイックソートを実装してみろって意味不明だろ。
987デフォルトの名無しさん
2017/09/25(月) 23:40:43.21ID:3XblncDf ID:3Bk8qYPA == ID:N+1HPlkM
988デフォルトの名無しさん
2017/09/25(月) 23:42:00.75ID:N+1HPlkM >>978
外れw
外れw
989デフォルトの名無しさん
2017/09/26(火) 00:05:37.02ID:3DlL6rrx 物凄く残念な人が住み着いたから
しばらくはこのスレもお休みだな
しばらくはこのスレもお休みだな
990デフォルトの名無しさん
2017/09/26(火) 00:43:54.35ID:wPSfJS/Y 俺は最初から居たから、その理論ならデザパタ厨がコミだということになる。
無理に布教しようとするからおかしな事になる。
仮にデザパタ厨がundo如きピシッと実装出来ていれば、自然と布教出来ただろうに。
この有様では訴求力なんて皆無だろ。
無理に布教しようとするからおかしな事になる。
仮にデザパタ厨がundo如きピシッと実装出来ていれば、自然と布教出来ただろうに。
この有様では訴求力なんて皆無だろ。
991デフォルトの名無しさん
2017/09/26(火) 00:47:18.92ID:Yx2E7i/E >>990
反デザパタのお前に訴求力があればその台詞も格好ついたんだろうけどなあ
反デザパタのお前に訴求力があればその台詞も格好ついたんだろうけどなあ
992デフォルトの名無しさん
2017/09/26(火) 01:04:27.60ID:w3seKs+r 次スレ立てろ
993デフォルトの名無しさん
2017/09/26(火) 01:10:41.31ID:wPSfJS/Y994デフォルトの名無しさん
2017/09/26(火) 01:34:04.11ID:SmezMtDi ID:3XblncDf=ID:R8lp94JX=「構造体」を適宜「オブジェクト」に読み替え関数ポインタ/関数オブジェクト「ラッパ」パターン君
ゴミw
ゴミw
995デフォルトの名無しさん
2017/09/26(火) 01:35:14.08ID:SmezMtDi デザパタは必要
ソースは
「構造体」を適宜「オブジェクト」に読み替え関数ポインタ/関数オブジェクト「ラッパ」パターン
これ読んだだけでわかる
ソースは
「構造体」を適宜「オブジェクト」に読み替え関数ポインタ/関数オブジェクト「ラッパ」パターン
これ読んだだけでわかる
996デフォルトの名無しさん
2017/09/26(火) 02:46:47.83ID:LgPIDr44 デザパタ、デザパタうっせーよ
デザインパターンな
デザインパターンな
997デフォルトの名無しさん
2017/09/26(火) 03:18:16.89ID:shxtGnUG デザパタ
998デフォルトの名無しさん
2017/09/26(火) 03:21:34.51ID:shxtGnUG ザパタデ
999デフォルトの名無しさん
2017/09/26(火) 03:22:11.12ID:1aSY2upq >>996
目立ちたがりやさん
目立ちたがりやさん
1000デフォルトの名無しさん
2017/09/26(火) 03:22:32.56ID:shxtGnUG パタデザ
10011001
Over 1000Thread このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 48日 9時間 30分 18秒
もう書けないので、新しいスレッドを立ててくださいです。。。
life time: 48日 9時間 30分 18秒
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 社説:国旗損壊罪の創設案 息苦しい社会にするのか | 毎日新聞 [少考さん★]
- ワンメーターのタクシー乗車で運転手からまさかの対応「1万円でタクシー乗っちゃダメ」に「これって私が悪い?」グラドルに同情の声 ★2 [muffin★]
- 首相の台湾答弁撤回を要求 アジア平和目指す学会が声明 (国際アジア共同体学会) [少考さん★]
- 三浦マイルド、山上被告に言及「この犯人に同情してる人 よく考えてください」北村晴男氏「まともな人間は自身の努力で人生を切り開く」 [muffin★]
- ヘグセス米国防長官「もうただ乗りは許さない」 防衛支出不十分なら「報い」 日本も念頭か ★3 [ぐれ★]
- 【中国軍戦闘機レーダー照射】高市総理「極めて残念」中国側に強く抗議 ★2 [ぐれ★]
- 【実況】博衣こよりのえちえちにじホロエアライダー🧪
- 石破「賃上げします。残業禁止します。減税します。備蓄米売ります。中国と程よく付き合います。戦争反対」なんで降ろしたの? [261472595]
- なんGとかエッヂでたまに見る「塩田くん👶」って誰なん❓🏡
- おさかなさんあつまれえ
- 【悲報】外務省、中国大使を呼び出して抗議wwwwwwwwwwwwww [834922174]
- 上の階のやつが水道使うと俺のとこの水道がコポコポ鳴るんだがなにこれ?どうしたらいいの🥺? [929293504]
