デザインフレームワークについて
開発のひな型としてのフレームワークで最初に出てきたのはWeb開発のサーバー側のフレームワークだった。もちろん最初はフレームワークと呼ぶほど全体がカバーされていなくて、どちらかというとミドルウェアのようなものだった。それらを開発内容に合わせて組み合わせて業務用のフレームワークを作る業務フレームワークの設計が必ずあった。StrutsやらJSPやらiBatisなどクライアント側はほとんどブラウザだったがプラグインのようなものを利用したりした。その後JavaScriptなどのブラウザで動くスクリプトなどが使われるようになりAJAX技術で一気に処理がクライアント側に移されるようになった。そのころはクライアント側はやはりライブラリ程度のものしかなく、ひたすら自分たちでクライアントロジックを考えて作っていたので開発力の差が大きかったし、時間もかかった。
デザインについては、別にデザイン部隊が居たりして、任せることが多かったが、近年開発者が自分でデザインまでしなければならないケースが増えて、私なども苦手ながら自分でデザインすることがほとんどになってきた。
ここへきて、デザインのフレームワーク化が進んで、Bootstrapをはじめとしていろいろなものが出てきた。デザインフレームワークまたはCSSフレームワークと呼ばれるが、CSSとJqueryを中心としたJavaScriptで構成されたフレームワークで、アニメーションはじめ動作まで含めたフレームワークで上手く使えばコーディング量を大幅に削減することが出来る。
最近私が注目しているのは、マテリアルデザインと呼ばれるGoogleが提唱するデザインパターンで、平面ではなく立体的で物理的に見えるようにできていて、直感的に操作できるように考慮されている。
今私はこのデザインパターンをとるMaterializeというフレームワークを使ってシステムを構築しているが、デザイナーじゃなくても綺麗にデザインできるし、動作などを一々自分で書かなくてもよいので楽に開発できる。HTMLも非常にシンプルな構成にできるのでメンテナンスもしやすいし変更も楽にできる。Thymeleafなどのテンプレートエンジンとも相性がよさそうでモックを作ってそこからそのままソースとして使える。便利になったものです。