フレームワーク
「枠組み」や「骨組み」「構造」といった意味があり、アプリケーションを開発する際、一般的な機能を枠組みとして用意するという考え方。開発者はその枠組みに個別の機能を実装する。「アプリケーションフレームワーク」とも呼ばれる。
フレームワークは機能が充実したものから、機能が絞り込まれた軽量のものまで、多種多彩なタイプが提供されている。Webアプリケーション作成のための「ウェブアプリケーションフレームワーク」やウェブサイトを作成するための「CSSフレームワーク」、アプリケーションの機能や性能、操作性を向上させるための「ユーティリティ系フレームワーク」などがある。
フレームワークの最大のメリットは、アプリケーションをゼロから開発する必要がないこと。コーディングの手間が省け、経験が浅いエンジニアでも作成できるので生産性が向上する。開発期間の大幅な短縮が可能であり、コストを抑えることもできる。エンジニアが個々のやり方でプログラミングを行うと、ソースコードがバラバラになってしまうが、フレームワークを使えば、コードの統一を図れ、バグの発生を抑えられる。
デメリットは、独自のカスタマイズを施したい場合、規約に従って一部を変更できるが、その範囲には限界があること。プログラミングの自由度が制限されるのだ。また、フレームワーク特有のソースコードを覚える必要もある。フレームワーク導入に合わせた研修の実施も考慮しなければならない。
(青木逸美)