2007 年 2 月 22 日 1 時 34 分

フレームワークの理解


このアーカイブは同期化されません。 mixi の日記が更新されても、このアーカイブには反映されません。


フレームワークを使うことで、開発期間を短縮し、
開発効率を高めることができる。

Struts は有名なフレームワークなので、
Web や書籍を調べればいくらでも情報があり、
全体的に、Struts の使い方や設定方法、
効率的なアプリケーションの設計方法など、
より実践的なものが数多く揃っている。

これらを読めば、「使い方」はすぐ身につくため、
すぐに開発に生かし、効率を高められるような錯覚を覚える。
これは非常に危険なことで、落とし穴が潜んでいる。

フレームワークを十分に理解しないまま安易に使うと、
実装がフレームワークの思想(≒目的)と矛盾していたり、
フレームワークとの役割分担ができず衝突していたりと、
将来的に解消が難しいトラブルに見舞われる可能性がある。

Struts は「オープンソース」である。
そのため、トラブルが起きた場合は、
ソースを読めば、多分そこに答えが書いてあるので、
何とでもなるさという考えもある。

よく、「ソースを読め」という言葉を聞くが、
それはソースコードは実装の表現であり、
それ自身が直接的な仕様書と成りえることが理由だ。

でも、ソースを読むというのは骨の折れる作業である。
よほど熟練した人でもない限り、
一般的には自分でコードを書くよりもはるかに大変なはずだ。

では、どうすればよいか。

フレームワークの力を最大限発揮するためには
まずその「思想」と「機能」を理解することだ。

思想というのは、そのフレームワークの目的を表す。
利用者がその思想を理解し、方向性を合わせなければ、
そのフレームワークを使ってもうまくはいかないだろう。

機能というのは、フレームワークの役割と処理を表す。
プログラムの設計はモジュール分割による役割分担である。
フレームワークがどの部分の役割を担っているかを理解し、
利用者の分担する部分を明確にすることだ。

ただし、こういった「思想」や「機能」の理解というのは
業務において進捗とみなされる実装作業と対極を成す。

目に見える実践的な要素ではなく、
知識を得るための学習となるため、
十分に時間をとることが難しいのだ。

なので、今回の話題ではあえて実践的なネタではなく、
Struts 自身を理解する方向で進めてみようと思う。



Copyright (c) 1994-2007 Project Loafer. All rights reserved.