C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[6]: 親クラスのメソッドのコメントを出したい


(過去ログ 116 を表示中)

[トピック内 7 記事 (1 - 7 表示)]  << 0 >>

■68066 / inTopicNo.1)  親クラスのメソッドのコメントを出したい
  
□投稿者/ morimori (17回)-(2013/09/20(Fri) 09:11:38)

分類:[C#] 


開発環境
Windows7 Home
使用言語
2010 C# Professional

mogumoguです。
よく親クラスのメソッドをオーバーライドして大量の子クラスを作成しています。
コメントを作るときに親クラスのメソッドとコメントがほとんどかぶるので
コメントを流用したいのですが、このような場合に便利な方法はないでしょうか。
引用返信 編集キー/
■68150 / inTopicNo.2)  Re[1]: 親クラスのメソッドのコメントを出したい
□投稿者/ じゃんぬねっと (16回)-(2013/09/26(Thu) 02:05:09)
No68066 (morimori さん) に返信
> 開発環境
> Windows7 Home
> 使用言語
> 2010 C# Professional
>
> mogumoguです。
> よく親クラスのメソッドをオーバーライドして大量の子クラスを作成しています。

キッパリ言うのもなんですが、その設計 (すくなくともコード設計) たぶん間違っていると思います。
オーバーライドってそんなに気軽に (すくなくとも大量に) するものではないです。
言語設計がオーバーライド ウェルカムに見える Java でさえ、そういうことをしないものです。
(かといって、final にすることもいちいちしませんけど...)

> コメントを作るときに親クラスのメソッドとコメントがほとんどかぶるので
> コメントを流用したいのですが、このような場合に便利な方法はないでしょうか。

個人的には「書かなければ良い」あるいは「オーバーライドしているなら、その差異を書きましょう」のどちらかですね。

前者はポリモーフィズムをわかっている方なら、抽象型 (基底クラス) か、interface を通してアクセスするので、そちらの型に記載されていればソッチを見るので良いハズです。後者は動作がそれなりに変わった場合ですね。これは書いた方が良いと思うのでそうします。

ちなみに "コメント" とは、XML コメントのことでしょうか?
まあ、普通のコメントにしても XML コメントにしても上記までの回答は変わりないです。
以下は、XML コメントのことだった場合の回答です。

一応 <include> という要素があって、別のファイルの内容を参照できたハズです。
使ったことはないですケド... 個人的には <see> とか <seealso> のみで良いのではと思うからです。
理由はリファクタリングがらみですが、まあだらだらと説明してもしょうがないのでここらで失礼します。
引用返信 編集キー/
■68154 / inTopicNo.3)  Re[2]: 親クラスのメソッドのコメントを出したい
□投稿者/ morimori (25回)-(2013/09/26(Thu) 08:49:29)

<see><seealso>タグですか。なるほど。
私のクラスの中ではインタフェースと抽象クラスを使ってるものがあるので参考にさせていただきます。
ありがとうございます。
引用返信 編集キー/
■68164 / inTopicNo.4)  Re[3]: 親クラスのメソッドのコメントを出したい
□投稿者/ じゃんぬねっと (19回)-(2013/09/26(Thu) 22:23:18)
No68154 (morimori さん) に返信
> <see><seealso>タグですか。なるほど。
> 私のクラスの中ではインタフェースと抽象クラスを使ってるものがあるので参考にさせていただきます。
> ありがとうございます。

あー、こっちでも私が早とちりをしている可能性が... orz

もし "親クラス" が抽象クラスで、実装を持たない抽象メソッドを子クラスで実装しているという意味で、
「オーバーライド」と仰っているなら、実態は implements になりますから、

> キッパリ言うのもなんですが、その設計 (すくなくともコード設計) たぶん間違っていると思います。
> オーバーライドってそんなに気軽に (すくなくとも大量に) するものではないです。

は、もはや完全に私の誤りですね。

親クラスに実装の枠はあるけど、この部分だけは外部から注入するようにしたい場合は、抽象クラスで抽象メソッドにしますからね (コードレベルの DI のようなイメージですね)。

もしそうでしたら、こちらでもあちらでもこんな書き方をしてしまって本当に申し訳ないと思っております。
解決済み
引用返信 編集キー/
■68167 / inTopicNo.5)  Re[4]: 親クラスのメソッドのコメントを出したい
□投稿者/ morimori (27回)-(2013/09/27(Fri) 09:13:03)
回答ありがとうございます。
プログラミングは数年ぐらいやっておりますが、
まだまだ修行が足らないことを痛感しております。

別の質問の場でもそうでしたが、
私は共通処理をみつけるとインターフェースや抽象クラスを使って
まとめ上げようとする癖があるようです。

特に、内部でオブジェクトを操作して使用クラスには
その操作を意識させないような作りにしたいので・・・。

やはりそれが諸悪の根源なのでしょうか。


引用返信 編集キー/
■68186 / inTopicNo.6)  Re[5]: 親クラスのメソッドのコメントを出したい
□投稿者/ επιστημη (85回)-(2013/09/29(Sun) 08:22:06)
επιστημη さんの Web サイト
> 私は共通処理をみつけるとインターフェースや抽象クラスを使って
> まとめ上げようとする癖があるようです。

あなたの"意図"がそうすることによって表現されるのなら、それでいいんじゃないかしら。

引用返信 編集キー/
■68255 / inTopicNo.7)  Re[6]: 親クラスのメソッドのコメントを出したい
□投稿者/ morimori (29回)-(2013/10/04(Fri) 08:15:05)
皆様ありがとうございます。
有力な情報をいただいたのでこれで解決にしたいと思います。

特にじゃんねっと様とはまた機会があればいろいろお話を伺いたいと思います。
ありがとうございます。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -