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カンファレンス 〜PHPカンファレンス関西2024の運営スタッフが語る...
Search
SAW
May 10, 2024
Programming
0
130
メイキング・オブ・PHPカンファレンス 〜PHPカンファレンス関西2024の運営スタッフが語る舞台裏〜
PHPカンファレンス香川2024 前日祭の音響機材調整トークでの発表資料です。
SAW
May 10, 2024
Tweet
Share
More Decks by SAW
See All by SAW
PHP で学ぶ OAuth 入門
azuki
2
560
EditorConfig を使ってみよう
azuki
1
80
Symfony でサクッと作る REST API サーバー
azuki
1
160
Vite の Library Mode を使って Vue のコンポーネントをライブラリ化する
azuki
1
200
Laravel や Symfony で手っ取り早く OpenAPI のドキュメントを作成する
azuki
2
300
Provide/Inject で TypeScript の恩恵を受ける方法
azuki
3
150
GraphQL はいいぞ! ~Laravel で学ぶ GraphQL 入門~
azuki
1
360
OSS contributor への第一歩を踏み出すまでの物語
azuki
2
320
Eloquent で relation を扱う基礎
azuki
0
170
Other Decks in Programming
See All in Programming
Android 16 × Jetpack Composeで縦書きテキストエディタを作ろう / Vertical Text Editor with Compose on Android 16
cc4966
1
200
Cache Me If You Can
ryunen344
2
700
そのAPI、誰のため? Androidライブラリ設計における利用者目線の実践テクニック
mkeeda
2
290
実用的なGOCACHEPROG実装をするために / golang.tokyo #40
mazrean
1
270
Performance for Conversion! 分散トレーシングでボトルネックを 特定せよ
inetand
0
140
[FEConf 2025] 모노레포 절망편, 14개 레포로 부활하기까지 걸린 1년
mmmaxkim
0
1.6k
アプリの "かわいい" を支えるアニメーションツールRiveについて
uetyo
0
260
デザイナーが Androidエンジニアに 挑戦してみた
874wokiite
0
360
2025 年のコーディングエージェントの現在地とエンジニアの仕事の変化について
azukiazusa1
24
12k
モバイルアプリからWebへの横展開を加速した話_Claude_Code_実践術.pdf
kazuyasakamoto
0
320
AWS発のAIエディタKiroを使ってみた
iriikeita
1
180
Navigation 2 を 3 に移行する(予定)ためにやったこと
yokomii
0
160
Featured
See All Featured
YesSQL, Process and Tooling at Scale
rocio
173
14k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
For a Future-Friendly Web
brad_frost
180
9.9k
Unsuck your backbone
ammeep
671
58k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The Cost Of JavaScript in 2023
addyosmani
53
8.9k
Producing Creativity
orderedlist
PRO
347
40k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Transcript
ϝΠΩϯάɾΦϒɾ1)1ΧϯϑΝϨϯε ʙ1)1ΧϯϑΝϨϯεؔͷӡӦελοϑ͕ޠΔཪʙ 1)1ΧϯϑΝϨϯε߳લࡇԻڹػࡐௐτʔΫ 4"8
$(whoami) w ࢯ໊Ճ౻फҰ ࡀ w ϋϯυϧωʔϜ4"8 w ؔͷ*5ΤϯδχΞίϛϡχςΟͷ͔͠୲ ࣗশ
w େࡕࡏॅɾѪग़ w 9 چ5XJUUFS !B[VLJ@FBUFS w 1)1ΧϯϑΝϨϯε࣮ؔߦҕһ
1)1ΧϯϑΝϨϯεͷࢀՃྺ 1)1ΧϯϑΝϨϯεࢀՃྺ ظؒ ࢀՃͨ͠ΧϯϑΝϨϯε උߟ 1)1$POGFSFODF+BQBO ΧϯϑΝϨϯεॳࢀՃ
1)1ΧϯϑΝϨϯεԬ ٱ͠ͿΓͷΦϑϥΠϯͷษڧձʹࢀՃ 1)1$POGFSFODF+BQBO ʙ 1)1ΧϯϑΝϨϯεւಓ 1)1ΧϯϑΝϨϯεؔ ίΞελοϑͱͯ͠ࢀՃ ʙ 1)1FS,BJHJ 1)1ΧϯϑΝϨϯεখాݪ )BQQZ#JSUIEBZ ʙ 1)1ΧϯϑΝϨϯε߳ ελοϑͱͯ͠ࢀՃ ˡΠϚίί
͓͠ͳ͕͖ w 1)1ΧϯϑΝϨϯεؔͷཪ w ϝΠΩϯάɾΦϒɾ1)1ΧϯϑΝϨϯεؔ w ӡӦελοϑࢹͷཪ w ΧϯϑΝϨϯεͷཪͷ༠͍
1)1ΧϯϑΝϨϯεؔͷཪ ϝΠΩϯάɾΦϒɾ1)1ΧϯϑΝϨϯεؔ
1)1ΧϯϑΝϨϯεؔͷ։࠵ςʔϚ w ؔ1)1ΤϯδχΞίϛϡχςΟͷ্ཱͪ͛ w ৽ͨͳίϛϡχςΟࢀըऀͷൃ۷ w ؔͰͷٕज़ڞ༗ͷΛग़ w ࣋ଓՄೳͳӡӦମ੍ w
։࠵ςʔϚΛ࣮ݱ͢ΔͨΊͷӡӦମ੍Λඋ ެࣜOPUFهࣄΑΓҾ༻
1)1ΧϯϑΝϨϯεؔͷελοϑ w 1)1ΧϯϑΝϨϯεؔͿΓͷ։࠵ w աڈͷ1)1ΧϯϑΝϨϯεؔͷελοϑ͕΄΅͍ͳ͍ w աڈͷ։࠵ϊϋ͕΄ͱΜͲड͚ܧ͕Ε͍ͯͳ͍ w ؔͷ1)1ίϛϡχςΟͷӡӦʹܞΘΔϝϯόʔ͕΄΅૯ೖΕସ͑
ελοϑͰͷνʔϜ͚ w ୲ൣғΛܾΊΔ͜ͱͰλεΫΛ୲ w جຊతʹνʔϜͷλεΫʹྗ w શମͷਐḿঢ়گͷ၆ᛌ࣮ߦҕһ͕୲ w ࣮ߦҕһͷෛ୲͕େ͖͔ͬͨ
νʔϜ͚ͱׂ 1)1ΧϯϑΝϨϯεؔͷνʔϜ͚ νʔϜ ֓ཁ εϙϯαʔνʔϜ εϙϯαʔͷืू͍߹ΘͤରԠ ࠾ొஃऀνʔϜ ొஃλΠϜςʔϒϧͷࡦఆ ҰൠࢀՃऀνʔϜ
νέοτൢച࠙ձͷख ϝσΟΞνʔϜ 4/4OPUFͳͲͷใ׆ಈ8FCαΠτͷ੍࡞ ಛผاըνʔϜ ໊ࡳ1)1FSγʔϧͷ࡞
1)1FSγʔϧ w 1)1ΧϯϑΝϨϯεؔͰͷۄاը w ࢀՃऀಉ࢜ͷަྲྀଅਐ͕త w γʔϧʹ9 چ5XJUUFS ΞΧϯτͷΞΠίϯ͕ҹ͞ΕΔ w
γʔϧͷσβΠϯςϯϓϨʔτʹΞΠίϯΛྲྀ͠ࠐΉεΫϦϓτΛ࣮ w σβΠϯͷ࡞ΛࣗಈԽͯ͠λεΫΛলྗԽ w ϊϕϧςΟͷதͰଟ͘ͷ༧ࢉ͕ඞཁ w 1)1FS,BJHJͷτϨʔσΟϯάΧʔυͷΞΠσΞ͔Βੜ 1)1FSγʔϧ
༧ࢉͱࢿۚௐୡ w εϙϯαʔ͕ू·Δ͔ͱ͍͏ෆ҆ w ͿΓͷ։࠵ʹग़ࢿͯ͘͠ΕΔεϙϯαʔ͕Ͳͷఔ͔ͭ͘ະ w εϙϯαʔ͔ΒௐୡͰ͖ͨग़ࢿֹ࣍ୈͰ༧ࢉΛΔඞཁ͕͋Δ w ݁ՌతʹϊϕϧςΟͳͲΛ४උ͢Δͷʹेͳࢿ͕ۚௐୡͰ͖ͨ w
εϙϯαʔνʔϜͷਚྗͱεϙϯαʔͷཧղͷ͓͔͛
τʔΫͷ࠾ํ๏ͷެ։ w τʔΫͷ࠾ํ๏ΛOPUFͰެ։ w ͲͷΑ͏ͳج४Ͱ࠾͞ΕΔ͔ΛࢀՃऀ͕Δ͜ͱ͕Ͱ͖Δ w ελοϑථͱࢀՃऀථʹج͍ͮͯܭࢉ͢Δ͜ͱͰ٬؍తʹ࠾
։࠵ͷ༷ࢠ w େ͖ͳτϥϒϧ͕ൃੜ͠ͳ͔ͬͨ w ແࣄʹେޭͰऴ͑ΒΕͨ w ໊Λ͑ΔࢀՃऀ͕དྷͨ͠ w ΧϯϑΝϨϯεॳࢀՃͷํଟ͔ͬͨ
1)1ΧϯϑΝϨϯεؔͷཪ ӡӦελοϑࢹͷཪ
ελοϑʹͳͬͨܦҢ w 1)1ΧϯϑΝϨϯεԬࢀՃޙʹ࣮ߦҕһͷ:,BOPI͞Μ͔Β ͓༠͍Λड͚Δ w :,BOPI͞ΜͱؔͷษڧձͰԿ͔͓ձ͍͍ͯͨ͠ w ษڧձʹొஃ͍ͯͨ͜͠ͱͰೝࣝͯ͠Β͍͓͑ͯͯ༠͍Λड͚ΒΕͨ w ྑ͍ػձͳͷͰελοϑʹͳΔ͜ͱΛܾҙ
w ΧϯϑΝϨϯεελοϑͷܦݧ%PKP$PO+BQBOͷΈ
ελοϑͱͯ͠ͷৼΓฦΓ w 1)1ΧϯϑΝϨϯεؔΛେޭʹऩΊΒΕͯຬײΛಘͨ w ΈΜͳͰ࡞Γ্͛ͨͱ͍͏ຬײ w ख୳ΓͰ४උ͖ͯͨ͠ͷΛޭͤ͞ΒΕͨͱ͍͏ຬײ w ελοϑಉ࢜Ͱͷឺ͕Ͱ͖ͨ w
ಛʹνʔϜͰڧ͘ײ͡ΒΕͨ w ࣍ճͷ։࠵ͷҙཉΘ͍ͨ w ࠓͷܦݧΛདྷͷ։࠵ʹ׆͔͍ͨ͠
ίΞελοϑͱͯ͠ͷۤ࿑ w جຊతʹॳΊͯ୲͢ΔλεΫ͕த৺Ͱख୳ΓͰ͜ͳͨ͠ w ໊ࡳͷҹۀऀΛબఆ͢ΔͨΊͷௐࠪ w ࠷ॳͦͦҹۀऀΛΒͳ͍ͨΊௐࠪେม w *MMVTUSBUPSͷMBZFSTͷจࣈԽ͚ʹ಄Λ·͞Εͨ w
ӳޠ൛ͩͱMBZFSTͷຊޠ͕จࣈԽ͚͢Δ w ӳޠ൛ΛΞϯΠϯετʔϧͯ͠ຊޠ൛ΛΠϯετʔϧ͢͜͠ͱͰղܾ w إൈ͖ύωϧͷ࡞͕։࠵िؒͰܾ·ͬͯٸ͍ͰରԠͨ͠ w ॳൃ༧ఆͩͬͨۀऀͰ։࠵·Ͱʹؒʹ߹Θͳ͍͜ͱ͕໌ w ଞͷελοϑͱڠྗͯ͠ผͷۀऀʹൃͯؒ͠ʹ߹Θͤͨ
νʔϜͷឺ w νʔϜͰຖिఆྫͷΦϯϥΠϯϛʔςΟϯάΛ։࠵ w λεΫͷਐḿঢ়گΛڞ༗ w ఆظతʹਐḿΛڞ༗͢Δ͜ͱͰνʔϜͷஂ͕݁ڧ·ͬͨ w ͦͷ΄͔ͷ࿈བྷ%JTDPSEͷςΩετνϟοτΛར༻ w
σβΠϯͷൃґཔҹۀऀͷೖߘσʔλͷϨϏϡʔΛґཔ w ෆ໌ͳͲΛؾܰʹ֬ೝͰ͖ͨ
ελοϑۀΛ௨ͯ͡ಘΒΕͨऩ֭ w ແࣄʹΧϯϑΝϨϯεΛେޭʹऩΊͨ͜ͱͰࣗ৴͕͍ͭͨ w ϊϕϧςΟͷҹʹ͍ͭͯͷݟΛಘͨ w ৗͷۀੜ׆ͰΔػձ͕ͳ͔ͬͨ w ಉ͡ελοϑͷ͕ؒͰ͖ͨ w
དྷελοϑ͢Δͱ͖͜ͷϝϯόʔͰελοϑΛΓ͍ͨͱࢥ͑ͨ w ੵۃతʹࣗͷҙݟΛൃݴͰ͖ΔΑ͏ʹͳͬͨ
ΧϯϑΝϨϯεͷཪͷ༠͍
ελοϑͷັྗ w ීஈͰ͖ͳ͍ܦݧΛੵΊΔ w ໊ࡳͳͲͷϊϕϧςΟͷ࡞ൃ w ΧϯϑΝϨϯεͷ։࠵ʹߩݙͰ͖Δ w ελοϑʹͳΔ͜ͱ͕৽ͨͳަྲྀͷػձΛಘΒΕΔ w
ΧϯϑΝϨϯεΛ࡞Δ͕ؒͰ͖Δ w ӡӦελοϑͱ͍͏ݞॻ͖Λ໊ΕΔ w ӡӦελοϑͱ͍͏ڹ͖͕Χοί͍͍
ཪͷޠΛ͙ w ·ͣཪͷޠͷొਓʹͳΔ w ۙͰ։࠵͞ΕΔΧϯϑΝϨϯεͷελοϑͷԠื͕͓͢͢Ί w ཧతʹ͍ۙͱؾܰʹࢀՃ͍͢͠ w ࣗͷׂʹैͬͯ४උӡӦͷλεΫΛ͜ͳ͢ w
ͬͯΈ͍ͨ͜ͱ͕͋ΕੵۃతʹࢀՃͯ͠ΈΔ w ຬΛ࣋ͯ͠։࠵Λܴ͑Δ w ఆ֎ͷτϥϒϧ͕ى͖ͯ߄ͯͣελοϑͷؒͱղܾʹऔΓΉ
ίΞελοϑ͔ελοϑ͔ w ͲͪΒॴͱॴ͕͋Δ w ࣗʹ߹͍ͦ͏ͳํΛબͿ w ະܦݧͰελοϑԠืେܴ w ୭Ͱ࠷ॳॳ৺ऀ w
ະܦݧͰίΞελοϑʹԠืͯ͠ͳ͍
ελοϑͷछྨͷॴͱॴ ελοϑͷछྨ ॴ ॴ ίΞελοϑ w ͱʹཪͷޠΛ͙ؒΛ࡞Γ͍͢ w اըͳͲͷΞΠσΞΛ࣮ݱͰ͖ΔՄೳੑ͕͋Δ
w ࣄલ४උͳͲͷ͕࣌ؒඞཁ ελοϑ w ࣄલ४උ͕΄ͱΜͲෆཁͳͷͰ࣌ؒͷ߆ଋ͕গͳ͍ w ͷΈͷۀͳͷͰࢀՃϋʔυϧ͍ w ελοϑͱަྲྀͰ͖ΔػձগͳΊ
ελοϑͱͯ͠ͷ৺ߏ͑ w ݞͷྗΛൈ͍ͯؾָʹࢀՃ͢Δ w ͋͘·Ͱ༗ࢤͷू·ΓͳͷͰॏ͘ߟ͑Δඞཁͳ͍ w ಉ͡ελοϑͷؒͨͪͱλεΫΛָ͠Ή w ࢀՃऀͱڞʹྑ͍ΧϯϑΝϨϯεΛ࡞Δ
·ͱΊ w 1)1ΧϯϑΝϨϯεΧϯϑΝϨϯεؔͷཪΛհ w ΧϯϑΝϨϯεελοϑͷັྗΛઆ໌
͝ਗ਼ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