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
ESLintとCyclomatic complexityの話
Search
Kenya Hoshi
July 13, 2019
Programming
0
730
ESLintとCyclomatic complexityの話
ESLintを使って、JavaScriptのコード内でCyclomatic complexity(循環的複雑度)が高い箇所を特定するお話です。
Kenya Hoshi
July 13, 2019
Tweet
Share
More Decks by Kenya Hoshi
See All by Kenya Hoshi
Nice to meet you, Deno!
yahooshiken
0
110
コンポーネント管理の失敗とこれからのやっていき💪
yahooshiken
2
690
2019/07/11_POLを支えるProduct teamとmonday.com
yahooshiken
1
83
採用活動は究極のオンボーディングである
yahooshiken
1
880
エンジニアインターンが考えるマネジメントキャリアパス
yahooshiken
0
1.7k
Other Decks in Programming
See All in Programming
SwiftUIで使いやすいToastの作り方 / How to build a Toast system which is easy to use in SwiftUI
lovee
3
140
コーンフレークから始める モデリング会話入門
ogurotakayuki
0
370
HUIT新歓2024「競技プログラミング、やってみませんか?」
slephy2784
1
270
サイコロで理解する統計的仮説検定の考え方
tatamiya
4
930
ONE WEDGE_company_guide
1wedge_one
0
470
What We Can Learn From OSS
inouehi
0
420
Site Reliability Engineering for GMO
pyama86
8
1k
単体テストを書かない技術 #phpcon_odawara
o0h
PRO
27
8.2k
CA.swift19 恋するAIアプリ開発の裏側
oskmr
0
360
MicrosoftのPlatform Engineeringガイドを読んで実際になにかやってみた
ymd65536
1
320
Netty Chicago Java User Group 2024-04-17
sullis
0
170
dbtのドメイン分割による データ基盤の改善とDigdagとの連携
sakama
0
270
Featured
See All Featured
Optimising Largest Contentful Paint
csswizardry
8
2.4k
The Power of CSS Pseudo Elements
geoffreycrofte
60
5k
What's new in Ruby 2.0
geeforr
337
31k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
2
3.4k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
357
22k
Why Our Code Smells
bkeepers
PRO
331
56k
Imperfection Machines: The Place of Print at Facebook
scottboms
260
12k
The Straight Up "How To Draw Better" Workshop
denniskardys
227
130k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
659
120k
A better future with KSS
kneath
231
16k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
221
21k
Design by the Numbers
sachag
274
18k
Transcript
&4-JOUͱ $ZDMPNBUJDDPNQMFYJUZͷ !ZBIPPTIJLFO 4VTUBJOBCMF'SPOUFOE
ࣗݾհ w ໂᜌ݈)PTIJNVSF,FOZB w !ZBIPPTIJLFO w পߴઐˠେࡕେֶجૅֶ෦ٳֶத w גࣜձࣾ10-ΤϯδχΞ w
Likes:8FC'SPOUFOE 3FBDU 5ZQF4DSJQU &MN )3 4BB4 .BOBHFNFOU
ʮྑ͍ʯίʔυͱʁ ಥવͰ͕͢ʜ
8IBU`Tl$MFBO$PEFz ࢲɺࣗͷίʔυ͕ΤϨΨϯτͰޮྑ͍͜ͱΛΈ·͢ɻ ϩδοΫόά͕ೖΓࠐΈʹ͍͘Α͏ʹ୯७Ͱ͋Δ͖Ͱɺ ґଘੑอक͕༻ҙͱͳΔΑ͏ʹ࠷খݶʹ͖͢Ͱ͋Γɺ ΤϥʔॲཧҰ࿈ͷઓུʹଇͬͯશͰͳ͚ΕͳΒͣɺ ޙʑɺଞͷਓ͕ཧʹཪଧͪ͞Ε͍ͯͳ͍࠷దԽΛߦ͏ ༠ʹ͔ΒΕͯɺίʔυ͕͙ͪΌ͙ͪΌʹͳͬͯ͠·Θͳ͍Α͏ɺ ࣮ߦޮ࠷ߴʹ͍ۙͷͰͳ͚ΕͳΓ·ͤΜɻ ΫϦʔϯίʔυͱͭͷ͜ͱΛ্ख͘Δ͜ͱͰ͢ɻ #KBSOF4USPVTUSVQ
։ൃऀʹͱͬͯʮྑ͍ʯίʔυ Մಡੑ͕ߴ͍ʢSFBEBCMFʣ อकੑ͕ߴ͍ʢNBJOUBJOBCMFʣ ϘΫ͕ࢥ͏
ͦΜͳ؆୯ʹʮྑ͍ʯίʔυ ॻ͚ͳ͍ ͱ͍͑ɺ
ͳ͔ͥʁ
None
͜͜Ͱڥ൜ࡑֶͷΛ ࣏͕҆ѱԽ͢Δ·Ͱʹ࣍ͷܦաΛͨͲΔɻ ݐͷ૭͕յΕ͍ͯΔͷΛ์ஔ͢ΔͱɺͦΕ͕ʮ୭֘۠ʹ ରؔ͠৺Λ͍ͬͯͳ͍ʯͱ͍͏αΠϯͱͳΓɺ൜ࡑΛى͜͢͠ ͍ڥΛ࡞Γग़͢ɻ ΰϛͷϙΠࣺͯͳͲͷܰ൜ࡑ͕ى͖Δɻ ॅຽͷϞϥϧ͕Լͯ͠ɺҬͷৼڵɺ҆શ֬อʹڠྗ͠ͳ͘ͳ ΔɻͦΕ͕͞ΒʹڥΛѱԽͤ͞Δɻ ڟѱ൜ࡑΛؚΊͨ൜ࡑ͕ଟൃ͢ΔΑ͏ʹͳΔɻ
ιϑτΣΞ։ൃͷݱͰ ࣅͨΑ͏ͳޫܠ͋Γ·ͤΜ͔ʁ
#SPLFO8JOEPX5IFPSZ ࣏҆Λճ෮ͤ͞Δʹ ɾҰݟແͰ͋ͬͨΓɺܰඍͳடংҧߦҝͰऔΓక·Δ ʢ͝Έ͖ͪΜͱผࣺͯͯ͠ΔͳͲʣ ɾܯ৬һʹΑΔύτϩʔϧަ௨ҧͷऔΓక·ΓΛڧԽ͢Δ ɾҬࣾձܯ৬һʹڠྗ͠ɺடংͷҡ࣋ʹྗ͢Δ
ׂΕͨ૭Λ์ஔ͓͔ͯ͠ͳ͍ #PZ4DPVU3VMF ɾѱ͍ઃܭɺؒҧͬͨҙࢥܾఆɺ࣭ͷѱ͍ίʔ υɺൃݟͱಉ࣌ʹશͯम෮͢Δ ɾ͠ਖ਼͘͠म෮͢Δ͚ͩͷ͕࣌ؒͳ͚Ε ɺͦͷࢫΛΘ͔Γ͘͢ίϝϯτͳͲͰ໌ ࣔ͢Δ
-FBWFUIJTXPSMEBMJUUMF CFUUFSUIBOZPVGPVOEJU ͕ࣗ࠷ॳʹݟͨ࣌ΑΓɺੈքΛ͍͍ॴʹ͘͢ྗ͠Α͏ 3PCFSU#BEFO1PXFMM
Ͳ͏ͬͯιʔείʔυͷ Λૣظൃݟ͢Δ͔ʁ ͡Ό͋ɺ
ͦ͜Ͱ
&4-JOUΛ͏ϝϦοτ ຊ࣭తͰͳ͍ϨϏϡʔ͕ݮΔ ੩తղੳʹΑΔෆ۩߹ͷൃݟ
&4-JOUΛ͏ϝϦοτ ຊ࣭తͰͳ͍ϨϏϡʔ͕ݮΔ ੩తղੳʹΑΔෆ۩߹ͷൃݟ
ຊ࣭తͰͳ͍ϨϏϡʔ const person = { name: “Steve Jobs”, age: 45
}; ɾ0CKFDUͷ࠷ޙͷϓϩύςΟʹίϯϚ͚ͭͯཉ ͍͠ͳɻHJUͷ͕ࠩΑΓΘ͔Γ͍͔͢ΒͶɻ ɾϘΫμϒϧΫΥʔτΑΓγϯάϧΫΥʔτͷ ํ͕͖ͳΜͩɻ4IJGUΛԡͣ͞ʹೖྗͰ͖Δ͔Β Ͷɻ
ୀ۶ͳ͜ͱ&4-JOUʹΒͤΑ͏ ɾਓ͕ؒϓϩάϥϜͷॻ͖ํͷҧ ͍Λࢦఠ͢Δ͜ͱɺ݂Ͱ݂Λચ ͏ऴΘΓͷͳ͍૪͍ΛੜΈग़͢ ɾਓؒؔͷѱԽΛڪΕͯɺࢦఠ Λ͠ͳ͍ͷιϑτΣΞͷʮׂ Εͨ૭ʯΛ์ஔ͢Δ͜ͱ ɾຊདྷɺਓ͕ؒΔ͖αʔϏε ϩδοΫ༷ͷϨϏϡʔʹूத ͠Α͏
&4-JOUΛ͏ϝϦοτ ຊ࣭తͰͳ͍ϨϏϡʔ͕ݮΔ ੩తղੳʹΑΔෆ۩߹ͷൃݟ
੩తղੳͱʁ ίʔυΛ࣮ߦͤͣʹߦ͏ݕূ ɾίʔυͷՄಡੑʹؔ͢Δ ɹɹΠϯσϯτͳͲͷॻࣜҧ ɹɹ໋໊نҧ ɾίʔυͷෳࡶ͞ͳͲʹؔ͢Δݕূ ɹɹΫϥεɺϝιουͷॲཧͷෳࡶ͞ ɹɹΫϥεؒͷґଘؔ
ࠓͷຊ ͬͱ
$ZDMPNBUJDDPNQMFYJUZ ॥తෳࡶ
ʮ॥తෳࡶʯͱʁʁʁ ɾ5IPNBT.D$BCF͕։ൃͨ͠ ιϑτΣΞଌఆ๏ͷҰछ ɾϓϩάϥϜͷ੍ޚϑϩʔΛάϥϑͱͯ͠ දݱ͠ɺܭࢉ͞ΕΔɻ ɾJG FMTF GPS TXJUDI͕ଟ͍ذύλʔϯ ͕ଟ͍΄Ͳෳࡶ͕ߴ͍
ɾ॥తෳࡶ͕ߴ͍΄Ͳɺόάͷࠞೖ͕ ߴ͍ͱݴΘΕ͍ͯΔɻ
&4-JOUͰ $ZDMPNBUJDDPNQMFYJUZ { "complexity": ["error", 10] } Λɺ͋ͳͨͷFTMJOUSDʹՃ͢Δ͚ͩʂ؆୯ʂ
ෳࡶΛଌΔπʔϧͰ ͜Μͳͷ͋Γ·ͨ͠ ͦͷଞʹ
FTBOBMZTJTQMBUP +BWB4DSJQUͷίʔυΛղੳͯ͠ɺίʔυߦ ෳࡶεςοϓͳͲΛՄࢹԽͯ͘͠ΕΔ OQNύοέʔδ IUUQTXXXOQNKTDPNQBDLBHFQMBUP
࣮ࡍͷγεςϜͰݕূͯ͠Έͨ
ࠓճͷݕূରγεςϜ ɾ݄pSTUDPNNJUͷ3FBDUϓϩδΣΫτ ɾॳظϑϩϯτΤϯυઐΤϯδχΞਓ ɾۀҕୗͱΠϯλʔϯੜͷͱྦͷ݁থ ɾνʔϜϝϯόʔʮෛ࠴ͦ͏ʜʯ
QMBUPͰͷݕূ݁Ռ ສߦʂ ͼͬ͘Γʂ ͓ʁ ҙ֎ͱେৎʁ
&4-JOUͰͷݕূ݁Ռ ສߦͷதͰFSSPSʂࢥͬͯΑΓগͳ͍ʜ☺
॥తෳࡶͱόάࠞೖͷؔ ࢀߟɿIUUQTXXXJOGPRDPNOFXTDZDMPNBUJDDPNQMFYJUZ ॥తෳࡶ όάࠞೖ֬
·ͱΊ ɾϦϑΝΫλϦϯάΛͲ͔͜ΒखΛ͚Δ͔ͷ ํΛܾΊΔஅࡐྉ͕ू·ͬͨʂ ɹϦϑΝΫλલޙͰ͕Ͳ͏ͳΔָ͔͠Έ ɾνʔϜϝϯόʔͷίʔυʹରͯ͠ͷةػҙࣝ ͕ߴ·ͬͨ ɹΞʔΩςΫνϟ৽ϓϩδΣΫτ࢝ಈʂ
5IBOLT