Laravel を学ぶ前に書いていた require と Laravel 使い始めてから躓いた use 宣言と namespace
by
uutan1108
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
PHPerKaigi 2024
Slide 2
Slide 2 text
自己紹介 ● うーたん ● 新卒サーバーサイドエンジニア ○ 株式会社ゆめみ ● 趣味 ○ アニメを見ること ● X ○ @uutan1108 2 月刊I/O 3月号、4月号に 「プログラミング& 実行できるWEBアプリを手作り」 掲載されたので読んでね
Slide 3
Slide 3 text
PHPerKaigi 2024
Slide 4
Slide 4 text
PHPerKaigi 2024
Slide 5
Slide 5 text
PHPerKaigi 2024
Slide 6
Slide 6 text
PHPerKaigi 2024 2つは 全く違う話
Slide 7
Slide 7 text
require と use の違いに気づいたきっかけ 7
Slide 8
Slide 8 text
ノンフレームワークのPHPでブログを作り、リプレースした 新 旧 8
Slide 9
Slide 9 text
Laravel を学ぶ前に書いていた require 旧 9
Slide 10
Slide 10 text
Laravel を学ぶ前に書いていた require 旧 10
Slide 11
Slide 11 text
Laravel を学ぶ前に書いていた require と 旧 11
Slide 12
Slide 12 text
Laravel を学ぶ前に書いていた require と Laravel 使い始めてから躓いた use 宣言 新 12
Slide 13
Slide 13 text
Laravel を学ぶ前に書いていた require と Laravel 使い始めてから躓いた use 宣言 新 旧 13
Slide 14
Slide 14 text
Laravel を学ぶ前に書いていた require と Laravel 使い始めてから躓いた use 宣言 新 旧 14 悪戦苦闘
Slide 15
Slide 15 text
Laravel を学ぶ前 15
Slide 16
Slide 16 text
一応、別ファイルに切り出しておく Laravelを知らない👶 16
Slide 17
Slide 17 text
一応、別ファイルに切り出しておく Laravelを知らない👶 👶「外部ファイルに関数、変数を切り出して...」 17
Slide 18
Slide 18 text
一応、別ファイルに切り出しておく Laravelを知らない👶 👶「外部ファイルに関数、変数を切り出して...」 👶「関数、変数を使う時は、require 関数で呼べば 良さそう」 18
Slide 19
Slide 19 text
一応、別ファイルに切り出しておく Laravelを知らない👶 👶「外部ファイルに関数、変数を切り出して...」 👶「関数、変数を使う時は、require 関数で呼べば 良さそう」 👶「やべ、名前被った。変更しよ。」 19
Slide 20
Slide 20 text
一応、別ファイルに切り出しておく Laravelを知らない👶 👶「外部ファイルに関数、変数を切り出して...」 👶「関数、変数を使う時は、require で呼べば 良さそう」 👶「やべ、名前被った。変更しよ。」 👶「違うところでエラーだ...」 20
Slide 21
Slide 21 text
Laravel をなんとなく学んでいる時 21
Slide 22
Slide 22 text
namespace, use 綺麗だな~ Laravel勉強中👦 22
Slide 23
Slide 23 text
namespace, use 綺麗だな~ Laravel勉強中👦 👦「namespace はディレクトリの階層みたいに書いてお け ば良さげ」 23
Slide 24
Slide 24 text
namespace, use 綺麗だな~ Laravel勉強中👦 👦「namespace はディレクトリの階層みたいに書いてお け ば良さげ」 👦「use は呼び出したいファイルのパスを書けば良さげ」 24
Slide 25
Slide 25 text
namespace, use 綺麗だな~ Laravel勉強中👦 👦「namespace はディレクトリの階層みたいに書いてお け ば良さげ」 👦「use は呼び出したいファイルのパスを書けば良さげ」 👦「require と同じ雰囲気で use を書けばいいのか~」 25
Slide 26
Slide 26 text
namespace, use 綺麗だな~ Laravel勉強中👦 👦「namespace はディレクトリの階層みたいに書いてお け ば良さげ」 👦「use は呼び出したいファイルのパスを書けば良さげ」 👦「require と同じ雰囲気で use を書けばいいのか~」 👦「先頭大文字」 26
Slide 27
Slide 27 text
Laravel を学んでブログサイトを改修中 27
Slide 28
Slide 28 text
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 28
Slide 29
Slide 29 text
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 🧑「ググる」 29
Slide 30
Slide 30 text
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 🧑「ググる」 🧑「名前空間?namespace?」 30
Slide 31
Slide 31 text
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 🧑「ググる」 🧑「名前空間?namespace?」 🧑「use はインポート? ファイル読み込みとは違う?!」 31
Slide 32
Slide 32 text
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 🧑「ググる」 🧑「名前空間?namespace?」 🧑「use はインポート? ファイル読み込みとは違う?!」 🧑「ディレクトリ関係ない?!」 32
Slide 33
Slide 33 text
namespace, use にディレクトリ名 は関係ない! use の前に require は必要! 33
Slide 34
Slide 34 text
namespace, use にディレクトリ名 は関係ない! 34 main.php zoo.php
Slide 35
Slide 35 text
namespace, use にディレクトリ名 は関係ない! 35 main.php zoo.php 適当な名前でも 無問題
Slide 36
Slide 36 text
namespace, use にディレクトリ名 は関係ない! 36 main.php zoo.php 名前空間 animal の dog クラスを インポートする
Slide 37
Slide 37 text
namespace はなんでもいい! 37 main.php zoo.php
Slide 38
Slide 38 text
namespace, use にディレクトリ名 は関係ない! use の前に require は必要! 38
Slide 39
Slide 39 text
use の前に require は必要! 39 cat.php main.php
Slide 40
Slide 40 text
use の前に require は必要! 40 main.php zoo.php zoo.php を 読み込んでいる
Slide 41
Slide 41 text
use の前に require は必要! 41 cat.php main.php zoo.php require は 呼ばれている
Slide 42
Slide 42 text
use の前に require は必要! 42 main.php zoo.php require がないと use できない
Slide 43
Slide 43 text
use の前に require は必要! 43 main.php zoo.php
Slide 44
Slide 44 text
終わりに 44
Slide 45
Slide 45 text
ブログサイトを生の PHP で作った 旧 新 結局 require は どうなったのか 45
Slide 46
Slide 46 text
require 後に実行されるファイル 46
Slide 47
Slide 47 text
require 後に実行されるファイル 同一の名前空間でク ラス名が衝突 しなければ無問題 47
Slide 48
Slide 48 text
require 後に実行されるファイル 同一の名前空間でク ラス名が衝突 しなければ無問題 必要なクラスを適 宜インポート 48
Slide 49
Slide 49 text
require 後に実行されるファイル 同一の名前空間でク ラス名が衝突 しなければ無問題 必要なクラスを適 宜インポート ディレクトリ名にす ると 管理しやすい 49
Slide 50
Slide 50 text
require 後に実行されるファイル 同一の名前空間でク ラス名が衝突 しなければ無問題 必要なクラスを適 宜インポート ディレクトリ名にす ると 管理しやすい かっこいい 50
Slide 51
Slide 51 text
index.php は require がたくさん 51 オートロード使 えば消せるけ ど...
Slide 52
Slide 52 text
index.php は require がたくさん 最初に呼ばれるファ イルで 書きまくる 52
Slide 53
Slide 53 text
index.php は require がたくさん 最初に呼ばれるファ イルで 書きまくる 必要なクラスを適 宜インポート 53
Slide 54
Slide 54 text
index.php は require がたくさん 最初に呼ばれるファ イルで 書きまくる 必要なクラスを適 宜インポート require のパスと use を揃えた 54
Slide 55
Slide 55 text
index.php は require がたくさん 最初に呼ばれるファ イルで 書きまくる 必要なクラスを適 宜インポート require のパスと use を揃えた require を index.php に 集められた 55
Slide 56
Slide 56 text
まとめ 56
Slide 57
Slide 57 text
まとめ - use はインポート 57
Slide 58
Slide 58 text
まとめ - use はインポート - require はファイル読み込み 58
Slide 59
Slide 59 text
まとめ - use はインポート - require はファイル読み込み - use する前に require は必要 59
Slide 60
Slide 60 text
まとめ - use はインポート - require はファイル読み込み - use する前に require は必要 - オートロード使えば require とさよならできる 60
Slide 61
Slide 61 text
ご清聴ありがとうございました🙇 61