Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Web開発実務未経験者がLaravelをかけるようになるまでの話
Search
Shimabukuro Megumi
March 06, 2019
0
400
Web開発実務未経験者がLaravelをかけるようになるまでの話
Shimabukuro Megumi
March 06, 2019
Tweet
Share
More Decks by Shimabukuro Megumi
See All by Shimabukuro Megumi
輪読会でつなぐフルリモート環境のコミュニケーション
shimabukuromegumi
0
34
同窓会
shimabukuromegumi
0
32
LaravelのOSSの プロジェクトを読んで お勉強してみてる話
shimabukuromegumi
0
1.7k
PHP/Laravelビギナーがマゴコロ込めてWebアプリケーションを作ってみた話
shimabukuromegumi
0
87
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Thoughts on Productivity
jonyablonski
67
4.3k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Six Lessons from altMBA
skipperchong
27
3.5k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
6.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
31
2.7k
How GitHub (no longer) Works
holman
310
140k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Bash Introduction
62gerente
608
210k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
Transcript
Laravelをかけるようにな るまでの話 2019.03.06 Laravel MeetUp Okinawa 島袋恵(シマブクロメグミ) \Web開発実務未経験者が/
今日話をしようと思ってること - Web開発実務未経験者が、初めての実務経験をLaravelから 積み始めて、大変だったことや学んだことの話 - なんで、この話をしようと思ったかというと、ここ数ヶ月の間(200h ぐらい)、Laravelでお仕事をさせていただく機会があって、そこ で学んだことや考えたことを話したいと思ったのがきっかけです。 - よろしくお願いします
自己紹介 •- 島袋 恵(シマブクロメグミ) •- Twitter • - @20092014 •-
Webアプリケーションエンジニア 1年生 •- 気になる/好き な技術領域 • - Laravel • - クラウド/インフラ
もくじ - これまでのステータス - Laravelを書くようになったきっかけ - Laravelを使う中で(実務経験)ぶつかったたくさんの壁 - 振り返り/まとめ
これまでのステータス - コードベースプログラミング講座 (2018.01 - 2018.02) - Rails Tutorial (2018.03
- 2018.06) - Rails オリジナルアプリ制作 (2018.07 - 2018.09) - Laravel オリジナルアプリ制作 (2018.10) - Laravel開発(2018.11 - いま)
Laravelを書くことになった きっかけ - Laravel でお仕事する機会をいただいたのがきっかけ
Laravelを使う中で(実務 経験)ぶつかったたくさんの壁 - Laravelというか、初めて実務で開発やってみてぶつかった壁かもしれ ないです - 既存のコードをリファクタリングする案件 - 既存のコード読み解くの難過ぎる -
DI/ファサード/サービスコンテナわからん過ぎる - 設計むずい - 配列むずい - Laravel 5.1だとできない…むずい…
Laravelを使う中で(実務 経験)ぶつかったたくさんの壁 - Laravelというか、初めて実務で開発やってみてぶつかった壁かもしれないです - 既存のコードをリファクタリングする案件 - めっちゃクラスある - 既存のコード読み解くの難過ぎる
- DI/ファサード/サービスコンテナわからん過ぎる - 設計むずい - 配列むずい - Laravel 5.1だとできない…むずい…
配列むずい - (作りたい)画面に必要な情報を持った配列の、データ構造を決 めるのがむずい - 決めたとして、どうやって引っ張ってくるのか考えるのがむずい - Eloquentを使った方がいいのか、クエリビルダ使った方がいいのか
やったこと - とりあえず思い思いにたくさん書いて、Xdebug でどんな値取れてるか とか確認しまくった - めっちゃドキュメント読んだ(同じところ何回読んだかわからない。すぐ 忘れる) - コレクション(https://readouble.com/laravel/5.1/ja/
collections.html) - リレーション(https://readouble.com/laravel/5.1/ja/ eloquent-relationships.html) - クエリービルダ(https://readouble.com/laravel/5.1/ ja/queries.html -
学んだこと - 手を動かすの大事 - たくさん書いて手を動かすとなんかわかってきた感でる(実際にその結果をみて、成 功するまでトライアンドエラーしてると段々わかってくる感ある) - ドキュメント読むの大事 - 結局ドキュメントに書いてある。後から見返すと、何度も読んでるはずなのに、ドキュ
メントにちゃんと書いてあるじゃんってことが割とあった - 使い分けの目安を持つ - Eloquentを使うときは、対象とのテーブル(モデル)が1つの場合とか、関連する データを富豪的に取ってきたい時とか。基本はEloquent使う場面の方が多いっぽい - クエリビルダ を使うときは、複数のテーブルからデータを取ってこないといけない、ちょっ と複雑なSQLを使ってデータを取ってきたい時とか -
Laravel 5.1だとできない… - ログインユーザーの役割に応じて、アクセス制御できるようにしたい - Laravel で標準で用意されているミドルウェアは多数ある - can という特定のモデルやリソースへのアクションに対して、認可を
行う、認可機能と合わせて使うミドルウェアを使いたい - Laravel 5.1だと標準で用意されてなくて、5.3からだった(いろ いろあって、5.1の開発だった)
やったこと - 5.7からIlluminate/Auth/Middleware/Authorize.php を取ってきて、5.1で独自ミドルウェアとして定義して機能するように した - コピペするだけだとちゃんと動いてくれなくて、Authorize.phpの 処理をxdebug、定義元ジャンプしまくって、読み解きながらやっ たらちゃんと認可されるようになった
学んだこと - 定義元ジャンプして、コードを追っていくの大事 - すぐ迷子になるけど、続けていくとなんかわかる感じ出てくる - 最後のほうはPHPのドキュメントにも飛べて良い - 定義元ジャンプしながら、コード追っていくと、ドキュメントの記述と つながって理解が深まった
振り返り/まとめ - Laravelでできることの知識がまた少し増えた(認可、Eloquent とかの配列操作とか) - はじめての実務経験でいろいろよくわからんこと多くて大変だったけ ど、ドキュメント読んで、コード追って、たくさん書いて、トライ&エ ラーでやっていくと力つきそうだと感じた - Laravel書けるようになった話、というテーマにしたけど、全然書け
ない。わからないこと多すぎ、これから頑張る