「Laravelを使って何ができる?」
「Laravelで作られたサイトやサービスが知りたい!」
このように、Laravelに興味があり、学習を始めようと考えている方も多いのではないでしょうか?
LaravelはPHPのフレームワークとして絶大な人気を誇っており、できることも幅広く汎用性が高いという特徴があります。
Laravelは主にWeb開発に用いられるため、Webエンジニアが使うフレームワークになります。
そこで今回は、以下の内容について解説していきます。
- Laravel(ララベル)とは
- Laravelでできること
- Laravalのメリット
- Laravelのデメリット
- Laravelで作られたサイトやサービス
- Laravelを導入する手順
本記事を読み終えればLaravelがどのようなところに使われるのか理解できます。これからLaravelを学ぼうと考えている方にも参考になるかと思われます。
開発会社とWeb系エンジニア向けプログラミングスクールを運営する弊社が、Laravelについて詳しく解説しますので、ぜひ参考にしてみてください。
Laravel(ララベル)とは
ここでは、Laravelとは何なのか?について詳しく解説していきます。
- LaravelはPHPのフレームワーク
- Laravelの歴史
- CakePHPとの違い
「名前は聞いたことがあるけれど、全くどういうものか分からない」という方は、まずここで確認しておきましょう。
LaravelはPHPのフレームワーク
Laravelは、プログラミング言語「PHP」のフレームワークであり、世界的な人気を誇っています。
プログラムを、簡単かつ素早く実装するために必要なクラスやライブラリなどの集まりのことです。
フレームワークがあることで、一からプログラムを記述する手間や工数が省けるため、経験が浅いエンジニアであっても大規模なアプリケーション開発が可能です。
PHPのフレームワークは数多く存在し、今まではCakePHPが上位を獲得していましたが、その利便性の高さから、現在ではLaravelが一番人気のフレームワークとなっております。
Laravelの歴史
Laravelは、2011年に登場したPHPフレームワークで、Symfonyをベースに開発されました。
Symfonyは、2005年に登場したPHPフレームワークです。
Symfonyは、今では開発エンジニア人口が少ないものの、多くのシステム開発で使われてきました。
そんな開発実績が豊富なフレームワークがベースとなっているため、Laravelも高い信頼性を獲得しています。
CakePHPとの違い
LaravelとCakePHPは、どちらもPHPのフレームワークですが、両者には明確な違いが存在します。
- Laravel:柔軟な対応が可能であり、大規模のアプリ開発が行える
- CakePHP:規約ベースで素早い開発が可能
CakePHPには、ファイルやクラス名、プラグインなどの規約が多く存在するため、コードが安定しており素早い開発が可能です。
柔軟な対応はできませんが、初学者でも扱うことができるので、小~中規模の開発に向いています。
一方、Laravelには規約があまり存在しないため、自由度が高くさまざまな機能への拡張性が高いです。また、多くのエンジニアが使う人気のフレームワークのため学習しやすいです。
Laravelでできること
ここでは、Laravelでできることについて解説していきます。
- Webサイト制作
- SNSの開発
- 掲示板や口コミ投稿サイトの開発
- 業務システムの開発
Laravelは、単体で開発できるだけの豊富な機能を備えているため、できることも多いです。
それでは、一つひとつ見ていきましょう。
Webサイト制作
Laravelを使えば、PHPで一から構築する必要がなくなるため、Webサイト制作が効率よく行えます。
具体的には、以下のようなものをイメージするとよいでしょう。
- コーポレートサイト
- ブランドサイト
- プロモーションサイト
- サービスサイト
- ECサイト
- ランディングページ
- オウンドメディア
- リクルートサイト
このように、様々な種類のページやサイトを簡単に作ることができます。
SNSの開発
Laravelは、TwitterやInstagramのようなSNS開発を行うことも可能です。
SNSに必要とされる主な機能は以下の通り。
- アカウント作成
- ログイン・ログアウト
- テキストや画像の投稿
- お気に入り機能
- 登録機能
Laravelを使えば、こういった機能の実装が簡単にできます。
プログラミング言語としては、PythonやRuby、Scalaなどが用いられますが、フレームワークとしては、LaravelやRuby on Rails、Djangoなどが採用されるケースが多いです。
掲示板や口コミ投稿サイトの開発
Laravelは、掲示板や口コミ投稿サイトの開発も可能です。
機能としては、名前やコメントの入力、掲示板表示などが必要となるため、文字数チェックや同時書き込み処理、セキュリティ対策などが求められます。
これらを実装するとなると、HTML/CSS・PHP・JavaScriptが必要となりますが、Laravelを使えば簡単に解決できます。
業務システムの開発
Laravelは、企業が利用している業務システムの開発を行うことも可能です。
具体例としては、以下のようなものが挙げられます。
- 会計管理システム
- 在庫管理システム
- 顧客管理システム
- 勤怠管理システム
- 給与計算システム
上記のような業務システムは、人事や販売、経理で情報を一括管理するのに役立ちます。
書類作成や、商品やお金の管理は、数が多くなればなるほどコストがかかってしまうため、業務効率化を図ることが重要です。
Laravelのメリット
ここでは、Laravelのメリットについて解説していきます。
- PHPのフレームワークとして最も人気がある
- 情報量が多い
- 学習コストが低い
- 機能やプラグインが豊富
- 自由度や拡張性が高い
- MVCモデルのため分業しやすい
学習する上でメリットを把握しておくことは重要ですので、何がすごいのかイマイチ分かっていない方は、ここで抑えておきましょう。
PHPのフレームワークとして最も人気がある
Laravelは、PHPのフレームワークとして人気ですが、JavaScriptやPythonなどの主要言語のフレームワーク全体の中でも高い人気を誇ります。
マイナーなフレームワークですと、現場が変わるたびに、その現場で採用されているフレームワークの学習から始める必要がありますが、Laravelは多くの現場で採用されているため、そういった懸念が少ないのがメリットです。
新しいバージョンへのアップデートも続けられているので、Laravelを深く学んでいくことができます。
情報量が多い
前述した通り、Laravelは人気のフレームワークであるため、Web上に情報が多く、何かわからないことがあっても調べやすいのがメリットです。
フレームワークの中には、英語で書かれた情報しか見当たらないものもありますが、Laravelは日本語の情報が多くあります。
ネット上には、Laravelの公式ドキュメントの日本語訳もあるため、他のフレームワークと比べても効率的に学ぶことが可能です。
教材が豊富にある
PHP自体が非常に分かりやすい言語なので、そのフレームワークであるLaravelも、それほど難易度が高いものではありません。
また、日本語の教材やネットの情報も多くあるため、他のフレームワークと比べても学習ハードルや学習コストは低いと言えます。
- なるべくお金をかけたくない
- 時間がかからないものがいい
- 難しいのは苦手
特に、このような方にはピッタリでしょう。
機能やプラグインが豊富
Laravelは、機能やプラグインが豊富なので単体で開発が行えます。
- マイクロフレームワーク:必要最低限の機能のみ備えている
- フルスタックフレームワーク:一つで開発に必要な全機能を備えている
Laravelは、フルスタックフレームワークなのでWebアプリケーション開発に必要な機能を全てカバーすることが可能です。
具体例としては、以下のような機能が挙げられます。
- ルーティング
- コントローラー
- ビューORM
- パスワードやOAuthによる認証
- イベント
- ユニットテスト
さらに、Laravelは開発も活発に行われているので、今後新機能が追加されることも期待されます。
自由度や拡張性が高い
Laravelは、CakePHPのようなフレームワークとは違い規約がないため、自由度や拡張性が高くなっています。
規約があると、それ通りにプログラミングしなければなりませんが、Laravelは規約に従う必要がないので、エンジニアの自由に実装することが可能です。
具体的には、ソースコードを配置する際のディレクトリ構成を自由にできる、といったように、開発の幅や創造力が広がります。
MVCモデルのため分業しやすい
Laravelは、MVCモデルを採用しているため、分業しやすいというメリットがあります。
MVCモデルとは、Model(データ処理)・View(画面表示)・Controller(全体制御)の3つに分けて、ソフトウェアの処理を行う開発方法です。
機能ごとに分けることで、処理の内容や記述箇所が明確になり、スムーズな開発が可能となります。
特に、複数人で開発する場合は、役割ごとに作業分担することが可能です。
また、スタートアップやWeb系で非常によく使われているRuby on Railsを学んでいる
Laravelのデメリット
ここでは、Laravelのデメリットについて解説していきます。
- 処理速度があまり速くない
- コードが複雑化しやすい
人気があるとは言えメリットばかりではないので、デメリットも把握した上で学習すべきかどうか判断しましょう。
処理速度があまり速くない
Laravelは多機能ですが、処理速度はあまり速くなく、むしろ遅めであるのがデメリットです。
処理速度が遅い主な理由は、以下の通り。
- 自由度が高いがゆえに処理に時間がかかる
- 多くのPHPファイルを読み込んでメモリに展開する
色々な機能を実装できる反面、処理に時間を要するため、スピードが重視される開発には向いていないと言えます。
コードが複雑化しやすい
Laravelは、他のフレームワークと比べて自由度が高い反面、コードが複雑化しやすいというデメリットがあります。
CakePHPのように規約に縛られていないため、エンジニアは思うがまま自由にコードを書くことができます。
これはメリットでも挙げましたが、同時にデメリットでもあります。
一人ひとりコードの書き方がバラバラになれば、可読性や保守性が低くなり、コードが複雑化していくため、事前に書き方の統一が必要です。
Laravelで作られたサイトやサービス
ここでは、Laravelで作られた代表的なWebサイトやサービスをご紹介します。
- 時事通信ニュース
- サッカーチームアーセナルのイベントサイト
- ニュース系サイト「StarTribune」
- 天鷹酒造オンラインショップ
- AI自動翻訳サービス・機械翻訳「ヤラクゼン」
- Iosselliani H.P.FRANCE公式サイト
- NPTA 日本パーソナルトレーナーズアカデミー
- M&P Packaging
Laravelは、新しい企業で取り入られている傾向があるので、誰もが知っているようなWebサイトやサービスは少ないのが現状です。
Laravelを導入する手順
ここでは、Laravelを導入する手順について解説していきます。
- PHPの開発環境をインストール
- Composerのインストール
- Laravelのインストール
Laravelは、上記3ステップで導入できますので、ぜひ参考にしてみてください。
PHPの開発環境をインストール
まずは、PHPの開発環境をインストールしましょう。
今回は、PHPの開発環境として人気で、初めての方でも簡単にインストールできる「XAMPP」で解説します。
- こちらにアクセスし、OSに応じたファイルをダウンロード。完了したら実行する。
- Startup画面にて「Next」をクリック
- PHPにチェックが入っていることを確認して、「Next」をクリック
- インストール先のフォルダを選択し、「Next」をクリック
- 詳細を確認する場合は、チェックを入れたまま「Next」をクリック
- 最終確認画面にて「Next」をクリックして、インストールを実行
Macの場合は、「OS X向けXAMPP」を選択し、ダウンロードしたファイルをドラッグ&ドロップでアプリケーションに追加すれば完了です。
Composerのインストール
次に、Composerのインストールを行います。
- こちらにアクセスし、「Download」をクリック
- 「Composer-Setup.exe」のリンクをクリック
- ダウンロードしたファイルを実行する
- インストールオプションの選択画面にて、「Next」をクリック
- PHP実行ファイルを選択し、「Next」をクリック
- プロキシを利用する場合は設定するが、利用しない場合は何もせず「Next」をクリック
- インストール確認画面にて問題なければ「Install」をクリックして終了
Macでインストールする場合は、ターミナルで操作を行います。
- Homebrew(パッケージマネージャー)がインストールされていない場合は、以下のコマンドでインストールする
$ /usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)” - 次に、OpenSSLがインストールされていない場合は、以下のコマンドを実行する
$ brew install openssl - 次に、以下のコマンドでComposerをインストールする
$ curl -sS http://getcomposer.org/installer | php - 続いて、パスを通すために以下のコマンドを実行する
sudo mv composer.phar /usr/local/bin/composer - 最後に、バージョンを確認して、以下のコマンドが表示されればインストール確認は終了
composer –version
Laravelのインストール
最後に、Laravelのインストールを行います。なお、WindowsとMacの手順は同じとなります。
- ターミナルにて、以下のコマンドを実行する
$composer create-project laravel/laravel –prefer-dist Sample
※最後のSampleの部分はプロジェクト名なので、任意の名前となります。 - “mkdir(): Permission denied”というエラーが出る場合は、権限のエラーが起こっているため、初めに「sudo」を付けてコマンドを実行しましょう。
- 5分ほど待ってインストールが完了したら、作成したプロジェクトに移動し、以下のコマンドを実行する
$ php -S localhost:8000 -t public - Laravelがブラウザで確認できるようになるので、③で指定した”localhost:8000″とブラウザに入力する
- Laravelのページが表示されます
以上で、Laravelのインストールは完了です!
まとめ
今回は、Laravelでできることを中心に、導入方法まで解説しました。
- PHPのフレームワークとして世界的な人気を誇るLaravelは、自由度が高く柔軟な対応ができるのが特徴である
- できることとしては、「Webサイト・SNS・掲示板や口コミサイト・業務システム」の開発が挙げられる
- 情報量が多くて学びやすく、3ステップで導入できるため、初心者にも向いている
Laravelは、PHP同様に分かりやすいフレームワークで、自由度や拡張性が高いため、大規模なアプリケーション開発にも用いられます。
情報量が多く学習コストも低いので、これからWeb系の道に進もうと考えている方は選択肢の一つに入れるとよいでしょう。
また、Web系企業に入社を目指す方にはLaravel以上にRuby on Railsの学習をおすすめします。理由は、Ruby on Railsを扱う企業の方がLaravelを扱う企業よりも多く、モダンな技術を採用するWeb系企業が多い傾向にあるためです。
弊社では、開発現場が求めるエンジニアになるためのプログラミングスクール「RUNTEQ」を運営しております。この記事を読んで少しでもWebエンジニアに興味を持った方は、ぜひ無料のキャリア相談会へ足を運んでくださいね。