前回の記事でWebフレームワークとはなんなのかについて理解度が深まりましたね。Webフレームワークの概要について理解できたら、次はWebフレームワークの種類について学習しましょう。
Webフレームワークには種類があり、言語によって使えるものが異なります。そのため、どの言語にどんなフレームワークが使えるのかを理解することが重要です。
適切な言語選定をして、言語にあったフレームワークを利用しましょう。この記事では、言語ごとにオススメのフレームワークについてご紹介します。
オススメのWebフレームワーク
Webフレームワークはプログラミング言語ごとにそれぞれ存在し、特徴なども様々です。
ここではその中でも特に有名なオススメのものを紹介します。
Rubyのフレームワーク「Ruby on Rails」
SNSのようなサービスを作る際によく使用される「Ruby on Rails」は、「Ruby」というプログラミング言語のWebフレームワークです。
Webサービス開発をする場合、「Ruby」=「Ruby on Railsを使った開発」を指すことがほとんどです。ベンチャー界隈で最も採用されているWebフレームワークといっても過言ではないでしょう。
Ruby on Railが人気な理由
Railsの人気の大きな理由は3つに分けられます。
- Rubyライブラリが豊富であること
- プロトタイプ(試作のアプリ)を作るスピードが早いこと
- Webプログラミングに対する理解を早められること
特に2つ目の開発スピードが速いという点は、ベンチャー企業で多用されている点でうなづけます。Ruby on Railsの登場当初、開発者のデイビッド・ハイネマイヤー・ハンソン氏は「Javaの10倍の生産性がある」と謳っていたほどです。
Ruby on Railsの導入事例
実際に導入されているサービス事例としては、CookPad、Retty、Wantedlyなどが挙げられます。
PHPのフレームワーク 「CakePHP」
CakePHPは「あらゆるレベルのPHPユーザが、素早く快適に開発を行える事」を目的として産み出されたPHPのWebフレームワークです。構成や開発手法などRuby on Railsの影響を強く受けています。
環境構築も比較的カンタンで、シンプルなWebフレームワークです。そのお手軽感から開発するWebアプリの規模が比較的小さいところで人気となっています。
現状、世界規模で「最も多くのWebアプリケーション」に導入されており、高いレベルでユーザの要求に応える事ができる機能を備えています。
PHPにはいくつか人気なフレームワークがありますが、小規模に始めるならCakePHPはオススメです。初心者が導入しやすいようにサーバーの設定変更や動作環境の整備がほとんど必要ないように作られています。
最近では、古いものをRailsに置き換えるという動きもありますが、開発案件等はまだまだ多い状態です。
Pythonのフレームワーク「Django」
Djangoとは、Pythonで作られているWebフレームワークです。Djangoを使うことで、高品質なWebアプリケーションを簡単に、少ないコードで作成することができます。
シンプルなWebアプリであれば、数分で作ってしまうことも可能です。また、DjangoではInstagramやPinterestなどのよく知られたWebアプリでも動いています。
JavaScriptのフレームワーク 「AngularJS」
AngularJSは「JavaScript」で出来たWebフレームワークです。見た目の動きをきれいに作る為に使用されます。
例えばSPA(Single-page application)と呼ばれる、「ページを移動しなくてもなめらかにページ内のコンテンツが現れるような1ページで完結するアプリケーション」の開発を行う時などに採用されます。
AngularJSはRuby on Railsのように比較的多機能で大きなフレームワークなのですが、データの管理(サーバサイドの動き)をRuby on Railsで行い、見た目(フロントサイドの動き)に関するものをAngularJSで作りこむという複数のフレームワークの共存という使い方も存在します。
何かひとつのWebフレームワークを使えるようになったら技術者としてのゴールというわけではありません。
CSS/JSのフレームワーク 「Bootstrap」
「Bootstrap」は「Webデザインフレームワーク」と呼ばれ、CSS/JavaScriptから構成されています。Twitter社より提供されるフレームワークになるため、Twitterのようなフラットなデザインを簡単に作成出来てしまいます。
また「レスポンシブデザイン」という様々な画面サイズ(PC・タブレット・スマホ)に対応したフレームワークになるため、デザインが苦手だというエンジニアでも綺麗なサイトを簡単に作成出来るという点でも重宝されています。
テンプレートも無料のモノから有料のモノまで存在するため、色合いや字体などを入れ替え、イメージに合わせて作成することも可能です。
この記事の復習
短期間で質の高いWebアプリケーション開発するための方法として、Webフレームワークをご紹介しました。Webフレームワークには種類があり、言語によって使えるものが異なります。そのため、まずはどの言語にどんなフレームワークが使えるのかを理解することが重要です。
今回は各言語のオススメのWebフレームワークをご紹介しましたが、その中でも初心者にオススメしたいWebフレームワークについて次の記事で解説します。