自己紹介(事故紹介)
君の名は
柚口ましろう(ゆぐちましろう) ※ペンネームです
connpass: srgc_3
https://twitter.com/yu_mashirou
経験歴
- PHPの開発保守支援全般
- Laravel大好きマン
- Docker大好きマン
- 最近Flutter(Dart)をはじめました
- JavaScriptはもっと勉強したい
仕事としてやっている(た)こと
- ゲームの運用(Fuel1.8)
- 不動産関係のBtoCWebアプリの開発(Laravel5.4)
- 人材系のBtoB向けWebアプリの保守改修業務(PHP5.6)
- 不動産のCFWebアプリの開発(CakePHP3.6)
- 某社の不動産ページのフロント改修(Laravel5.2 -> 5.7 / Twig)
- iOS/Androidアプリの個人情報を取り扱う社内管理アプリの作成(Laravel5.5/VueJS)
Laravelって結局何?
公式: http://laravel.jp/
ウェブ職人のためのPHPフレームワーク。
#職人とは
Artisanのことである
Artisanって翻訳すると職人になるんですよ奥さん。
Laravelでできること
・基本的なPDO接続をLaravelが保証してくれる
・Composerに依存した共通された開発ができるようになる
・柔軟な開発ロジックを組むことが簡単になっている
・DDD(ドメイン駆動設計)やレイヤードアーキテクチャ等の深層レイヤー設計がしやすい
・常に最新のバージョンで設計を考えているため最新版への更新に影響が及ぼさないケースがある
・Laravel4から5は非常に難易度が高かったようです。
等
他のフレームワークと大差ないのでは?
Laravelでできないこと
PHPのバージョンが古い場合は諦めるしかない
→頑張ってもPHP5.6が限界
雑
Laravelが得意なこと
・ORMやクエリビルダの発行が簡単に作れる
・ルーティングの向き先をControllerと一緒に関連させて動かすことができる
・REST APIの作成が非常に簡単にできる
・UnitTestコードの作成を簡単に行えるようになっている
・自動デプロイ(本番/開発)を簡単に行える環境が作りやすい
・AWSなどの外部連携をComposerからパッケージを導入して作ることが簡単
・バリデーションが非常に楽に作れる
Laravelが苦手なこと
・開発者によって作り方が変わってしまう
→個々の思想が決められてしまう(他でも一緒かも……)
・学習コストが高い
→日本語の資料は曖昧さのある内容だったり、Illuminationで管理されているLaravelAPIの内容まで踏襲できていないから
→つまり英語力が試されやすい
→最新の環境に常に身を置き続ける必要があるため、常に情報を新にする必要はある
Laravelが苦手なこと ぱーと2
・Composerの取扱に最新の注意を払う必要ある
→compsoer install は今の環境をインストールするという意味
→compsoer update は今の最新の環境をインストールするという意味
→つまり破壊的変更が行われます。ある日突然使えなくなったりした場合は大体変更されていることでしょう。
なんか悪いことばっか多くない?
実際、Laravelの構造はわりと車輪の再発明に近いです。
なのでだめなことのほうが目立ちやすいのは仕方ないといえば仕方ないです。
じゃあLaravelの使う価値ってなによ
こちらで決めなければならない役割どころをLaravelを介することで多くのフィルター張って、自分たちがやる必要のある内容だけ抽出できるようになる
# 結論
そもそもLaravelを勉強するのはついでで、やっぱりPHPを勉強をすることは後々の強みになる
Laravelは公式サイト、ないしはLaravelAPIに自分の使いたい仕様がガッツリ書かれていたりする
→ただし英語サイト。本当に辛い
Laravelを使いたい人へ
・まずLaravelで作りたいことを考えよう
・そしてさっさと作りましょう
→LaravelにはmigrationというDB設計するにも特化したArtisanが存在します。
・Laravelは高速開発をするために存在していると言っても過言ではありません、思い立ったら開発、それがきっと職人というものなのでは(自己意見)