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
760
TypeScriptでつくるNode.jsパッケージ
yusukehirao
3
570
READMEにバッヂが欲しくてテストを書き始めました
yusukehirao
1
720
ユニバーサルなマークアップをしよう
yusukehirao
2
840
アクセシビリティチェックを自動化するためのmarkuplintのロードマップ
yusukehirao
2
2k
本当に必要ですか?そのJavaScript 〜スクロールイベント・リサイズイベント編〜
yusukehirao
0
560
自動化をデザインしよう
yusukehirao
1
850
JSONの型のはなし
yusukehirao
0
580
トランスパイラという文化(…とその後) - PHPカンファレンス福岡2016
yusukehirao
1
2.6k
Other Decks in Technology
See All in Technology
20分で分かるIAM全機能 (拡大版) / 20240903-jawsug-yokohama-iam
opelab
3
140
プログラム検証入門
riru
1
380
The XZ Backdoor Story
fr0gger
0
3.3k
AIで変わるテスト自動化:最新ツールの多様なアプローチ/ 20240910 Takahiro Kaneyama
shift_evolve
0
190
忙しい人のためのLangGraph概要まとめ
__ymgc__
1
150
PDF Viewer作成の今までとこれから
hunachi
0
270
アプリをリリースできる状態に保ったまま 段階的にリファクタリングするための 戦略と戦術 / Strategies and tactics for incremental refactoring
yanzm
6
650
自社開発した大規模言語モデルをどうプロダクションに乗せて運用していくか〜インフラ編〜
pfn
PRO
24
6.9k
プロダクトエンジニアを支えるための開発生産性向上施策
tsukakei
0
140
20240911_New_Relicダッシュボード活用例
speakerdeckfk
0
100
可視化により内部品質をあげるAIドキュメントリバース/20240910 Hiromitsu Akiba
shift_evolve
0
190
Oracle Database Backup Service:サービス概要のご紹介
oracle4engineer
PRO
0
4.1k
Featured
See All Featured
How To Stay Up To Date on Web Technology
chriscoyier
786
250k
Building Better People: How to give real-time feedback that sticks.
wjessup
359
18k
A designer walks into a library…
pauljervisheath
201
24k
Building Applications with DynamoDB
mza
89
6k
Large-scale JavaScript Application Architecture
addyosmani
508
110k
Typedesign – Prime Four
hannesfritz
39
2.3k
Optimising Largest Contentful Paint
csswizardry
29
2.8k
What the flash - Photography Introduction
edds
67
11k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
248
20k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
38
9.2k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
354
29k
Designing for Performance
lara
604
68k
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