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
20190122_vdom.pdf
Search
ozaki25
January 22, 2019
Technology
0
71
20190122_vdom.pdf
ozaki25
January 22, 2019
Tweet
Share
More Decks by ozaki25
See All by ozaki25
20210526_a11y.pdf
ozaki25
0
180
20210525_react_next.pdf
ozaki25
0
140
Webフロントエンドはなぜ複雑なのか
ozaki25
1
130
utility first css
ozaki25
0
100
20201225_how_to_learn_technology.pdf
ozaki25
0
160
20201124_blitz.pdf
ozaki25
0
93
20200727_liff_app.pdf
ozaki25
1
650
20200721_web_vitals.pdf
ozaki25
0
110
20200624_web_otp_api.pdf
ozaki25
1
130
Other Decks in Technology
See All in Technology
Retrospectiveを振り返ろう
nakasho
0
150
激動の時代を爆速リチーミングで乗り越えろ
sansantech
PRO
1
220
20251102 WordCamp Kansai 2025
chiilog
0
380
Amazon Q Developer CLIをClaude Codeから使うためのベストプラクティスを考えてみた
dar_kuma_san
0
300
進化する大規模言語モデル評価: Swallowプロジェクトにおける実践と知見
chokkan
PRO
3
410
猫でもわかるAmazon Q Developer CLI 解体新書
kentapapa
1
220
.NET 10のBlazorの期待の新機能
htkym
0
170
abema-trace-sampling-observability-cost-optimization
tetsuya28
0
410
実践マルチモーダル検索!
shibuiwilliam
2
500
DSPy入門
tomehirata
6
830
SREのキャリアから経営に近づく - Enterprise Risk Managementを基に -
shonansurvivors
1
620
オブザーバビリティと育てた ID管理・認証認可基盤の歩み / The Journey of an ID Management, Authentication, and Authorization Platform Nurtured with Observability
kaminashi
2
1.6k
Featured
See All Featured
Writing Fast Ruby
sferik
630
62k
Designing for humans not robots
tammielis
254
26k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Thoughts on Productivity
jonyablonski
71
4.9k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.7k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.5k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
658
61k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
22k
Transcript
Ծ%0.ֵ໋
࣍ ࠓճ͢༰ Ծ%0.͕ඞཁͱ͞ΕΔഎܠͱྺ࢙ Ծ%0.ͷΈ ·ͱΊ
ࠓճ͢༰
ࠓճ͢༰ w 8&# %#13&447PMͷʮԾ%0. ֵ໋ʯͱ͍͏ίϥϜ͕ݩωλͰ͢ w ϕʔε্هίϥϜͰ͕͢ݴٴ͞Εͯͳ͍෦ ʹؔͯ͠ಠࣗͷݟղଟؚ͘Έ·͢ w ΦϦδφϧ͕ಡΈ͚ͨΕିͤΔͷͰֻ
͚͍ͯͩ͘͞ https://gihyo.jp/magazine/wdpress/archive/2018/vol106
Ծ%0.͕ඞཁͱ͞ΕΔഎܠͱྺ࢙
%0.ͷྺ࢙ᶃ ).5-ͷੜ ࠒ w ͱͱݚڀऀ͚ͷจΛॻͨ͘ΊʹΘΕ͍ͯͨ w λΠτϧ͕͋Γ UJUMF ɺݟग़͕͋͠Γ
I I ɺύϥά ϥϑ͕͋Γ Q w Πϯλʔωοτͷൃలʹͬͯ༻్͕͕͍ͬͯ͘
%0.ͷྺ࢙ᶄ %0. %PDVNFOU0CKFDU.PEFM ͷੜ w %0.ͱ w )5.-Λಈతʹ੍ޚ͢Δ"1*ͷ༷
w ඪ४Խஂମ8$ʹΑͬͯࡦఆ͞ΕΔ
%0.ͷྺ࢙ᶄ %0. %PDVNFOU0CKFDU.PEFM ͷੜ w %0.ͱ w )5.-Λಈతʹ੍ޚ͢Δ"1*ͷ༷
w ඪ४Խஂମ8$ʹΑͬͯࡦఆ͞ΕΔ +BWB4DSJQUʹΑͬͯ)5.-Λಈతʹ੍ޚͰ͖ΔΑ͏ʹͳΔ ಈతʹ੍ޚͰ͖ΔΑ͏ʹͳΔ ϖʔδભҠͤͣʹ)5.-Λॻ͑ΒΕΔ
Ծ%0.ొલᶃ "KBYֵ໋ ࠒ w (PPHMF.BQTͷֵ৽ੑ w ΞΫγϣϯʹԠͯ͡ಈతʹαʔόΞΫηε ͦͷϨεϙϯεʹԠͯ͡ϖʔδΛॻ͖͑Δ w
K2VFSZͷ࣌ w ϒϥβؒͷඇޓΛٵऩͯ͘͠ΕΔ w ࣌ϒϥβؒͷޓੑ͕͔ͬͨ͠
Ծ%0.ొલᶄ 8FCٕज़ͷधཁͷߴ·Γ w J1IPOFͷ'MBTIඇࡌܾఆ ˞ w ϦονϝσΟΞͷ࣮धཁ͕+BWB4DSJQUʹूத w /PEFKTOQNΤίγεςϜͷख़
ࠒʙ w +BWB4DSJQUͷݴޠతͳශऑ͞ΛΧόʔ w $P⒎FF4DSJQU #SPXTFSJGZ ※ https://www.apple.com/hotnews/thoughts-on-flash/
·ͱΊ w %0.ʹΑͬͯ)5.-ಈతͳͷʹ w 'MBTIͷସͱͯ͠+BWB4DSJQUͷཁٻ͕ෳࡶԽ w /PEFKTOQNʹΑΔΤίγεςϜͷख़ͱෳࡶԽ
Ծ%0.ԿΛղܾ͢Δͷ͔
ΫϥΠΞϯταΠυٕज़ͷ՝ w K2VFSZͷΑ͏ͳԾ%0.Ͱͳ͍ैདྷͷٕज़ͷ՝ w ن͕େ͖͘ෳࡶԽ͢ΔͱϝϯςࠔͰٕज़తෛ࠴ͱͳΔ ෳࡶͳཁٻʹ͑͏ΔΞʔΩςΫνϟ͕ඞཁ
ೖग़ྗͷΞτϛοΫੑ αʔόαΠυͷ߹ w ΞτϛοΫੑ͕͋Δ w ϦΫΤετϨεϙϯε㲈8FCϖʔδ w ಉ͡63-ʹΞΫηε͢Ε ಉ͡ϖʔδ͕දࣔ͞ΕΔ
αʔό Ϸμεφϕ(URL) ϹφϪЀφ(HTML) ϒϥβ ϹЀύϷЀν WebϧЄυ
ೖग़ྗͷΞτϛοΫੑ ΫϥΠΞϯταΠυͷ߹ w ΞτϛοΫੑ͕ͳ͍ w ϦΫΤετϨεϙϯε㱠8FCϖʔδ w αʔόαΠυͰੜͨ͠)5.-ॳظঢ় ଶʹ͗͢ͳ͍ w
%0.ૢ࡞ʹΑΓ͋ΒΏΔঢ়ଶॻ͖ ͑ΒΕಘΔ αʔό Ϸμεφϕ(URL) ϹφϪЀφ(HTML) ϒϥβ ϹЀύϷЀν WebϧЄυ DOM 䨗䟵͞ DOM 䨗䟵͞ WebϧЄυ WebϧЄυ
ΫϥΠΞϯταΠυʹΞτϛοΫੑΛ "TJT w ΫϥΠΞϯταΠυ༷ʑͳཁ ҼͰঢ়ଶ͕มΘΔ w ϘλϯΛΫϦοΫͨ͠Βʙɺ "KBYͰσʔλΛऔಘͨ͠Βʙ w ঢ়ଶ͕มΘΔʹ%0.ͷ্ॻ
͖͕ܧ͗͞Ε͍ͯ͘ 5PCF w ঢ়ଶ͕ߋ৽͞ΕΔʹঢ়ଶʹଈ ͨ͠Ұҙͳ7JFXΛग़ྗ͍ͨ͠ w ʮೖྗʹج͍ͮͨঢ়ଶܾఆͷΞ τϛοΫੑʯΛखʹೖΕ͍ͨ
ΫϥΠΞϯταΠυͷΞτϛοΫੑ༗ແͷྫ ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ Ճ Hello Ճ Hello Hello ΫϦοΫ
μϷϐμͫ͵ͩ;Ψ䭥ᎣͭͼᥝᔰΨ᭄ےͯΡ ίϕϬϐμ͚͢ ίϕϬϐμ͘͢Ρ Ճ Hello Ճ Hello Hello ΫϦοΫ \DPVOU^ ˣ \DPVOU^ μϷϐμͫ͵Οᇫ䙪ΨๅෛͯΡ ᇫ䙪ΨزኮᶎΨ䯤塈ͭൈኮͯΡ ᇫ䙪
ΫϥΠΞϯταΠυͷΞτϛοΫੑ༗ແͷྫ ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ Ճ Hello Ճ Hello Hello ΫϦοΫ
μϷϐμͫ͵ͩ;Ψ䭥ᎣͭͼᥝᔰΨ᭄ےͯΡ ίϕϬϐμ͚͢ ίϕϬϐμ͘͢Ρ Ճ Hello Ճ Hello Hello ΫϦοΫ \DPVOU^ ˣ \DPVOU^ μϷϐμͫ͵Οᇫ䙪ΨๅෛͯΡ ᇫ䙪ΨزኮᶎΨ䯤塈ͭൈኮͯΡ ᇫ䙪 ඳը༰ͷܧ͗͠Ͱͳ͘ ঢ়ଶΛݩʹશମΛ࠶ߏங͢Δ
ΫϥΠΞϯταΠυͷΞτϛοΫੑ༗ແͷྫ ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ Ճ Hello Ճ Hello Hello ΫϦοΫ
μϷϐμͫ͵ΟᥝᔰΨ᭄ےͯΡ ίϕϬϐμ͚͢ ίϕϬϐμ͘͢Ρ Ճ Hello Ճ Hello Hello ΫϦοΫ \DPVOU^ ˣ \DPVOU^ μϷϐμͫ͵Οᇫ䙪ΨๅෛͯΡ ᇫ䙪ΨزኮᶎΨ䯤塈ͭൈኮͯΡ ঢ়ଶΛ֬ఆ͢Δεςοϓͱ )5.-Λߋ৽͢Δεςοϓ͕ ໌֬ʹ͞ΕΔ ඳը༰ͷܧ͗͠Ͱͳ͘ ঢ়ଶΛݩʹશମΛ࠶ߏங͢Δ
ΫϥΠΞϯταΠυͷΞτϛοΫੑ༗ແͷྫ ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ Ճ Hello Ճ Hello Hello ΫϦοΫ
μϷϐμͫ͵ΟᥝᔰΨ᭄ےͯΡ ίϕϬϐμ͚͢ ίϕϬϐμ͘͢Ρ Ճ Hello Ճ Hello Hello ΫϦοΫ \DPVOU^ ˣ \DPVOU^ μϷϐμͫ͵Οᇫ䙪ΨๅෛͯΡ ᇫ䙪ΨزኮᶎΨ䯤塈ͭൈኮͯΡ ͜ΕΛ࣮ݱ͢ΔͨΊʹ ͔ܽͤͳ͍ͳٕज़͕Ծ%0.
ΞτϛοΫੑ͕͋ΔͱԿ͕͍͍ͷ͔ ۀͰ͖Δ w ϓϩάϥϚʔͷؔ৺ঢ়ଶཧ w σβΠφʔͷؔ৺ೖྗΛݩʹͨ͠ग़ྗ ϝϯςφϏϦςΟ্ w 7JFXͷ࠶ݱੑ͕୲อ͞ΕΔͷͰཧ͍͢͠ w
7JFX͕Γ͞ΕΔͷͰঢ়ଶཧͷςετ͕͍͢͠
Ծ%0.ͷΈ
ͳͥԾ%0.͕ඞཁ͔ w ΞτϛοΫੑ͕͋ΔΞʔΩςΫνϟ w ঢ়ଶΛͱʹը໘શମΛ࠶ߏங͢Δ w ը໘શମͷॻ͖͑ίετ͕ߴ͘ϢʔβϏϦςΟଛͳ͏ Ծ%0.Λ͏͜ͱͰ͜ͷ͕ղফ͞ΕΔ
Ծ%0.ͱ3FBM%0. 3FBM%0. w ը໘ʹඳը͞Ε͍ͯΔ%0.π Ϧʔͷ͜ͱ Ծ%0. ڱٛ
w 3FBM%0.ͱͰରԠ͢Δߏ ମͰϝϞϦ্ʹอ͍࣋ͯ͠Δ 9 : ; 9 : ;
Ծ%0.ͷΞϧΰϦζϜ RealDOM 㫪మDOM \DPVOU^ w ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ CVUUPO )FMMP EJW CVUUPO
)FMMP EJW
Ծ%0.ͷΞϧΰϦζϜ RealDOM 㫪మDOM \DPVOU^ w ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ CVUUPO )FMMP EJW CVUUPO
)FMMP EJW ΫϦοΫ
Ծ%0.ͷΞϧΰϦζϜ RealDOM 㫪మDOM \DPVOU^ ˣ \DPVOU^ w ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ CVUUPO )FMMP
EJW CVUUPO )FMMP EJW ΫϦοΫ ঢ়ଶΛߋ৽
Ծ%0.ͷΞϧΰϦζϜ RealDOM 㫪మDOM \DPVOU^ w ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ CVUUPO )FMMP EJW CVUUPO
)FMMP EJW before CVUUPO )FMMP EJW )FMMP ߋ৽ޙͷঢ়ଶΛݩʹ Ծ%0.Λ࠶ߏங after
Ծ%0.ͷΞϧΰϦζϜ RealDOM 㫪మDOM \DPVOU^ w ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ CVUUPO )FMMP EJW CVUUPO
)FMMP EJW before CVUUPO )FMMP EJW )FMMP after ࠩΛൺֱ͢Δ
Ծ%0.ͷΞϧΰϦζϜ RealDOM 㫪మDOM \DPVOU^ w ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ CVUUPO )FMMP EJW before
CVUUPO )FMMP EJW )FMMP after ࠩΛ3FBM%0.ʹ өͤ͞Δ CVUUPO )FMMP EJW )FMMP
Ծ%0.ͷΞϧΰϦζϜ RealDOM 㫪మDOM \DPVOU^ w ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ CVUUPO )FMMP EJW )FMMP
CVUUPO )FMMP EJW )FMMP ߋ৽ྃ
Ծ%0.ͷΞϧΰϦζϜ RealDOM 㫪మDOM \DPVOU^ w ϘλϯΛΫϦοΫ͢Δͱཁૉ͕૿͑Δαϯϓϧ CVUUPO )FMMP EJW )FMMP
CVUUPO )FMMP EJW )FMMP 3FBM%0.ͷߋ৽࠷খݶͳͷͰॻ͑ͷίετ࠷খݶ
Ծ%0.Λ༻͍ͨϑϨʔϜϫʔΫ w 3FBDU͕ઌۦ͚తͳϑϨʔϜϫʔΫͰ͋Δ w ࠷ۙͷ41"ϑϨʔϜϫʔΫͲΕԾ%0.Λ࠾༻͍ͯ͠Δ w ˞Ծ%0.ͷΞϧΰϦζϜͷ͜ͱΛ୯ʹԾ%0. ٛ
ͱ͍͏ ͜ͱ͋Δ
·ͱΊ
·ͱΊ w ΫϥΠΞϯταΠυͷཁٻෳࡶԽ͖͍ͯͯ͠Δ w 'MBTIͷସͱͯ͠ͷ+BWB4DSJQU w ෳࡶͳཁٻΛܧଓతʹຬ͍ͨͯ͘͠ඞཁ͕͋Δ w ΞτϛοΫੑͷ͋ΔΞʔΩςΫνϟ͕ඞཁ w
Ծ%0.Λ༻͍Δ͜ͱͰ͜ΕΒͷཁٻΛຬͨ͢͜ͱ͕Ͱ͖Δ
ิ w ίϥϜશষͰ͕ͨ͠ࠓճͨ͠ͷষʙষͰ͢ w ষʹΫϥΠΞϯταΠυ.7$͔Β'MVYͷมભͷ w ষʹ8FCҎ֎ͷԾ%0.ͷద༻ͷ͕ॻ͍ͯ͋Γ·͢
͋Γ͕ͱ͏͍͟͝·ͨ͠