So-net無料ブログ作成

他の人が書いたソースコードを読んで自分なりに解析してみる [プログラミング関連]

システム開発をしていると、同じプロジェクトでソースコードを共有して開発したり、
既存のシステムの機能追加を行うために、他の人が作成したプログラムを
改良したり、今現場で使われている他の人が作成したプログラムを、
古くなり、新しい環境で動作できるようにするために、
新言語で同じ機能を満たすように書き直したりと、
他の人が作成したプログラムを読んだり、修正したりする機会が、
結構あるかと思います。

そんな時、他の人が作成したプログラムを自分なりにじっくり解析してみることを
おすすめします。


私が実践している具体的な解析の仕方をご紹介したいと思います。
(あくまでの私のやり方ですので参考程度に・・・)


解析のやり方ですが、
まず、ソースをコピーしてバックアップをとり、プログラムが壊れても
復旧できる状態にします。

次に、1ステップずつ、自分なりのコメントを
入力していき、すべてのコードにコメントを入力します。
(時間が許せばですが・・・・・)
時間が無い場合や、あまりにシステムが大きく、
すべてのコードを確認することが困難な場合は、
自分がこれから修正していく箇所の周辺にしぼって、
コメントを入力してください。


すでにコードにコメントが記述されている場合は、
そのコメントを読んで、実際の処理が本当にコメントの通り動くように
書かれているかを、確認してみてください。
コメントと食い違った動きをしている場合、
自分なりのコメントに書き換えてしまいます。

ひととおりコメントが入力し終わりましたら、
自分で入力したコメントを読みながら、
コードをひとつひとつ解析していきます。

判らない関数や文法などは、その都度、言語のドキュメントやヘルプファイル、
検索サイトなどで検索して調べていきます。

ひととおりコメントの入力とコードの解析が終わりましたら、
もう一回最初から自分が入力したコメントと処理を確認していきます。
その際、最初に解析した時のコメントが勘違いだったことがわかったりしますので、
また、コメントを修正していきます。

一通り解析が終わりましたら、もう一度コメントと処理を
確認していきます。

・・・これを全体像が見えてくるまで続けます。
(処理が理解できた部分は徐々に確認の対象からはずしていきます)


このように、コメントと処理の確認を繰り返していくうちに、
だんだんとプログラムの全体像が見えてきて、
プログラミングした人の意図や処理の流れが
見えてくるようになります。

そして、見えるようになったら、新たにコードを追加した時の
影響範囲もなんとなく見えてきていると思いますので、
適用する部分に新たなコードを書き加えていきます。

このようなやり方で行えば、コード追加による
バグの発生確率はかなり低くなるのではないかと思います。


ただ、他の人が作成したプログラムを解析するのには、
時間と根気がかなりいります。(かなり頭を使うので、疲れます)
でも、その分得られるものも大きいと思います。
(ただし、その人が使っているノウハウを
自分がすでに使用していて、何も得られない場合もありますし、
あまりに可読性が低い[読みにくい]プログラムで、結局コードを全部書き直すということも
ありえます)


他の人のコードを読むことで、自分が知らなかったり、思いつかなかったような
記述の仕方やテクニックを得る事ができます。

そして、何度も他の人のコードを読むことを繰り返しているうちに、
コードを読むスピードがかなり速くなると思います。


機会がありました時には、ぜひお試しください。


nice!(0)  コメント(0)  トラックバック(0) 

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0