Slide 1

Slide 1 text

©Fusic Co., Ltd. 0 自由で便利なLaravelの しんどいポイントを楽しさに変える 2024.09.28 Mai Miyazaki @maimyyym PHPカンファレンス沖縄 2024

Slide 2

Slide 2 text

©Fusic Co., Ltd. 1 宮崎 真衣 Miyazaki Mai HN: mai (@maimyyym ) ◉ I am - 管理栄養士(養成校卒業・資格保持のみ) - 元百貨店スタッフ(Beauty Counselor) - 2023年10月 Fusic入社 ◉ Skill - AWS / Python / TypeScript / PHP ◉ Comment - はじめての沖縄! 自己紹介 はじめに 事業本部 技術創造部門 / エンジニア 株式会社Fusic at 福岡

Slide 3

Slide 3 text

©Fusic Co., Ltd. 2 CONTENTS 自由で便利なLaravelのしんどいポイントを楽しさに変える 1. 私とLaravel 2. Laravelのここがしんどい 3. 発想の転換地 4. Laravelを書く組織 5. 私と技術

Slide 4

Slide 4 text

©Fusic Co., Ltd. 3 私とLaravel PHP(Laravel)に出会うまで / なぜLaravelか? 1

Slide 5

Slide 5 text

©Fusic Co., Ltd. 4 PHP(Laravel)に出会うまで 私とLaravel 2022年9月〜2023年9月:業界未経験 / ITスクールで学習 をよく使っていた

Slide 6

Slide 6 text

©Fusic Co., Ltd. 5 PHP(Laravel)に出会うまで 私とLaravel 2022年9月〜2023年9月:業界未経験 / ITスクールで学習 をよく使っていた 必要最低限の機能・シンプルな構造で 簡単なコードばかり書いていた

Slide 7

Slide 7 text

©Fusic Co., Ltd. 6 PHP(Laravel)に出会うまで 私とLaravel 2022年9月〜2023年9月:業界未経験 / ITスクールで学習 をよく使っていた PHPどころか、 MVCフレームワーク・フルスタックフレームワークを 使ったことがない!

Slide 8

Slide 8 text

©Fusic Co., Ltd. 7 なぜLaravelか? 私とLaravel 2023年10月、 入社!晴れてエンジニアに ・・・ということで、 デビュー! これが全て。だけど、 こういった ”技術との出会い” は多いのではないでしょうか?

Slide 9

Slide 9 text

©Fusic Co., Ltd. 8 Laravelのここがしんどい Laravelは便利 / Laravelは自由 2

Slide 10

Slide 10 text

©Fusic Co., Ltd. 9 Laravelのここがしんどい Laravelのここがしんどい 便利すぎる 自由すぎる Laravelに限らず、さまざまなフレームワークがきっとそう。

Slide 11

Slide 11 text

©Fusic Co., Ltd. 10 Laravelは便利 Laravelのここがしんどい 決まった書き方をするといい感じに動く 使う人は当たり前に使うけど、 私は知らない。知り方が分からない。 アクセサ モデルに public function xxxXxxx(): Attribute とメソッドを定義 ↓ $model->xxx_xxxx でアクセスできる $this->prefecture->name, ); } } $this->prefecture_name; // 例:「福岡県」という文字列が返ってくる ※ Laravel 9 以降の書き方です。

Slide 12

Slide 12 text

©Fusic Co., Ltd. 11 Laravelは便利 Laravelのここがしんどい 決まった書き方をするといい感じに動く 使う人は当たり前に使うけど、 私は知らない。知り方が分からない。 アクセサ モデルに public function xxxXxxx(): Attribute とメソッドを定義 ↓ $model->xxx_xxxx でアクセスできる $this->prefecture->name, ); } } $this->prefecture_name; // 例:「福岡県」という文字列が返ってくる ※ Laravel 9 以降の書き方です。 初めて見た時は getPrefectureNameAttribute() という Laravel8以前の書き方だったこともあり、 DBにそんなデータはないのに!と戸惑った

Slide 13

Slide 13 text

