$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Snow Monkey CM
Search
Takashi Kitajima
September 12, 2021
Programming
0
88
Snow Monkey CM
2021年9月10日に開催された「利用規約とプライバシーポリシーを通じたサイトの構築と基礎 WP ZoomUP #72」のスポンサー CM です。
Takashi Kitajima
September 12, 2021
Tweet
Share
More Decks by Takashi Kitajima
See All by Takashi Kitajima
Snow Monkey&unitone から見た WordPress エディターの変遷
inc2734
0
140
メンテナンス性を考慮した CSS 設計
inc2734
0
350
Snow Monkey とは
inc2734
0
1.2k
WordPress_テーマのつくりかた.pdf
inc2734
4
560
受託開発者だった僕が WordPress の有料テーマ開発者になって学んだこと
inc2734
1
1k
Snow Monkey(WordPress) による web コンテンツ制作の新しいカタチ【ビジネスパーソン向け】
inc2734
0
110
Snow Monkey とコミュニティ
inc2734
0
650
Snow Monkey における私の技術的偏愛
inc2734
0
580
受託をやめるな!
inc2734
0
1.8k
Other Decks in Programming
See All in Programming
ゲームの物理 剛体編
fadis
0
350
愛される翻訳の秘訣
kishikawakatsumi
3
330
chocoZAPサービス予約システムをNuxtで内製化した話
rizap_tech
0
160
大体よく分かるscala.collection.immutable.HashMap ~ Compressed Hash-Array Mapped Prefix-tree (CHAMP) ~
matsu_chara
2
220
AIコーディングエージェント(NotebookLM)
kondai24
0
200
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
150
堅牢なフロントエンドテスト基盤を構築するために行った取り組み
shogo4131
8
2.4k
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
120
Go コードベースの構成と AI コンテキスト定義
andpad
0
130
【CA.ai #3】Google ADKを活用したAI Agent開発と運用知見
harappa80
0
320
マスタデータ問題、マイクロサービスでどう解くか
kts
0
100
認証・認可の基本を学ぼう前編
kouyuume
0
250
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.2k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Site-Speed That Sticks
csswizardry
13
1k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.6k
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.3k
Music & Morning Musume
bryan
46
7k
How To Stay Up To Date on Web Technology
chriscoyier
791
250k
Building Adaptive Systems
keathley
44
2.9k
Visualization
eitanlees
150
16k
Statistics for Hackers
jakevdp
799
230k
Transcript
4OPX.POLFZ$.
w גࣜձࣾϞϯΩʔϨϯν w 4OPX.POLFZ 8PSE1SFTTͷςʔϚ w .881'PSN 8PSE1SFTTͷ͍߹ΘͤϑΥʔϜϓϥάΠϯ w 4NBSU$VTUPN'JFMET
8PSE1SFTTͷΧελϜϑΟʔϧυϓϥάΠϯ w #BTJT 4BTT$44ϑϨʔϜϫʔΫ ࣗݾհ ΩλδϚλΧγ !JOD
4OPX.POLFZ ԁ ੫ࠐ ϒϩοΫΤσΟλʔରԠ ΧελϚΠβʔ
։ൃऀ͚
4OPX.POLFZ#MPDLT ແྉ 8FCαΠτ੍࡞Ͱ͑Δ ΧελϜϒϩοΫΛ ͨ͘͞ΜՃ ͲͷςʔϚͰ༻Մೳ
ࠓ࠷ۙͷΞοϓσʔτͰ ಛʹؤுͬͨͷΛ ͭհ͍ͨ͠ͱࢥ͍·͢ɻ
ϒϩοΫͷΞΠίϯΛ৽
ϒϩοΫͷΞΠίϯΛ৽ Old New
λϒϒϩοΫ
λϒϒϩοΫ
λϒϒϩοΫ
λϒϒϩοΫ
λϒϒϩοΫ
ઃఆϑΝΠϧͷಡΈࠐΈํࣜ
w 4OPX.POLFZɺGVODUJPOTQIQʹॻ͘Α͏ͳίʔυΛ֤ॲཧ ͝ͱʹϑΝΠϧׂ͍ͯ͠Δʢ$44+4ಡΈࠐΈBQQTFUVQ BTTFUTQIQɺύϯͣؔ͘࿈BQQTFUVQCSFBEDSVNCTQIQͳ Ͳʣ w ׂ͢ΔϝϦοτɿͲ͜ʹԿͷॲཧ͕ॻ͔Ε͍ͯΔ͔Θ͔Γ͢ ͍ɺࢠςʔϚͰۭϑΝΠϧͰ্ॻ͖͢Δ͜ͱͰॲཧΛ·Δ͝ͱফ ͤΔ w
ׂ͢ΔσϝϦοτɿϑΝΠϧಡΈࠐΈ͕͍αʔόʔͰ ϖʔδͷಡΈࠐΈʹ͕͔͔࣌ؒΔ ઃఆϑΝΠϧͷಡΈࠐΈํࣜ
͡Ό͋ॏࢹͷਓׂ͍ͯ͠ΔϑΝΠϧΛશ෦ ݁߹ͯ͠ɺͦΕΛಡΈࠐΉΑ͏ʹ͢Εྑ͘Ͷʁ ઃఆϑΝΠϧͷಡΈࠐΈํࣜ
w ϖʔδΛ։͍ͨͱ͖ʹ݁߹ͨ͠ϑΝΠϧ͕ͳ͚Εɺ ֤ϑΝΠϧΛ݁߹ͤ͞Δ w ݁߹ͨ͠ϑΝΠϧ͕͋ΕͦΕΛಡΈࠐΉ w ݁߹ͨ͠ϑΝΠϧςʔϚʹϑΝΠϧͱͯ͠ Ωϟογϡ͞ΕΔ w ςʔϚΛΞοϓσʔτ͢Δ͔ɺΩϟογϡΫϦΞϘλϯ
Λԡ͢ͱ࠶݁߹͞ΕΩϟογϡ͞ΕΔ ઃఆϑΝΠϧͷಡΈࠐΈํࣜ
w ͱ͍͑ɺ୯७ʹ݁߹͢Δ͚ͩͰಈ͔ͳ͍ w VTF͕ॏෳ͢Δͱಈ͔ͳ͍ ͦͷ··݁߹ͯ͠ϑΝΠϧʹಉ͡VTF͕ఆٛ͞Εͨ ঢ়ଶʹͳΔͱίέΔ w ϑΝΠϧͷ్தͰSFUVSO͍ͯ͠Δॲཧ͕͋Δ ͱɺ݁߹ͨ͠ͱ͖ʹͦ͜Ͱશମͷॲཧ͕ऴྃ
ͯ͠͠·͏ ઃఆϑΝΠϧͷಡΈࠐΈํࣜ
w VTF͕ॏෳ͢Δͱಈ͔ͳ͍ ˠׅހߏจʹΑΔෳͷ໊લۭؒͷએݴ ઃఆϑΝΠϧͷಡΈࠐΈํࣜ // ͔͜͜ΒϑΝΠϧ A namespace Hoge; use
ClassA; use ClassB; …… // ͔͜͜ΒϑΝΠϧB namespace Fuga; use ClassA; // ͜͜ͰίέͪΌ͏ …… // ͔͜͜ΒϑΝΠϧ A namespace Hoge { use ClassA; use ClassB; …… } // ͔͜͜ΒϑΝΠϧB namespace Fuga { use ClassA; …… } ˠ
w ϑΝΠϧͷ్தͰSFUVSOͪ͠Ό͏ ˠॲཧશମΛDBMM@VTFS@GVODͰғΜͰແ໊ؔԽ ઃఆϑΝΠϧͷಡΈࠐΈํࣜ // ͔͜͜ΒϑΝΠϧ A namespace Hoge {
if ( ! $foo ) { // ͜͜Ͱൈ͚ΔͱϑΝΠϧB ෦ͷ // ॲཧ͕ߦΘΕͳ͍ return; } …… } // ͔͜͜ΒϑΝΠϧB namespace Fuga { use ClassA; …… } // ͔͜͜ΒϑΝΠϧ A namespace Hoge { call_user_func( function() { if ( ! $foo ) { return; } …… } ); } // ͔͜͜ΒϑΝΠϧB namespace Fuga { use ClassA; call_user_func( function() { …… } ); } ˠ
͋Μ·Γڹ͕ͳ͍ͷͰ ͥͻࢼͯ͠Έ͍ͯͩ͘͞ʂ