【0からWEBサービスを作ろう】バックエンドで使う言語を選定しよう

このエントリーを Google ブックマーク に追加
Pocket
[`yahoo` not found]

今回はWEBサービスのバックエンドについて説明します。
WEBサービスは特定のURLにユーザーがアクセスすることで、HTMLやCSS、JavascriptなどのUIを定義した情報を返却します。
この時、URLにアクセスすることをリクエスト、サーバーが情報を返却することをレスポンスと言います。

言語の選定

サーバー上で動く言語はたくさんあります。
  • PHP
  • Python
  • Ruby
  • JavaScript
  • Java
それぞれ一長一短がありますが、面白そうなPHP・Python・Rubyで迷いました。
私は日中と夜に仕事を掛け持ちしているため、あまり学習する時間が取れないことが予想されます。
そこで、現在のプロジェクトで使用していて、自分のスキルセットにあるPHPを使うことにしました。

フレームワークの選定

前述の言語を選定した際に、実はもう少し考慮すべき点があります。それは、フレームワークです。
フレームワークとはざっくり言うと、言語仕様に沿って使いさえすれば、ある程度自由に実装できる言語に対して、適度な制約を設け、自由を捨てることで、既存の機能(リクエスト・レスポンス処理・ファイル処理・データベース処理等)を使い効率的に実装することができる仕組みのことを指します。
例えるなら、ボールを使って遊ぶときに、サッカーというフレームワークを利用すると手を使う自由を捨てることになりますが、ボール遊びにサッカーのゲーム性が生まれます。また、サッカーというフレームワークのルールを理解することでどのような人でもサッカーを楽しむことができます。
今回使う、PHPには下記のフレームワークがあります。
  • Laravel
  • CakePHP
  • Codeigniter
  • FuelPHP
こちらも一長一短、流行り廃りがあります。
やはり、学習する時間が少ないため、仕事で使ったことのあるLaravelを使用することにします。

まとめ

今回はバックエンドで使用する言語をPHP、フレームワークを選定を行いました。
この選定は私の個人のスキルセットと時間を考慮して行ったものなので、実際にはスキルセットと時間、今後の展望(スキルセットを広げるのか深めるのか)を踏まえて行いましょう。