X

Laravelって?そもそもフレームワークとは?初心者向け解説

この記事は約 6 分で読めます。

PHPでプログラミングをするのに、今無視できない存在が、「Laravel」です。

世界的に、ここ数年でぐんぐん使用者が増加中。

日本でも今や最大シェアを誇るPHPのフレームワークで、他の追随を許しません。

教えてカエル
ふ~ん、なんだかすごそう。でもそもそもフレームワークって何?
YUMA
フレームワークはね、システム開発の難易度をぐっと下げてくれるとっても便利なツールなんだ。
覚えておいて損はないから、一緒に学んでいこう!
教えてカエル
は~い!

Laravelとは?

フレームワークの説明の前に、今もっとも勢いがあるLaravel(ララベル)を紹介しておきますね。

Laravel基礎情報

  • PHPフレームワークの一つ
  • 開発者は、Taylor Otwell
  • 2011年に発表

Laravelの人気ポイント

  • 記述ルールがカッチリしていて、コードが美しい
  • 他のフレームワークと比べて分かりやすく、書きやすい
  • 色々なフレームワークの良い所を吸収して作られた
  • ライブラリが豊富
  • 頻繁に機能が追加される

シェアの伸び方が凄い

上のグラフは、過去5年間の主なPHPフレームワークの検索トレンドです。

これを見ると、ほぼ同じくらいにばらけていた他のフレームワークを、Laravelがぐんぐん右肩上がりに追い抜いて行ったのが見られますね。
1位になったのは2014年の夏でしょうか。

 


こちらは、日本での検索トレンド。

CakePHPが1強状態だった所、2016年の終わりに並んで、2017年からはLaravelが逆転していますね。

YUMA
今からPHPのフレームワークを使うなら、Laravel一択ですね。
ここからはこのLaravelを始めとした「フレームワーク」とは何なのか、説明していきます。

フレームワークとは

フレームワークは、日本語にすると「骨組み」。
プログラミング言語を効率よく、管理しやすくするためのテンプレートを提供してくれるツールです。

骨組みさえしっかりしていれば、あとは好みの肉付けをするだけでいいので、作業がぐっとラクになるんです。

ぜひ使いこなしたいですね。

フレームワークのメリット

フレームワークを使うメリットは、大きく分けて以下の3つ。

コード記述量を減らせる

一番のメリットは、何と言っても書くコードがぐっと減ること。

よく使われるコードは既に用意してあるので、手順に沿って作業していけば、おおまかな形が出来上がります。

そこから肉付けの部分だけに集中してコーディングをすることができるんです。

さらに、型やキーワードの予測変換機能があるものを使えば、より時間短縮に。

スピーディーさが求められるWebアプリケーションの開発にもってこい!

セキュリティに優れる

自分で一から作り上げるのとは違い、フレームワークを使えばセキュリティ対策も既に用意されているものを使うことが出来ます。

きちんとセキュリティ対策するにはしっかりした知識が必要。

その点フレームワークを使えば、セキュリティ対策に精通したエンジニアが書いたコードを再利用することができるので安心なんです。

これはありがたいですよね。

チーム作業でバグが起きにくい

PHPなど、記述の自由度が高いプログラミング言語だと、人によって記述のクセが出やすくなります。

1人でやる分にはいいですが、複数人で大きなプロジェクトを進める時が問題。
記述方法のムラが読みにくさを呼び、バグに繋がってしまいやすいんです。

フレームワークは「基礎的な仕組み」を作っておくものなので、そのルールに沿って開発を進めることになります。

そのため、人による大きな記述ムラがでにくくなり、コードの可読性が上がるんですね

フレームワークのデメリット

もちろんメリットばかりではありません。
デメリットもしっかり確認しておきましょう。

学習コストがかかる

上で「記述のムラがでにくいメリット」を紹介しましたが、これは逆にデメリットにもなり得ます。

決まった記述方式に沿う必要があるので、言語のルールとはまた別に、そのフレームワーク特有のルールを覚える作業が必要になるんです。

せっかく取っつきやすい言語を選んでも、フレームワークのルールを覚えるのに手間取ると少し損した気分になるかもしれませんね。

初心者には敷居が高い

PHPはオブジェクト指向型プログラミング言語ではないですが、LaravelやcakePHPなど、主流なPHPフレームワークはオブジェクト指向の概念を取り入れており、プログラムの流れが複雑になります。

カプセル化」「継承」「ポリモーフィズム」といった概念を理解する必要が出てきて、初心者だと少し戸惑ってしまうかもしれませんね。

まとめ

YUMA
どうかな、カエルくん?フレームワークって何か分かった?
教えてカエル
え~っと、フレームワークは「開発をスピーディ・安全に進められるミラクルツール」ってことでいいのかな?
教えてカエル
で、初心者には優しくない…と。
YUMA
まぁ確かにそういう部分もあるんだけど、ちゃんと学べば大丈夫!
誰だって最初はみんな初心者なんだよ。