質問: 普段は、Perl や Ruby でWEBアプリを書いています。 CGIだったり、テンプレートエンジンを使ったりしています。 しかしながら、 最近はWEBアプリケーションフレームワークを利用したことがありません。 大昔(10年以上)、Javaのフレームワーク(ベンダ製)をプロジェクトで採用し、生き地獄に堕ちた経験からか、懐疑的です。 Ruby on Rails , Mojolicious , Catalyst , Lotus などは、細かな制御を挿し込んだり、Viewを変更したり、柔軟に開発(カスタマイズ)できるものでしょうか? また、それほどに高速開発が可能なのでしょうか? まずはやってみなさい! というお叱りを賜りそうですが、ご経験などうかがえましたら、幸いです。 次の仕事は、社内の FAQサイトを構築することになります。
回答: Webフレームワークが高速開発のために作られているのは間違いないですが、 フレームワークによって、何が得意か不得意かが違いますので、 全てのケースに対応できる万能のものと考えてはいけません。 初心者でもある程度カンタンにWebアプリが作れる、という種類のものなら、初心者プログラマーが小さくて単純なWebアプリを作るのだったら高速に作れるのはほぼ確実でしょう。 しかし、特殊な要件を含んだWebアプリの構築には柔軟なカスタマイズが可能でないと難しかったりしますので、それがしにくいフレームワークでは、高速に開発できないかもしれません。 とはいえ、最近のオープンソースのフレームワークは、種類も豊富ですし、自動でできることも多くなってきましたので、10年前のようなことにはならないとは思います。 ただ、便利な機能があったとしても、フレームワークに習熟することは必要になりますけどね。