アークランプで語られていたネタ

Springの生産性
http://www.arclamp.jp/blog/archives/spring_productivity.html

世のフレームワークを素のまま使って生産性が上がらんと言っている大手SIerへの突っ込み。
(名指しで直接突っ込んでいるのは、ひがさんだったりするけど)


ごもっともですね。
ひよっこの私が物申すのは恐縮なので、以下は全てひとりごとです。
間違っているかも知れないし(汗)


フレームワークのメリットって基本的にはメンテナンス性の向上とベーシックなソフトウェアアーキテクチャの再利用にあるのだと思っています。ソフトウェアのアーキテクチャパターンが簡単に利用できるってことにメリットを見出して欲しいと個人的には思うのです。


アプリケーション構造を定義し(でも大枠だけね)、利用しているインフラ(Web,RDB)からの影響を局所化する。この2つの事が世のフレームワークを利用することで手軽におこなえるなんて素敵じゃないですか。スクラッチからWebアプリケーションを書きあげるのってバカバカしいですよね。もちろん勉強の一環でスクラッチからやるのは賛成です。


こういった局所的な最適化を行っている世の優れたフレームワークをうまく利用できていないからって、フレームワークのせいにされてしまうはちょっと悲しいことです。


フレームワークはソフトウェアアーキテクチャの一部を担っているに過ぎませんから、自分たちが取り組んでいる業務依存の箇所に対してパターンを見出し、それを新たなフレームワークとして取り込むべきだと思います。そうやってアーキテクチャを育て、洗練させていくことによりシステム全体で最適化されたフレームワークアーキテクチャが構築できるのではないでしょうか。


で、結局生産性をあげるためには何をすれば良いの?という点ですが、これはアーキテクチャを育てた上でそれに適した開発ツールを作成することだと思います。全体的に最適化していった場合、実装する範囲が狭まっているはずなので、その狭まった箇所に対してコードジェネレータなどを作成してしまえばより作業が楽になるはず?(安易すぎかな…)





なーんて偉そうに書いてしまった。。。ハハハ