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
57
20190122_vdom.pdf
ozaki25
January 22, 2019
Tweet
Share
More Decks by ozaki25
See All by ozaki25
20210526_a11y.pdf
ozaki25
0
100
20210525_react_next.pdf
ozaki25
0
79
Webフロントエンドはなぜ複雑なのか
ozaki25
1
77
utility first css
ozaki25
0
41
20201225_how_to_learn_technology.pdf
ozaki25
0
110
20201124_blitz.pdf
ozaki25
0
52
20200727_liff_app.pdf
ozaki25
1
550
20200721_web_vitals.pdf
ozaki25
0
56
20200624_web_otp_api.pdf
ozaki25
1
77
Other Decks in Technology
See All in Technology
20分で完全に理解するGrafanaダッシュボード
hamadakoji
3
670
Google Cloud Next '24でブログを10本書いた方法と勉強会を沸かせた方法
yasumuusan
0
300
複雑な構成要素を持つUIとの向き合い方 〜新・支出グラフでの実例〜 / B43 TECH TALK
nakamuuu
0
140
生成AIの変革の時代に、直近1年で直面した課題とその解決策
ktc_wada
0
310
Databricks における 『MLOps』
databricksjapan
2
170
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
2.1k
競技としてのKaggle、役に立つKaggle
yu4u
3
1.8k
プロンプトエンジニアリングでがんばらない-Agentic Workflow へ-近藤憲児
kenjikondobai
3
850
私が trocco を推す理由
__allllllllez__
1
240
ワールドカフェI /チューターを改良する / World Café I and Improving the Tutors
ks91
PRO
0
120
家族アルバム みてねにおけるGrafana活用術 / Grafana Meetup Japan Vol.1 LT
isaoshimizu
1
770
【NW X Security JAWS#3】L3-4:AWS環境のIPv6移行に向けて知っておきたいこと
shotashiratori
0
350
Featured
See All Featured
Writing Fast Ruby
sferik
621
60k
Building Better People: How to give real-time feedback that sticks.
wjessup
355
18k
[RailsConf 2023] Rails as a piece of cake
palkan
23
4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
40
4.4k
Embracing the Ebb and Flow
colly
80
4.1k
Being A Developer After 40
akosma
57
580k
Making Projects Easy
brettharned
108
5.5k
Ruby is Unlike a Banana
tanoku
96
10k
Pencils Down: Stop Designing & Start Developing
hursman
117
11k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
227
16k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
187
16k
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.ͷద༻ͷ͕ॻ͍ͯ͋Γ·͢
͋Γ͕ͱ͏͍͟͝·ͨ͠