Why
これまでWEBアプリケーションの開発はやらずにBIツールを利用しようと思っていたのですが、
BIツールではより細かい調整やデータの入力などが実現できないことがあった
バックエンドをメインでやっていきたいが、WEBアプリケーションがどのように動いているのか泥臭いところを知りたい
といったことがあり、実際に触ってみようと思いました。
そこで開発言語とフレームワークについて調べたところ、PHP
+Laravel
, Ruby
+Rails
, Python
+Django
では初心者目線ではそれぞれに大差はないように感じましたので、簡単なアプリを作って試そうという内容です。
その第一回としてPHP
+Laravel
についてインストールまでやってみました。
Laravelって?
PHPにて書かれたオープンソース(MITライセンス)のWebアプリケーションフレームワークのようです。
PHPは結構自由に書ける言語のようですが、Laravelなどのフレームワークを使うことでコードの管理がしやすくなるといったメリットがあるようです。
特徴は?
wikipediaを見ると以下のようなことが書かれてました
https://ja.wikipedia.org/wiki/Laravel
LaravelはフルスタックのWebアプリケーションフレームワークであり、ルーティング、リエクスト処理、ビュー、クエリビルダー、ORM(オブジェクト関係マッピング)、DI(依存性の注入)、認証、ユニットテスト、ブラウザテスト等、現代的なフレームワークが要求される一通りの機能を実装している。またコンソールからArtisanコマンド(Ruby on Railsのrailsコマンドに相当)を利用することにより、コントローラやビューの雛形の作成、データベーススキーマの作成等、一通りの作業を行うことができる。また、ユーザのオリジナルのArtisanコマンドを作成したり、コントローラ等の通常のコード内からArtisanコマンドを呼び出すといったこともできる。
ほかのPHPフレームワークとの違いは?
ほかにもPHPフレームワークはあるようですが、Google Trendsを見てもLaravelが圧倒しているようです。
技術 | 初版 |
---|---|
CakePHP | 2005年4月 |
CodeIgniter | 2006年2月 |
Symfony | 2007年1月 |
Laravel | 2011年6月 |
FuelPHP | 2011年8月 |
ここでやること
- Laravelのインストール
- (事前準備) XAMPPのインストール (comporserで必要なPHPをインストールするため)
- (事前準備) comporserのインストール
- (事前準備) Laravelのインストール
- 少し触ってみる
- プロジェクト作成
- Hello Worldページを作成
- URLの階層に
helloworld
を追加 - プロジェクトをローカルPCにデプロイ
- アクセスする
- プロジェクト作成
インストール
環境
- windows 10
以下の公式ページを参考にしました。
Installing Laravel
LaravelのインストールにはComporserを使用します。そのcomporserにはPHPのインストールが要件として必要です。したがって PHP(XAMPPにて)インストール
→Comporserインストール
→Laravel
という手順でLaravelを構築します
XAMPPをインストールする
Composerをインストールする
途中でPHPのパスを求められますので、<YOUR_XAMPP_DIR>/php/php.exe
(デフォルトはC:\xampp\php\php.exe
)入力します。
Laravelのインストール
Via Laravel Installer
以下のコマンドを実行
composer global require laravel/installer
少し触ってみる
プロジェクトの作成
laravel new blog
Hello Worldページを作成
resources/views/welcome.blade.php
をコピーし、resources/views/helloworld.blade.php
となるように保存する
その後内容を変更する
内容は単純で、Hello World
と表示するようにしたもの
・・・
<body>
<div class="flex-center position-ref full-height">
<div class="content">
<div class="title m-b-md">
Hello World
</div>
</div>
</div>
</body>
・・・
URLの階層にhelloworld
を追加
routes/web.php
のファイル内の末尾に、以下の記述を追加する
Route::get('helloworld', function () {
return view('helloworld');
});
プロジェクトのデプロイ
以下のコマンドを実行し、localhostに8000ポートでホストさせる
php artisan serve --host localhost --port 8000
アクセスする
以下のURLにアクセスすると、画面が表示される
所感
とりあえず構築はサクッとできました
LaravelはデフォルトでAWSのサービス(SQSやS3など)が利用できるようで、そのあたりも試せるような比較ができるとよいなと思っています。
またそもそも話として、WEB初学者なのでMVCやらなんやら覚えることが多そうです。