必要なポイントを教えてください。フレームワークの解析に必要な観点とか
を教えてください。
参考になるか分かりませんが、自分の場合ですと、まずはオブジェクト間の関係を把握することだと思います。クラス(またはオブジェクト)間の継承関係をツリーにしてみるのがよいと思います。
よく設計されてフレームワークであれば、あとはプロパティとメソッドを整理すれば、その名前から自ずとそのクラスの役割や機能が見えてくると思います。作りの悪いものはソースコードを追いかけて泥臭い作業が必要でしょうが...
あとは関連する機能ごとにグルーピングするとか、呼び出し関係を整理するとか、でしょうか。
urlはダミー
もし、いいプログラムならば
そのオブジェクトの持つ役割がきれいに分かれているはずです。
オブジェクトの存在する意味を手繰って行けば
いつの間にか全体が分かってくるはずです。
もしダメなプログラムならば
オブジェクトの権限が散らばって存在したり
無意味なソースが変なオブジェクトの中にあったりするので
地味に読んで行くしかありません。
いいソースが読めない場合、
オブジェクトの意味を理解していなかったり、
デザインパターンの理解が足りないかもしれません。
オブジェクト指向というのは("思考"では無いですよ)
設計対象を、オブジェクトを基準にして考えましょう、という考え方です。
ですので、設計や解析を行う際には、まず
(1)全てのオブジェクトを列挙して、
(2)オブジェクト間の関係を整理する
ことから始めると良いです。
ソースコードが長い場合は、ソースコードを直接読む前に、ツールを使って大まかな概要を調べる方法がおすすめです。たとえばツールとして doxygen というソフトウェアを使うと、ソースコードを解析して(1),(2)の処理を行い、結果をドキュメントとして出力してくれます。ドキュメントには図も含まれますので、図を見ながら上記の(2)の作業を行うことで、大幅に作業効率があがります。
また、設計や解析を行う際には"UML"や"デザインパターン"という考え方を踏まえておくと便利です。
UMLとは設計を記述するための言語で、デザインパターンとはよくある設計パターンをまとめた用例集です。
http://ja.wikipedia.org/wiki/%E7%B5%B1%E4%B8%80%E3%83%A2%E3%83%8...
http://ja.wikipedia.org/wiki/%E3%83%87%E3%82%B6%E3%82%A4%E3%83%B...(%E3%82%BD%E3%83%95%E3%83%88%E3%82%A6%E3%82%A7%E3%82%A2)
UMLやデザインパターンを知っておけば、たとえば他の人に設計方針や解析結果を説明する際に「この処理はシングルトンパターンです」と一言言えば済み非常に効率が良いです。
オブジェクト指向とフレームワークの解析は別の話です。
コメント(0件)