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
Hisateru Tanaka
December 12, 2024
Programming
2
190
なまけものオバケたち -PHP 8.4 に入った新機能の紹介-
第41回関西PHP勉強会 のLT資料です。プロパティフックとレイジーオブジェクトについての話です。
Hisateru Tanaka
December 12, 2024
Tweet
Share
More Decks by Hisateru Tanaka
See All by Hisateru Tanaka
哲学史とモデリング
tanakahisateru
4
810
オブジェクト指向宗教史
tanakahisateru
32
17k
ほげ言語にあってPHPにない機能
tanakahisateru
6
3.2k
君たちはどうプログラミングするか
tanakahisateru
16
2.7k
デバッグ用ロガーの注入どうする?
tanakahisateru
2
620
アンドキュメンテッド ちょうぜつソフトウェア 設計入門 「オブジェクト指向に定義はない」のか?
tanakahisateru
25
9.6k
ちょうぜつ改め21世紀ふつうのソフトウェア設計
tanakahisateru
14
8.5k
まんがのかきかた
tanakahisateru
8
720
10秒で衝突するUUIDの作り方
tanakahisateru
40
40k
Other Decks in Programming
See All in Programming
社内での開発コミュニティ活動とモジュラーモノリス標準化事例のご紹介/xPalette and Introduction of Modular monolith standardization
m4maruyama
1
120
統一感のある Go コードを生成 AI の力で手にいれる
otakakot
0
3k
実践ArchUnit ~実例による検証パターンの紹介~
ogiwarat
2
270
[初登壇@jAZUG]アプリ開発者が気になるGoogleCloud/Azure+wasm/wasi
asaringo
0
130
WindowInsetsだってテストしたい
ryunen344
1
190
ktr0731/go-mcpでMCPサーバー作ってみた
takak2166
0
170
Select API from Kotlin Coroutine
jmatsu
1
180
アンドパッドの Go 勉強会「 gopher 会」とその内容の紹介
andpad
0
240
エラーって何種類あるの?
kajitack
5
160
複数アプリケーションを育てていくための共通化戦略
irof
10
3.9k
Create a website using Spatial Web
akkeylab
0
290
KotlinConf 2025 現地で感じたServer-Side Kotlin
n_takehata
1
220
Featured
See All Featured
Become a Pro
speakerdeck
PRO
28
5.4k
Build The Right Thing And Hit Your Dates
maggiecrowley
36
2.7k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
480
Optimizing for Happiness
mojombo
379
70k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Site-Speed That Sticks
csswizardry
10
640
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
KATA
mclloyd
29
14k
The Language of Interfaces
destraynor
158
25k
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