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
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Hisateru Tanaka
December 12, 2024
Programming
280
2
Share
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
第41回関西PHP勉強会 のLT資料です。プロパティフックとレイジーオブジェクトについての話です。
Hisateru Tanaka
December 12, 2024
More Decks by Hisateru Tanaka
See All by Hisateru Tanaka
どうなる Remix 3
tanakahisateru
2
520
哲学史とモデリング
tanakahisateru
4
980
オブジェクト指向宗教史
tanakahisateru
32
18k
ほげ言語にあってPHPにない機能
tanakahisateru
6
3.9k
君たちはどうプログラミングするか
tanakahisateru
16
3.1k
デバッグ用ロガーの注入どうする?
tanakahisateru
2
710
アンドキュメンテッド ちょうぜつソフトウェア 設計入門 「オブジェクト指向に定義はない」のか?
tanakahisateru
25
10k
ちょうぜつ改め21世紀ふつうのソフトウェア設計
tanakahisateru
14
8.7k
まんがのかきかた
tanakahisateru
8
770
Other Decks in Programming
See All in Programming
LLM本来の能力を解き放つサンドボックス技術とAI民主化への適用
yukukotani
3
2.7k
Signal Forms: Beyond the Basics @ngBaguette 2026 in Paris
manfredsteyer
PRO
0
220
net-httpのHTTP/2対応について
naruse
0
440
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
730
Lessons from Spec-Driven Development
simas
PRO
0
140
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
440
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
1.5k
Webフレームワークの ベンチマークについて
yusukebe
0
120
New "Type" system on PicoRuby
pocke
1
460
AI 時代のソフトウェア設計の学び方
masuda220
PRO
29
12k
AIチームを指揮するOSS「TAKT」活用術 / How to Use “TAKT,” an OSS Tool for Orchestrating AI Teams
nrslib
6
820
プラグインで拡張される Context をtype-safe にする難しさと設計判断
kazupon
2
580
Featured
See All Featured
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
BBQ
matthewcrist
89
10k
The SEO identity crisis: Don't let AI make you average
varn
0
480
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
240
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
440
Exploring anti-patterns in Rails
aemeredith
3
390
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1.2k
Transcript
ͳ·͚ͷΦόέͨͪ 1)1ʹೖͬͨ৽ػೳͷհ
ాதͻͯ͞Δ
͜͏͍͏ঢ়گʹ͍ͭͯͷΛ͠·͢ w "VUIPS͕ෳͷ#PPLΛࣥච w ͋ΔϏϡʔͰʮຊͷλΠτϧʯ͚ͩදࣔ w ผͷϏϡʔͰʮຊͷஶऀ໊ʯදࣔ
w ͕͋Δ͔Βͱ#PPLΛৗʹ"VUIPS͖Ͱੜ ͢Δͱɺ ͷͱ͖ແବʹͳΔ
͜Μͳͷݏͩ Ϗϡʔͷύλʔϯʹ͝ͱʹҟͳΔϞσϧΛ࡞Δͷ͔
Ͱɺ΄Ͳલʹ࡞ͬͨͷ͕͜Ε w ҙ֎ͱΘΕͨϑϨʔϜϫʔΫ w ϓϨθϯςʔγϣϯϞσϧϓϩύ ςΟͷԆධՁ͕͋Δࣙॻ w $book->registerAsLazy('author', ...) w
CPPLBVUIPS ࣮ࡍʹߦΘΕͨͱ͖ॳΊ࣮ͯମԽ
શʹΛऴ͑·ͨ͠ 1)1ͳΒඪ४ͰಈతධՁԆධՁՄೳʹ w ϓϩύςΟϑοΫ w ϨΠδʔΦϒδΣΫτ
ಈతධՁϓϩύςΟϑοΫ
Կ͕ͦΜͳʹخ͍͠ͷ w ݹ͘HFUUFSϝιου getFullName()ͱ͔ Ͱ͍ͬͯͨ͜ͱ w 1)1ίϯετϥΫλϓϩϞʔγϣϯ ͱSFBEPOMZ Ͱৗ͕ࣝมΘͬͨ w
͏ૉͳσʔλܕͳΒˢͷQVCMJDϓϩύςΟͰͥΜͥΜ͍͍Α w جຊશͯQVCMJDϓϩύςΟͰ͓͚͍͍ͬͯ ˠ͋ͱͰԿ͔ܭࢉ͕ඞཁʹͳͬͨΒɺ ˠϓϩύςΟϑοΫͰಁաతʹ͢Γସ͑Մೳ
͕࣍ຊ
ԆධՁϨΠδʔΦϒδΣΫτ
ී௨͜͏
ͳ·͚ͷΦόέͷ࡞Γ͔ͨ ͜ͷ࣌Ͱʮ"VUIPSʹ͔͠ݟ͑ͳ͍ΦόέʯΛݟͤΒΕ͍ͯΔ
͜͏ͳΔ ʮΦόέͷதʯΛཁٻ͢Δͱɺ͠Εͬͱຊʹ͢ΓସΘΔ
None
Կ͕ͦΜͳʹخ͍͠ͷ w &MPRVFOUͱ͔ʹґଘ͠ͳͯ͘ϨΠδʔϩʔυͰ͖Δσʔλߏ͍͍ͧ w ϨΠδʔՄೳͳͷʹϞσϧͷ୯ମςετΛϑϨʔϜϫʔΫಠཱʹͰ͖Δ w %PDUSJOF03.ͷ&OUJUZ࣮ࡍͦ͏ w ϥΠϒϥϦͰPDSBNJVTQSPYZNBOBHFS w
ʮ1)1Ҏ্ʯͱݴ͏͚ͩͰɺͦ͏͍͏ͷͱಉ͡ʹͳΕΔ
/ ʹ͍ͭͯ w ͦΕɺ"DUJWF3FDPSEͷϦϨʔγϣϯγοϓ͕ʮ։ൃऀͷΒͳ͍ͱ͜Ζ Ͱʯىͩ͜͢ΑͶɻΠʔΨʔͷΦϓγϣϯΛΒͳ͔ͬͨͱ͔ w ։ൃऀ͕ʮͳ·͚ͷΦόέʯΛ͏ͷҙਤతʹ͠ͳ͍ͱى͖ͳ͍ w ʮ/ ͕ىͤ͜ΔʯͷΉ͠Ζɺʮ߹ʹΑͬͯͳ͔ͥϞσϧ͕ཧόά
Λى͜͢ʯͱ͍ͬͨ͜ͱΛ͙ɺϨΠδʔϩʔυͱ͍͏վળͷূڌ w ·ͣҰ؏ੑɺͦΕͰػೳ͕ਖ਼͘͠Ͱ͖ΔɺͦΕ͔ΒύϑΥʔϚϯε
1010Ͱ͍͜͏ 10101MBJO0ME1)10CKFDU +BWBͰ͍͏10+0