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
Laravel を学ぶ前に書いていた require と Laravel 使い始めてから躓いた...
Search
uutan1108
March 08, 2024
Programming
1
740
Laravel を学ぶ前に書いていた require と Laravel 使い始めてから躓いた use 宣言と namespace
PHPerKaigi 2024
https://fortee.jp/phperkaigi-2024/proposal/bbbfddbf-956e-4767-bab8-f16d8c009c0d
uutan1108
March 08, 2024
Tweet
Share
More Decks by uutan1108
See All by uutan1108
今年始めた 「アニメから得た学びを発表会」
ohmori_yusuke
2
1.9k
行き当たりばったりの二年
ohmori_yusuke
1
320
技書博に参加したら執筆できた
ohmori_yusuke
1
1.8k
開発終了後こそ成長のチャンス!プロダクト運用を見送った先のアクションプラン
ohmori_yusuke
2
270
学生の時に開催したPerl入学式をきっかけにエンジニアが組織に馴染むために勉強会を主催や仲間と参加して職能間の境界を越えていく
ohmori_yusuke
2
610
やりっぱなしで終わらない勉強法
ohmori_yusuke
3
490
OpenAPIにも静的解析とフォーマッターを導入して快適にスキーマ定義する
ohmori_yusuke
2
380
スクラムフェスに参加した
ohmori_yusuke
1
520
新卒エンジニアが組織に馴染むために勉強会を主催してチームの壁を越える
ohmori_yusuke
1
1.2k
Other Decks in Programming
See All in Programming
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
120
CloudflareStack でRAGに入門
asahiiwm
0
140
非ブラウザランタイムとWeb標準 / Non-Browser Runtimes and Web Standards
petamoriken
0
410
Zoneless Testing
rainerhahnekamp
0
150
ある日突然あなたが管理しているサーバーにDDoSが来たらどうなるでしょう?知ってるようで何も知らなかったDDoS攻撃と対策 #phpcon.2024
akase244
2
7.7k
短期間での新規プロダクト開発における「コスパの良い」Goのテスト戦略」 / kamakura.go
n3xem
2
210
ドメインイベント増えすぎ問題
h0r15h0
2
540
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
tanakahisateru
1
140
PSR-15 はあなたのための ものではない? - phpcon2024
myamagishi
0
360
php-conference-japan-2024
tasuku43
0
410
DevFest - Serverless 101 with Google Cloud Functions
tunmise
0
130
今年のアップデートで振り返るCDKセキュリティのシフトレフト/2024-cdk-security-shift-left
tomoki10
0
330
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
50
11k
Building a Modern Day E-commerce SEO Strategy
aleyda
38
7k
Typedesign – Prime Four
hannesfritz
40
2.5k
Code Reviewing Like a Champion
maltzj
521
39k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
RailsConf 2023
tenderlove
29
960
Making Projects Easy
brettharned
116
6k
Visualization
eitanlees
146
15k
A Tale of Four Properties
chriscoyier
157
23k
Done Done
chrislema
182
16k
Bootstrapping a Software Product
garrettdimon
PRO
305
110k
Java REST API Framework Comparison - PWX 2021
mraible
28
8.3k
Transcript
PHPerKaigi 2024
自己紹介 • うーたん • 新卒サーバーサイドエンジニア ◦ 株式会社ゆめみ • 趣味 ◦
アニメを見ること • X ◦ @uutan1108 2 月刊I/O 3月号、4月号に 「プログラミング& 実行できるWEBアプリを手作り」 掲載されたので読んでね
PHPerKaigi 2024
PHPerKaigi 2024
PHPerKaigi 2024
PHPerKaigi 2024 2つは 全く違う話
require と use の違いに気づいたきっかけ 7
ノンフレームワークのPHPでブログを作り、リプレースした 新 旧 8
Laravel を学ぶ前に書いていた require 旧 9
Laravel を学ぶ前に書いていた require 旧 10
Laravel を学ぶ前に書いていた require と 旧 11
Laravel を学ぶ前に書いていた require と Laravel 使い始めてから躓いた use 宣言 新 12
Laravel を学ぶ前に書いていた require と Laravel 使い始めてから躓いた use 宣言 新 旧
13
Laravel を学ぶ前に書いていた require と Laravel 使い始めてから躓いた use 宣言 新 旧
14 悪戦苦闘
Laravel を学ぶ前 15
一応、別ファイルに切り出しておく Laravelを知らない👶 16
一応、別ファイルに切り出しておく Laravelを知らない👶 👶「外部ファイルに関数、変数を切り出して...」 17
一応、別ファイルに切り出しておく Laravelを知らない👶 👶「外部ファイルに関数、変数を切り出して...」 👶「関数、変数を使う時は、require 関数で呼べば 良さそう」 18
一応、別ファイルに切り出しておく Laravelを知らない👶 👶「外部ファイルに関数、変数を切り出して...」 👶「関数、変数を使う時は、require 関数で呼べば 良さそう」 👶「やべ、名前被った。変更しよ。」 19
一応、別ファイルに切り出しておく Laravelを知らない👶 👶「外部ファイルに関数、変数を切り出して...」 👶「関数、変数を使う時は、require で呼べば 良さそう」 👶「やべ、名前被った。変更しよ。」 👶「違うところでエラーだ...」 20
Laravel をなんとなく学んでいる時 21
namespace, use 綺麗だな~ Laravel勉強中👦 22
namespace, use 綺麗だな~ Laravel勉強中👦 👦「namespace はディレクトリの階層みたいに書いてお け ば良さげ」 23
namespace, use 綺麗だな~ Laravel勉強中👦 👦「namespace はディレクトリの階層みたいに書いてお け ば良さげ」 👦「use は呼び出したいファイルのパスを書けば良さげ」 24
namespace, use 綺麗だな~ Laravel勉強中👦 👦「namespace はディレクトリの階層みたいに書いてお け ば良さげ」 👦「use は呼び出したいファイルのパスを書けば良さげ」 👦「require
と同じ雰囲気で use を書けばいいのか~」 25
namespace, use 綺麗だな~ Laravel勉強中👦 👦「namespace はディレクトリの階層みたいに書いてお け ば良さげ」 👦「use は呼び出したいファイルのパスを書けば良さげ」 👦「require
と同じ雰囲気で use を書けばいいのか~」 👦「先頭大文字」 26
Laravel を学んでブログサイトを改修中 27
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 28
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 🧑「ググる」 29
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 🧑「ググる」 🧑「名前空間?namespace?」 30
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 🧑「ググる」 🧑「名前空間?namespace?」 🧑「use はインポート? ファイル読み込みとは違う?!」 31
ブログサイトを改修中 ブログサイトを改修中🧑 🧑「use って書いても読み込まれない...」 🧑「ググる」 🧑「名前空間?namespace?」 🧑「use はインポート? ファイル読み込みとは違う?!」 🧑「ディレクトリ関係ない?!」
32
namespace, use にディレクトリ名 は関係ない! use の前に require は必要! 33
namespace, use にディレクトリ名 は関係ない! 34 main.php zoo.php
namespace, use にディレクトリ名 は関係ない! 35 main.php zoo.php 適当な名前でも 無問題
namespace, use にディレクトリ名 は関係ない! 36 main.php zoo.php 名前空間 animal の
dog クラスを インポートする
namespace はなんでもいい! 37 main.php zoo.php
namespace, use にディレクトリ名 は関係ない! use の前に require は必要! 38
use の前に require は必要! 39 cat.php main.php
use の前に require は必要! 40 main.php zoo.php zoo.php を 読み込んでいる
use の前に require は必要! 41 cat.php main.php zoo.php require は
呼ばれている
use の前に require は必要! 42 main.php zoo.php require がないと use
できない
use の前に require は必要! 43 main.php zoo.php
終わりに 44
ブログサイトを生の PHP で作った 旧 新 結局 require は どうなったのか 45
require 後に実行されるファイル 46
require 後に実行されるファイル 同一の名前空間でク ラス名が衝突 しなければ無問題 47
require 後に実行されるファイル 同一の名前空間でク ラス名が衝突 しなければ無問題 必要なクラスを適 宜インポート 48
require 後に実行されるファイル 同一の名前空間でク ラス名が衝突 しなければ無問題 必要なクラスを適 宜インポート ディレクトリ名にす ると 管理しやすい
49
require 後に実行されるファイル 同一の名前空間でク ラス名が衝突 しなければ無問題 必要なクラスを適 宜インポート ディレクトリ名にす ると 管理しやすい
かっこいい 50
index.php は require がたくさん 51 オートロード使 えば消せるけ ど...
index.php は require がたくさん 最初に呼ばれるファ イルで 書きまくる 52
index.php は require がたくさん 最初に呼ばれるファ イルで 書きまくる 必要なクラスを適 宜インポート 53
index.php は require がたくさん 最初に呼ばれるファ イルで 書きまくる 必要なクラスを適 宜インポート require
のパスと use を揃えた 54
index.php は require がたくさん 最初に呼ばれるファ イルで 書きまくる 必要なクラスを適 宜インポート require
のパスと use を揃えた require を index.php に 集められた 55
まとめ 56
まとめ - use はインポート 57
まとめ - use はインポート - require はファイル読み込み 58
まとめ - use はインポート - require はファイル読み込み - use する前に
require は必要 59
まとめ - use はインポート - require はファイル読み込み - use する前に
require は必要 - オートロード使えば require とさよならできる 60
ご清聴ありがとうございました🙇 61