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
コードレビュー なんてしてられるかッ!!
Search
Yusuke Hirao
January 19, 2018
Technology
24
14k
コードレビュー なんてしてられるかッ!!
俺の話を聞け!! LT大会#7
結論markuplintというHTMLのLinter作った
Yusuke Hirao
January 19, 2018
Tweet
Share
More Decks by Yusuke Hirao
See All by Yusuke Hirao
ユニバーサルHTMLとWebのポテンシャル
yusukehirao
1
850
TypeScriptでつくるNode.jsパッケージ
yusukehirao
3
670
READMEにバッヂが欲しくてテストを書き始めました
yusukehirao
1
800
ユニバーサルなマークアップをしよう
yusukehirao
2
940
アクセシビリティチェックを自動化するためのmarkuplintのロードマップ
yusukehirao
2
2.2k
本当に必要ですか?そのJavaScript 〜スクロールイベント・リサイズイベント編〜
yusukehirao
0
680
自動化をデザインしよう
yusukehirao
1
920
JSONの型のはなし
yusukehirao
0
630
トランスパイラという文化(…とその後) - PHPカンファレンス福岡2016
yusukehirao
1
2.8k
Other Decks in Technology
See All in Technology
AI-Readyを目指した非構造化データのメダリオンアーキテクチャ
r_miura
1
330
webpack依存からの脱却!快適フロントエンド開発をViteで実現する #vuefes
bengo4com
4
3.4k
SCONE - 動画配信の帯域を最適化する新プロトコル
kazuho
1
380
20251027_マルチエージェントとは
almondo_event
1
440
OpenTelemetry が拡げる Gemini CLI の可観測性
phaya72
2
2.3k
AWS re:Invent 2025事前勉強会資料 / AWS re:Invent 2025 pre study meetup
kinunori
0
330
RemoteFunctionを使ったコロケーション
mkazutaka
1
120
[re:Inent2025事前勉強会(有志で開催)] re:Inventで見つけた人生をちょっと変えるコツ
sh_fk2
0
120
IoTLT@ストラタシスジャパン_20251021
norioikedo
0
140
【SORACOM UG Explorer 2025】さらなる10年へ ~ SORACOM MVC 発表
soracom
PRO
0
150
生成AI時代のPythonセキュリティとガバナンス
abenben
0
140
混合雲環境整合異質工作流程工具運行關鍵業務 Job 的經驗分享
yaosiang
0
190
Featured
See All Featured
The Language of Interfaces
destraynor
162
25k
Agile that works and the tools we love
rasmusluckow
331
21k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
127
54k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
130k
Designing Experiences People Love
moore
142
24k
The Straight Up "How To Draw Better" Workshop
denniskardys
238
140k
A Modern Web Designer's Workflow
chriscoyier
697
190k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Transcript
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ ͳΜͯͯ͠ΒΕΔ͔ο ԶͷΛฉ͚-5େձ גࣜձࣾσΟʔθϩ ϑϩϯτΤϯυΤϯδχΞ
ฏඌ༏య
2018 Yusuke Hirao, CC BY-ND. ͔݁Β
2018 Yusuke Hirao, CC BY-ND. )5.-ͷ-JOUFS࡞ͬͨ
2018 Yusuke Hirao, CC BY-ND. ࣗݾհ ฏඌ༏యʢͻΒ͓Ώ͏ͯΜʣ גࣜձࣾσΟʔθϩ ϑϩϯτΤϯυΤϯδχΞ ίϛϡχςΟ׆ಈ
ԬϑϩϯτΤϯυ༑ͷձ'VLVPLB'SPOUFOE'SPHT ԬϚʔΫΞοϓษڧձ CBTFS$.4Ϣʔβʔձ Yusuke Hirao @cloud10designs
2018 Yusuke Hirao, CC BY-ND. ࣾͷ ίʔσΟϯάΨΠυϥΠϯΛ ॻ͍ͨΜͰ͢
2018 Yusuke Hirao, CC BY-ND.
2018 Yusuke Hirao, CC BY-ND. ίʔσΟϯάελΠϧ͔Β ΞΫηγϒϧϚʔΫΞοϓɺ $44ઃܭɺ+4ͷςΫχοΫ͔Β ίʔσΟϯάࢥͳͲ ΤϞ͍ײ͡ͰςϯίΓ
2018 Yusuke Hirao, CC BY-ND. Ͱɺ ࡞͔ͬͨΒʹɺ ͪΌΜͱΨΠυϥΠϯʹ Ԋ͍ͬͯΔ͔֬ೝ͍ͨ͠
2018 Yusuke Hirao, CC BY-ND. Α͠ɺ
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ͠Α͏
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͢
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͢
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͋͢ɺλά໊খจࣈʹ ͍ͯͩ͘͠͞Ͷ
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͋͢ɺλά໊খจࣈʹ ͍ͯͩ͘͠͞ͶͱΓ͋͑ͣΠ ϯσϯτ͚ͭͯΒ͑·͔͢ʁ
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͋͢ɺλά໊খจࣈʹ ͍ͯͩ͘͠͞ͶͱΓ͋͑ͣΠ ϯσϯτ͚ͭͯΒ͑·͢ ͔ʁΨΠυϥΠϯಡΈ·͠ ͨʁ
2018 Yusuke Hirao, CC BY-ND. ͜͜+4ͷτϦΨʔʹͳΔ ͷͰBλάΑΓCVUUPOλάͭ ͔͍·͠ΐ͏͜͜VMMJͰՕ ॻ͖ʹ͠·͠ΐ͏OBWʹ BSJBMBCFMೖΕ·͠ΐ͏͔ϥ
ϯυϚʔΫϩʔϧ͚ͭ·͠ΐ ͏͓ɺด͡λά͕ൈ͚͍ͯ ·͓͢ɺBMU͕ͳ͍Ͱ͢Ͷ ͓ɺෆਖ਼ͳωετؔʹͳͬ ͯ·͋͢ɺλά໊খจࣈʹ ͍ͯͩ͘͠͞ͶͱΓ͋͑ͣΠ ϯσϯτ͚ͭͯΒ͑·͢ ͔ʁΨΠυϥΠϯಡΈ·͠ ͨʁ ͔͠ ઍϖʔδ
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ͠Α͏
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ͠Α͏ ͯ͠ΒΕΔ͔ο
2018 Yusuke Hirao, CC BY-ND. ϨϏϡʔࠔΛۃΊͨ ϨϏϡʔͷຊདྷͷత ίϯςΩετͱηϚϯςΟοΫͷ֬ೝ ΞΫηγϏϦςΟνΣοΫ ࣮ࡍʹؾΛऔΒΕͯ͠·ͬͨ͜ͱ
)5.-7BMJEBUJPO Ϋϥε໋໊نଇͳͲίʔσΟϯάΨΠυϥΠϯ४ڌͷ֬ೝ ্࣭ͳ͍͚ͲϝϯςͷͨΊͷΨΠυϥΠϯϧʔϧ͕ ΠϯσϯτϨϏϡʔͷಡΈ͢͞ͷͨΊͳͷʹͦΕΛࢦఠ ෛͷϧʔϓ
2018 Yusuke Hirao, CC BY-ND. -JOUFSΛಋೖ͠Α͏✅
2018 Yusuke Hirao, CC BY-ND. -JOUFSͷԸܙ +BWB4DSJQU&4-JOUͰɺ$444UZMFMJOUͰಋೖࡁΈ ࣍ͷ͜ͱ͍͍ͩͨࣗಈԽͰ͖Δ γϯλοΫενΣοΫ ίʔυελΠϧͷνΣοΫ
໋໊نଇͷνΣοΫ ΞϯνύλʔϯͷνΣοΫ ࢦఠ͢ΔͷػցͳͷͰਓ֨൱ఆʹड͚औΒΕʹ͍͘ ʮΤϥʔ͕ग़ͳ͍Α͏ʹίʔσΟϯά͍ͯͩ͘͠͞ʯͰย͘
2018 Yusuke Hirao, CC BY-ND. )5.-)JOUΛͬͯΈ͕ͨʜ جຊͷνΣοΫͪΖΜαϙʔτ ϓϥάΠϯ"1*Λ͍࣋ͬͯͨͷͰ࠷ॳͦΕͰؤுͬͨ ͔͍ͬͯ͘͠͠͏ͪʹ͕ϙϩϙϩ "1*͋ͬͯHVMQΤσΟλ͕ϓϥάΠϯʹରԠͯ͠ͳ͍
&4-JOUΈ͍ͨʹϑΥϧμ͝ͱͷϧʔϧઃఆ͕Ͱ͖ͳ͍ 47(ͳͲͷ֎དྷཁૉʹରԠ͍ͯ͠ͳ͍ ։ൃࢭ·ͬͯΔ͠
2018 Yusuke Hirao, CC BY-ND. ͭʔΘ͚Ͱ
2018 Yusuke Hirao, CC BY-ND. )5.--JOUFS࡞Γ·ͨ͠
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU /PEFKTͰಈ͘)5.--JOUFS ͦͷ͏ͪϒϥβ൛ ϓϥάΠϯ"1*Λ͍࣋ͬͯΔ
ਖ਼֬ͳϩέʔγϣϯΛͭ"45 %0.ϥΠΫͳπϦʔߏ͕ѻ͑Δ ཁૉ͝ͱʹϧʔϧΛ࠶ઃఆͰ͖Δ ରͷཁૉηϨΫλͰߜΓ͜ΊΔ ϑΥϧμ͝ͱʹϧʔϧΛઃఆͰ͖Δ ϧʔϧઃఆܧঝ͕Ͱ͖Δ )5.--JWJOHTUBOEBSEͷίϯςϯπϞσϧใΛͭ ֎དྷཁૉɾΧελϜཁૉɾ7JFXϥΠϒϥϦͷରԠΛݟਾ͑ͨઃܭ Τϥʔ͕ຊޠ ϩέʔϧͰఆ ·੍ͩ࡞த͚ͩͲ
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU ͦͦ͜͜ಈ͖·͢
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU 74$PEF֦ுެ։ࡁΈ
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU ॗʑϧʔϧͱՃத
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU ͕ΜͬͯυΩϡϝϯτॻ͍ͯ·͢
2018 Yusuke Hirao, CC BY-ND. Ͱɺ࡞ͬͯΈͯͷײ
2018 Yusuke Hirao, CC BY-ND. ָ͍͠
2018 Yusuke Hirao, CC BY-ND. ͳΜ͜Ε։ൃָ͍͠Μ ඞཁʹۦΒΕͯ࡞Γ࢝Ίͨʹͯ͠༧֎ʹָ͍͠ ΰϦΰϦ)5.-ΛѻͬͯΔͷʹϑϩϯτΤϯυ͡Όͳ͍ෆࢥٞײ ͍ΖΜͳֶͼ͕͋ͬͨ ͱʹ͔͘)5.--JWJOHTUBOEBSEಡΈ·ͬͨ͘
)5.-ͷߏจύʔεʹͨΒৄ͘͠ͳͬͨ $-*ͷԞਂ͞ ඪ४ೖྗग़ྗͱ͔ϑϩϯτΤϯυͰະ ࠶ؼॲཧͱ͔ਅ໘ʹऔΓΜͩͷॳΊ͔ͯ͠Εͳ͍ ϒϥβޓΛؾʹ͠ͳ͍ίʔσΟϯάͷշײ ͋ͱɺۙʑઍϖʔδͷʹཱͯΔ͜ͱ͕ ͖ͬΓ͍ͯ͠Δ೩͑Δಈػʹͳ͍ͬͯͨ
2018 Yusuke Hirao, CC BY-ND. తͱָཱ͍͕྆͠Ͱ͖ͦ͏Ͱ͋Δ ϨϏϡʔͷຊདྷͷత ίϯςΩετͱηϚϯςΟοΫͷ֬ೝ ΞΫηγϏϦςΟνΣοΫ ࣮ࡍʹؾΛऔΒΕͯ͠·ͬͨ͜ͱ
)5.-7BMJEBUJPO Ϋϥε໋໊نଇͳͲίʔσΟϯάΨΠυϥΠϯ४ڌͷ֬ೝ ্࣭ͳ͍͚ͲϝϯςͷͨΊͷΨΠυϥΠϯϧʔϧ͕ ΠϯσϯτϨϏϡʔͷಡΈ͢͞ʹͨΊͳͷʹͦΕΛࢦఠ ෛͷϧʔϓ
2018 Yusuke Hirao, CC BY-ND. తͱָཱ͍͕྆͠Ͱ͖ͦ͏Ͱ͋Δ ϨϏϡʔͷຊདྷͷత ίϯςΩετͱηϚϯςΟοΫͷ֬ೝ ΞΫηγϏϦςΟνΣοΫ ࣮ࡍʹؾΛऔΒΕͯ͠·ͬͨ͜ͱ
)5.-7BMJEBUJPO Ϋϥε໋໊نଇͳͲίʔσΟϯάΨΠυϥΠϯ४ڌͷ֬ೝ ্࣭ͳ͍͚ͲϝϯςͷͨΊͷΨΠυϥΠϯϧʔϧ͕ ΠϯσϯτϨϏϡʔͷಡΈ͢͞ʹͨΊͳͷʹͦΕΛࢦఠ ෛͷϧʔϓ త
2018 Yusuke Hirao, CC BY-ND. తͱָཱ͍͕྆͠Ͱ͖ͦ͏Ͱ͋Δ ϨϏϡʔͷຊདྷͷత ίϯςΩετͱηϚϯςΟοΫͷ֬ೝ ΞΫηγϏϦςΟνΣοΫ ࣮ࡍʹؾΛऔΒΕͯ͠·ͬͨ͜ͱ
)5.-7BMJEBUJPO Ϋϥε໋໊نଇͳͲίʔσΟϯάΨΠυϥΠϯ४ڌͷ֬ೝ ্࣭ͳ͍͚ͲϝϯςͷͨΊͷΨΠυϥΠϯϧʔϧ͕ ΠϯσϯτϨϏϡʔͷಡΈ͢͞ʹͨΊͳͷʹͦΕΛࢦఠ ෛͷϧʔϓ త ָ͍͠
2018 Yusuke Hirao, CC BY-ND. ͋͞ɺ
2018 Yusuke Hirao, CC BY-ND. ίʔυϨϏϡʔ͠Α͏
2018 Yusuke Hirao, CC BY-ND. 5IBOLZPV
2018 Yusuke Hirao, CC BY-ND. NBSLVQMJOU IUUQTHJUIVCDPN:VTVLF)JSBPNBSLVQMJOU NBSLVQMJOUQMVHJOUFYUMJOU IUUQTXXXOQNKTDPNQBDLBHFNBSLVQMJOUQMVHJOUFYUMJOU NBSLVQMJOUGPS74$PEF
IUUQTNBSLFUQMBDFWJTVBMTUVEJPDPNJUFNT JUFN/BNFZVTVLFIJSBPWTDPEFNBSLVQMJOU