C#, C♯, C#相談室 Part98 (487レス)
C#, C♯, C#相談室 Part98 http://mevius.5ch.net/test/read.cgi/tech/1719656321/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
220: デフォルトの名無しさん (ワッチョイ bf01-aPXN) [sage] 2024/12/12(木) 22:38:48.07 ID:VQmaeBIU0 >>214 それISP単体の説明にもなってない class Penguin : IAnimalにNotImplementedExceptionでFly()を実装すれば即ISP違反だというのは間違い まずは原典にあたってISPを理解してきたほうがいい 謳われてる原則をどう活用するかはその後 http://mevius.5ch.net/test/read.cgi/tech/1719656321/220
222: デフォルトの名無しさん (ワッチョイ 474b-Ahcx) [] 2024/12/12(木) 22:59:54.30 ID:m/Fq7DtI0 >>220 「クライアントが『泳ぐ、飛ぶ、もしくは走る動物』として使うことを想定するのなら、そのインターフェースであるIAnimalにその情報を含めるのは適切」ということですかね class Penguin としては Fly や Run などのメソッドの実装はノイズに思えるけど、IAnimalとして使われるなら、その契約に従えという感じかな (それだと後から「道具を使う」がIAnimalに追加された際に Penguine もメソッド追加が必要で、そこがモヤモヤしてる) こういう場合にアダプタ (ラッパー?) を使うのって適切? 純粋に Penguine としての機能を提供するクラスと、それを IAnimal として使うためのアダプタみたいなの それだと更に複雑さを増すだけ? OOP難しい…… http://mevius.5ch.net/test/read.cgi/tech/1719656321/222
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.930s*