©Fusic Co., Ltd. 12 Laravelは便利 Laravelのここがしんどい 決まった書き方をするといい感じに動く 便利!だけど、 やっぱり知り方が分からない。 スコープ モデルに public function scopeXxxx() とメソッドを定義 ↓ $model->xxxx() で取得範囲を絞る where('is_publish', true); } } User::publish()->get(); // is_publish=trueのUser”だけ”取得できる

Slide 14

Slide 14 text

©Fusic Co., Ltd. 13 Laravelは便利 Laravelのここがしんどい 決まった書き方をするといい感じに動く 便利!だけど、 やっぱり知り方が分からない。 スコープ モデルに public function scopeXxxx() とメソッドを定義 ↓ $model->xxxx() で取得範囲を絞る where('is_publish', true); } } User::publish()->get(); // is_publish=trueのUser”だけ”取得できる もし自分で1から実装していたら、 スコープを使わずその都度で書いていた。 → レビューで指摘されて手戻り! になっていたかも。

Slide 15

Slide 15 text

©Fusic Co., Ltd. 14 Laravelは自由 Laravelのここがしんどい (極端な話、)Modelに書いても、Controllerに書いても、動く # 自由なディレクトリ構造 テキスト教材にはMとVとC以上のことは書かれていない # 色々な思想がある、らしいと知る どの層に何を書くか。場合により、思想により、その時々で判断する必要性を研修で知る アクセサやスコープを使わなくても動くものを実装できる # 頑張れば何でも実装できる 自由が故に、どこにどう書いても動く時は動く。

Slide 16

Slide 16 text

©Fusic Co., Ltd. 15 発想の転換地とLaravelを書く組織 でも、だから、おもしろい! / なぜ、そう思えた? 3

Slide 17

Slide 17 text

©Fusic Co., Ltd. 16 [突然ですが] 発想の転換地とLaravelを書く組織 PHPカンファレンス沖縄2024でも、 PHP・Laravelってやっぱりおもしろいかも! と思いました!

Slide 18

Slide 18 text

©Fusic Co., Ltd. 17 [突然ですが] 発想の転換地とLaravelを書く組織 交えて話したかったですが 5分に収まらない!ので、 (予定通り)自分と組織文化の話をします

Slide 19

Slide 19 text

©Fusic Co., Ltd. 18 でも、だから、おもしろい! 発想の転換地とLaravelを書く組織 自分の中に溜まっていく ナレッジとアウトプット 最適解=ソリューション を考える面白さ 裏側の仕組みの 深掘り

Slide 20

Slide 20 text

©Fusic Co., Ltd. 19 なぜ、そう思えた? 発想の転換地とLaravelを書く組織 仕事だから。 よく分からないけど動いている、ではダメ。 私たちのコードは製品。自信を持った実装の必要性。 =理解・深掘りが必要な環境。 組織文化があるから。 Fusicに入社したからPHP, Laravelと出会った。 PHP, Laravelを書く人が多い環境。 自分一人では得られない知識・視点と出会える環境。 #phper-times つぶやき、やらかし、相談 などのSlackチャンネル Laravel11 Docs輪読会 コメントしながら読む会 社内のソースコード 全リポジトリのコードを 見ることができる

Slide 21

Slide 21 text

©Fusic Co., Ltd. 20 私と技術 他の技術でも同じこと。 4

Slide 22

Slide 22 text

©Fusic Co., Ltd. 21 他の技術でも同じこと。 私と技術 Laravel を書く機会は減った。 でも、情報は常にすぐそこにある。 シンプルなものにも 深い仕組みがある 選択の思考を止めない そして、今なら分かる

Slide 23

Slide 23 text

©Fusic Co., Ltd. 22 まとめ 自由で便利なLaravelのしんどいポイントを楽しさに変える 仕事だから・組織文化があったから 自由で便利なLaravelを通して 技術との向き合い方を改めて学ぶことができました Point

Slide 24

Slide 24 text

©Fusic Co., Ltd. 23 Thank You We are Hiring! https://recruit.fusic.co.jp/ ご清聴いただきありがとうございました