2007.11.15

共通モジュールの修正方法

最近関わっているプロジェクト(VB.NETで開発しています)では、
いろいろなプログラムが頻繁に使用するモジュールを修正する、
ということが多くなってきました。

画面のプログラム内のモジュールを修正する場合には、
あまり意識しなかったようなことまで、いろいろと考えさせられます。

一番悩むのが、引数を追加しなければならないような修正です。

さほど引数が多くない関数であれば、後ろにOptionalで追加すれば良いのですが、
既にOptionalもかなりの数がある関数や、いくつもオーバーロードされているような関数の場合、
さて、私はどのように修正すれば最適だろうか?と悩みます。

方法としては、次のようなことが考えられます。

 1.(更に)Optionalで引数を増やす。
 2.(更に)オーバーロードする。
 3.関数名を変更して、最適なものを作る。

同期や、先輩にいろいろ話を聞いたのですが、
やはり、そのときの修正内容にもよるし、個人の好みにもよるというような話でした。

私の場合は、Optionalの数が多いと、後々、渡している引数が一体何なのか
分かり難くなるため、あまりにも引数が多い関数であれば、
2か3を選択します。

既にオーバーロードがいくつもされているような関数が、
一番悩むのですが、その場合、3を選択することが一番多いです。

その理由は、一体何のための修正だったのか、どのパターンのときの処理なのか、
関数名を見れば、一目でわかるからです。

どのような場合でも、
私以外の人が、後にプログラムを見たときに、
一番分かりやすいような修正をしよう、と心がけて、方法を選択するようにしています。

しかし、実際、どのように書くのが一番良いのか、、、
方法を決定してからも、悩むこともあります。
これからも経験を積み、判断材料を増やしていこうと思います。

コメント (1)

呼び出し先に通知せず、Optionalつかっちゃうお馬鹿さんがいるから困り者ですね。
呼び出し先もリコンパイルしないと動かなくなりますよ(笑)

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

photo
matsumoto