• ベストアンサー

大規模プラグラムへの取り組み方について

大規模プラグラムへの取り組み方について よろしくお願いします。 大きなプログラムへの取り組み方を教えて欲しいのです。 目的のアプリケーションを作成するために、誰かが作ったライブラリを利用することになりました。 各クラスの説明やメソッドの説明は記述してあるのですが、色んなところに派生していて、コードを追っていっても途中でわからなくなってしまいます。 私が未熟なのは重々承知していますが、このようなプログラムを理解するためのポイントやアドバイスがあれば教えて欲しいです。 何か読んだほうが良い本があるのでしょうか。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4900/10358)
回答No.2

質問が「他人の作ったライブラリを使うときの方法」なら1の方の回答の通り。 例えばCでプログラミングするとき、printfのソースを読まないでprintfを使うのが普通です。 質問が「大きなプログラムのソースを読んで理解したいときの技法」ということだと、「コードリーディング」が検索キーワードになるでしょう。そのものズバリの本もあります。http://www.amazon.co.jp/dp/4839912653

totogege
質問者

お礼

回答ありがとうございます。 色々あるんですね。 早速読んでみます。

その他の回答 (4)

回答No.5

No.4 訂正です。 メンバ関数のオーバーロード → メンバ関数のオーバーライド です。

totogege
質問者

お礼

回答ありがとうございます。

回答No.4

もともとのライブラリがどの程度きれいに書かれているかにもよりますが、C++なら、(バグ修正は別として)機能の追加や(修正ではく)変更であれば、ライブラリのソースを変更せずに対応する方法がいくつかあります。 継承による機能追加や、メンバ関数のオーバーロードによる機能変更など、そういう方面で対応する方が、(可能であれば)安全です。

noname#140925
noname#140925
回答No.3

>機能の追加や修正が必要となったときに中がわからないでは先に進まないのです。 必要になった時点で、初めて中を解析すれば、それで十分だと思いますが。 まぁ、仕事でやってるんじゃなさそうなので、趣味なら好きに中を覗いていくのも良いと思いますが・・・ コードを順に追いながら、フロー図なり、padなりを書いてみれば理解出来るのでは? ちなみに、サブルーチン等が出てきた時に、馬鹿正直にサブルーチンへ飛んで追いかけてたんじゃ理解出来ないと思いますよ。 一つのファンクションの中だけを追いかけてください。 で、そこが終わったら、そこから呼ばれていたファンクションの中を追いかける。 そうすりゃ一通りのフロー図なりpadなりが出来るから、それを見れば理解できますよね。 未熟なのを自覚しているのなら、自覚しているなりに、手間を惜しまず図にしましょう。 急がば回れ、ですから。

totogege
質問者

お礼

なるほど、ファンクション全体のイメージを理解してから細かいところまで追っていくんですね。 図を作ってみます。 ありがとうございます。

noname#140925
noname#140925
回答No.1

通常ライブラリの中まで見ないでしょ。 ライブラリなんてのは、それが何を行うための物で、引数と戻り値が何なのかが判れば良いのであって、中の処理がどうなっていようが気にする必要はありません。

totogege
質問者

補足

回答ありがとうございます。 仰るとおりなんですが、今回相手にしているライブラリは自作(私が作ったのではありませんが)で、機能の追加や修正が必要となったときに中がわからないでは先に進まないのです。