- PR -

VB.NetにおけるメソッドのSTEP数について

投稿者投稿内容
五郎
会議室デビュー日: 2004/11/24
投稿数: 5
投稿日時: 2004-11-27 12:23
最近からVB .Netの開発を始めたものですが、メソッドのstep数について疑問があります。

クラスはある機能を取りまとめたもので、メソッドはCで言う関数と同じと思って、
色んな参考書等を読んでいると、『メソッドは20〜30step前後で記述する』と書いてあります。
そこで疑問なのですが、20〜30stepでメソッドを記述するとメソッドの数が膨大になり
分かりにくいソースにならないのでしょうか?

機能の重複を避けるために、短くするというのは分かるのですが、あまりメソッドの数が多くなっても保守がしにくいのでは?と思いました。
みなさんは、実際に20〜30stepぐらいでメソッドを作成されているのですか?
結構初歩的な質問ですが、ご教授ください。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-11-27 12:26
 だからクラス図などを書いて、プログラムでなく、設計書でプログラムを管理するんですよ。
_________________
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-11-27 12:59
C言語でもモジュール化を推し進めると、20〜30STEPの単機能関数がたくさんできると思うんだけど・・・。
重複したコードが多い長いメソッドがたくさんあるプログラムよりは保守しやすいかも・・・。
Jubei
ぬし
会議室デビュー日: 2002/03/02
投稿数: 830
お住まい・勤務地: 関西
投稿日時: 2004-11-27 13:09
諸農です。

引用:

そこで疑問なのですが、20〜30stepでメソッドを記述するとメソッドの数が膨大になり
分かりにくいソースにならないのでしょうか?



20〜30の本当の意味は、ひとつのメソッドに複数機能の内容を盛り込まないようにしましょうと言うことだと思います。20〜30と言う数字が必ずしも1メソッドあたりのコードライン数として妥当であると言うことではないです。
その参考書が意味するところは、クラスの機能設計を適切に行いましょう、ということだと思います。

ちなみに、メソッド数が増えるとわかりにくいソースになるというのは、具体的にどういった部分のことを懸念されていますか?
Jittaさんも言われているとおり、現時点では適切なドキュメント(設計図)を作ることが大事になるのではないでしょうか。

余談ですが、来年予定されているVS2005にはダイアグラム表示機能が装備されます。この機能はソースコードからUMLに似た絵をIDE上で表示してくれるので、ソースコードを追いかける様なことをしなくてもクラスの見通しが良くなる便利な機能だと私は考えています。

_________________
諸農和岳
Powered by Turbo Delphi & Microsoft Visual Studio 2005

十兵衛@わんくま同盟
http://blogs.wankuma.com/jubei/
unibon
ぬし
会議室デビュー日: 2002/08/22
投稿数: 1532
お住まい・勤務地: 美人谷        良回答(20pt)
投稿日時: 2004-11-27 15:14
unibon です。こんにちわ。

引用:

五郎さんの書き込み (2004-11-27 12:23) より:
クラスはある機能を取りまとめたもので、メソッドはCで言う関数と同じと思って、
色んな参考書等を読んでいると、『メソッドは20〜30step前後で記述する』と書いてあります。


一般に、分かりやすいクラス構造にしてそのクラスにメソッドを作ると、およそ20〜30ステップにおさまる、というのは否定はしません。しかし、その逆は真ではないと思います。すなわち、20〜30ステップになるようにメソッドを作ると、プログラムが分かりやすくなるかと言えば、そうではないでしょう。
だから20〜30ステップを目標にコーディングするのは、目的と手段を取り違えているとも言えます。
たまにはひとつのメソッドが100行を超えても、それはアリだと思います。しかし、どのメソッドも100行を超えていたらやっぱりそれはちょっと...、と思います。
NAL-6295
ぬし
会議室デビュー日: 2003/01/26
投稿数: 966
お住まい・勤務地: 東京
投稿日時: 2004-11-27 16:30
単機能のメソッドだと、役割ズバリな名称をつけやすいので、結果的に自然言語に近づいて、後からみてもわかりやすいという効能もありますね。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2004-11-28 00:02
引用:

Jubeiさんの書き込み (2004-11-27 13:09) より:

余談ですが、来年予定されているVS2005にはダイアグラム表示機能が装備されます。この機能はソースコードからUMLに似た絵をIDE上で表示してくれるので、ソースコードを追いかける様なことをしなくてもクラスの見通しが良くなる便利な機能だと私は考えています。


余談ですが、Borland Together .NET Edition Ver.2を、VS.NET2003にインストールすると、VS.NET2003上でもダイアグラム表示してくれます。便利です。
_________________
Jubei
ぬし
会議室デビュー日: 2002/03/02
投稿数: 830
お住まい・勤務地: 関西
投稿日時: 2004-11-28 01:25
諸農です。

だんだん脱線してしまうのですが(^^;)
引用:

Jittaさんの書き込み (2004-11-28 00:02) より:

余談ですが、Borland Together .NET Edition Ver.2を、VS.NET2003にインストールすると、VS.NET2003上でもダイアグラム表示してくれます。便利です。



トライアルが公開された時に入手したんですが、マシンのスペックがついて行かなくて試すことすら断念したんです。。(泣)
#時期的にVSの環境も変えたくなかったというのもあるのですが。。

_________________
諸農和岳
Powered by Turbo Delphi & Microsoft Visual Studio 2005

十兵衛@わんくま同盟
http://blogs.wankuma.com/jubei/

スキルアップ/キャリアアップ(JOB@IT)