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
Dartにおける静的解析 / FlutterKaigi 2022
Search
hisaichi5518
November 17, 2022
Technology
0
1.9k
Dartにおける静的解析 / FlutterKaigi 2022
hisaichi5518
November 17, 2022
Tweet
Share
More Decks by hisaichi5518
See All by hisaichi5518
ソフトウェアエンジニアが品質保証を学んでわかったこと / What software engineers have learned about quality assurance
hisaichi5518
6
8.9k
10X と Flutter / 10X with Flutter
hisaichi5518
0
2k
ひさいちとの1on1
hisaichi5518
0
2.4k
しあわせ推進委員会 / Shiawase Promotion Committee
hisaichi5518
0
1.1k
2017-03-23
hisaichi5518
0
3.6k
Pepabo Tech Conference 7
hisaichi5518
1
1k
かんばんやりたい
hisaichi5518
0
970
エンジニアの立ち居振る舞い
hisaichi5518
2
1.4k
見極め判断・妄想判断
hisaichi5518
0
1.5k
Other Decks in Technology
See All in Technology
SRECon 2024 Keynote: Is It Already Time To Version Observability? (Signs Point To Yes)
charity
2
130
From here to resilience - a travel guide
ufried
1
250
仕事の対話を AI でハックする考え方とプロセス 〜 AI と協働できる人材へ 〜
yoshizaki
11
3.7k
Unity Catalog 技術ディープダイブ
databricksjapan
1
140
Improve developer experience with Spring Interface Clients Spring I/O 2024
olgamaciaszek
0
140
온디바이스 AI 및 로컬 AI의 도전 과제 / Challenges of On-Device AI and Local AI
inureyes
PRO
0
860
【OpsJAWS】踏み台サーバーって何がうれしいんだっけ?
hssh2_bin
10
3.7k
TCPポート使い切り事件
motooka
1
130
『インタプリタの作り方』の紹介 / Let's enjoy crafting interpreters
mktakuya
0
230
いまからでも遅くない!仮想化基盤運用者に向けたコンテナ基盤移行で気にすべきポイント
moribito
0
120
AWS でのクラウド時代のログ活用
itotsum
1
160
機械学習モデルの運用と実用的なアプローチ
databricksjapan
0
290
Featured
See All Featured
A better future with KSS
kneath
231
17k
Faster Mobile Websites
deanohume
300
30k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
246
20k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
How To Stay Up To Date on Web Technology
chriscoyier
782
250k
Building an army of robots
kneath
300
42k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
23
1.7k
Building Flexible Design Systems
yeseniaperezcruz
321
37k
Music & Morning Musume
bryan
42
5.7k
Atom: Resistance is Futile
akmur
260
25k
Building Adaptive Systems
keathley
32
1.9k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
26
2.4k
Transcript
©︎ 2022 10X, Inc. %BSUʹ͓͚Δ੩తղੳ 1
2 ࣗݾհ ©︎ 2022 10X, Inc. !IJTBJDIJ גࣜձࣾ9ιϑτΣΞΤϯδχΞ 'MVUUFS💙 OBUJWF@XFCWJFXMJOUJOH
©︎ 2022 10X, Inc. 3 ੩తղੳͬͯͳΜͩʁ
4 ੩తղੳͬͯͳΜͩʁ ©︎ 2022 10X, Inc. l੩తίʔυղੳ ͍͖ͤͯίʔυ͔͍͖ͤɺTUBUJDDPEFBOBMZTJT ·ͨ੩తϓϩ άϥϜղੳ
TUBUJDQSPHSBNBOBMZTJT ͱɺίϯϐϡʔλͷιϑτΣΞͷղੳख ๏ͷҰछͰ͋Γɺ࣮ߦϑΝΠϧΛ࣮ߦ͢Δ͜ͱͳ͘ղੳΛߦ͏͜ͱɻz Ҿ༻ݩIUUQTKBXJLJQFEJBPSHXJLJ੩తίʔυղੳ
5 ղੳͬͯͳʹ͢Δͷʁ ©︎ 2022 10X, Inc. ίʔυͷՄಡੑΛԼ͛ͨΓόάΛੜΈ͘͢͢ΔͳͲͰආ͚Δ͖ίʔυͷॻ͖ํΛ ϧʔϧͱͯ࣋ͪ͠ɺϧʔϧʹ͢ΔίʔυͷൃݟͱܯࠂΛߦ͏ɻͦͯͦ͠ͷϧʔϧʹ ߹͏Α͏ʹࣗಈͰमਖ਼Ͱ͖ΔͳΒमਖ਼͢Δ ˞ࠓճͷεϥΠυͰͷఆٛ
6 ۩ମྫEBSUBOBMZ[F ©︎ 2022 10X, Inc.
7 ۩ମྫEBSU fi Y ©︎ 2022 10X, Inc.
©︎ 2022 10X, Inc. 8 9Ͱ ੩తղੳΛͲ͏׆༻͍ͯ͠Δʁ
9 େલఏ fl VUUFSBOBMZ[FEBSUBOBMZ[FͬͯΔ ©︎ 2022 10X, Inc. ɾBOBMZTJT@PQUJPOTZBNMͰར༻͢ΔϧʔϧΛઃఆͰ͖Δ ɾݸͣͭϧʔϧΛࢦఆͰ͖Δ͕ɺϕετϓϥΫςΟεʹΔͷ͕͍͍
ɾ࠷ۙɺެࣜͰ fl VUUFS@MJOUT MJOUT͕͋Δ ɾ9ͰQFEBOUJDΛ͍ͬͯΔɻ(PPHMF෦͚Ͱࠓඇਪ
©︎ 2022 10X, Inc. 10 ϧʔϧʹ͢Δίʔυͷൃݟͱܯࠂ Ͱಠࣗʹ͍ͬͯΔ͜ͱ
11 ϧʔϧʹ͢ΔίʔυͷൃݟͱܯࠂͰಠࣗʹ͍ͬͯΔ͜ͱ Ұ෦ ©︎ 2022 10X, Inc. ɾ 'MVUUFS ಛఆͷॴҎ֎Ͱ*NQPSUͯ͠΄͘͠ͳ͍ϑΝΠϧΛJNQPSU͍ͯ͠Δ߹ʹΤϥʔ
ɾ 'MVUUFS ࣗલͰఆ͍ٛͯ͠Δ5FYU4UZMFҎ֎Λར༻͢ΔͱΤϥʔ ɾ αʔό 'JSFTUPSFͷ*/ΫΤϦʹมΛࢦఆͨ͠ΒΤϥʔ ɾ αʔό ςετ࣌ʹFYQFDU-BUFS͕ඞཁͳ࣌ʹFYQFDUΛར༻͍ͯ͠ΔͱΤϥʔ ˞9αʔόαΠυ%BSUͰ͢
12 ಛఆͷॴҎ֎Ͱ*NQPSUͯ͠΄͘͠ͳ͍ϑΝΠϧΛJNQPSU͍ͯ͠Δ߹ʹΤϥʔ ©︎ 2022 10X, Inc. ɾ9ఏڙΞϓϦɺ8FCͱϞόΠϧΞϓϦʹରԠ͍ͯ͠Δ ɾ8FCͰϏϧυ͢Δ࣌ͱϞόΠϧΞϓϦͰϏϧυ͢Δ࣌ͰಡΈࠐΈ͍ͨϑΝΠϧ͕ҧ͏ͷͰ BQQEBSUΛܦ༝ͯ͠JNQPSU͢ΔΑ͏ʹ͍ͯ͠Δ ɾXFC@BQQEBSU
NPCJMF@BQQEBSUΛJNQPSU͞ΕΔͷආ͚͍ͨ
13 ࣗલͰఆ͍ٛͯ͠Δ5FYU4UZMFҎ֎Λར༻͢ΔͱΤϥʔ ©︎ 2022 10X, Inc. ɾ9Ͱɺར༻͢Δ5FYU4UZMFΛ5FYU4UZMFTͱ͍͏Ϋϥεʹ·ͱΊͯఆ͍ٛͯ͠Δ ɾ։ൃऀ͕ࣗલͰ5FYU4UZMFΛఆٛͯ͠ར༻͢Δͷආ͚͍ͨ
14 'JSFTUPSFͷ*/ΫΤϦʹมΛࢦఆͨ͠ΒΤϥʔ ©︎ 2022 10X, Inc. ɾ'JSFTUPSF*/ΫΤϦʹΛ࠷େݸ͔͠ࢦఆͰ͖ͳ੍͍ݶ͕͋Δɻݸࢦఆ͢Δͱ࣮ߦ࣌ ʹΤϥʔʹͳΔ ɾมΛ͍ͯ͠Δͱ։ൃڥͰؾ͚ͣຊ൪ͰΤϥʔʹͳΔ͜ͱ͕͋ΔͷͰආ͚͍ͨ
15 'JSFTUPSFͷ*/ΫΤϦʹมΛࢦఆͨ͠ΒΤϥʔ ©︎ 2022 10X, Inc. ɾྻΛͦͷ··ͤΤϥʔʹͳΒͳ͍Α͏ʹ͍ͯ͠Δ ɾݸ·Ͱ͑ͯͳ͍
16 ςετ࣌ʹFYQFDU-BUFS͕ඞཁͳ࣌ʹFYQFDUΛར༻͍ͯ͠ΔͱΤϥʔ ©︎ 2022 10X, Inc. ɾςετ࣌ʹFYQFDUʹ'VUVSFʜΛ͢ͱBXBJU͞Εͣɺ࣍ͷߦͷॲཧʹҠͬͯ͠·͏ͷͰආ ͚͍ͨ
©︎ 2022 10X, Inc. 17 ͲͷΑ͏ʹ࣮͔ͨ͠ʁ
18 લఏEBSUBOBMZ[FͱEBSU fi Yͷ՝ ©︎ 2022 10X, Inc. ɾ%BSUʹɺEBSUBOBMZ[FͱEBSU fi
Y͕͋Δ ɾ͔͠͠EBSUBOBMZ[FEBSU fi Yʹ։ൃऀ͕ಠࣗϧʔϧΛఆٛ͢ΔΈ͕·ͩͳ͍ ɾͳͷͰɺಠࣗϧʔϧΛ࡞͍ͨ͠߹։ൃऀ͕EBSUBOBMZ[FͱEBSU fi Yͱಉ͡Α͏ͳ࣮Λ ࣗલͰ࣮͢Δඞཁ͕͋Δ IUUQTHJUIVCDPNEBSUMBOHMJOUFSJTTVFT
19 $-*ίϚϯυฤ ©︎ 2022 10X, Inc. ɾ%BSU4%,ʹؚ·ΕΔMJOUFSQBDLBHFΛ͙࣮͑͢Ͱ͖Δ ɾϧʔϧͷॻ͖ํMJOUFSʹ͋Δϧʔϧͷ࣮ΛಡΊ0, ɾIUUQTHJUIVCDPNEBSUMBOHMJOUFS ϝϦοτ
w*%&্ʹࢦఠ༰Λදࣔ͢Δ͜ͱ͕Ͱ͖ͳ͍ wར༻͢ΔͷMJOUFSͷެ։͞Εͨ"1*Ͱͳ͍ͷͰյΕΔ͔͠Εͳ͍ σϝϦοτ
20 $-*ίϚϯυ࣮ྫ ©︎ 2022 10X, Inc.
21 $-*ίϚϯυ࣮ߦྫ ©︎ 2022 10X, Inc.
22 ࣮ࡍ࡞ͬͯΈͯ ©︎ 2022 10X, Inc. ɾ͙͢࡞Εͯศརʂ ɾίϚϯυ͕͋Δͬͯ͜ͱ(JUIVC"DUJPOTͳͲ$*্Ͱಈ͔ͤΔͷͰศར ɾ͚Ͳ։ൃͯ͠Δͱ͖ʹ*%&্Ͱࢦఠ͞Εͳ͍ͱؾͮ͘ͷʹΕͯ։ൃମݧ͕ྑ͍ͱݴ͑ͳ͍
23 BOBMZ[FSQMVHJOฤ ©︎ 2022 10X, Inc. w*%&্ʹࢦఠ༰Λදࣔ͢Δ͜ͱ͕Ͱ͖Δ ϝϦοτ w࣮͢Δྔ͕ଟ͍͠σόοά͕େม $-*ίϚϯυࣗલͰ࡞Δඞཁ͋Γ
wϧʔϧͷఆٛࣗલ࣮ͳͷͰɺ͋·ΓࢀߟʹͳΒͳ͍͔ σϝϦοτ
24 BOBMZ[FSQMVHJOͰ࣮͢Δඞཁ͕͋Δͷ ©︎ 2022 10X, Inc. ɾϧʔϧʹҧ͢Δ͔ݕূ͢Δ "OBMZ[FS ɾҧͨ͠ίʔυͷܯࠂ͢Δ
3FQPSUFS ɾ"OBMZ[FSͱ3FQPSUFSΛ·ͱΊΔ "OBMZ[F$PNNBOE ɾBOBMZ[FSQMVHJO͔Βݺͼग़͞Εͯ"OBMZ[F$PNNBOEΛ࣮ߦ͢Δ "OBMZ[FS1MVHJO ɾ$-*ίϚϯυ͔Βݺͼग़͞Εͯ"OBMZ[F$PNNBOEΛ࣮ߦ͢Δ $MJ3VOOFS
25 BOBMZ[FSQMVHJOฤ࣮ྫ ©︎ 2022 10X, Inc. -JOUJOHͦΕΒͷ࣮Λ༻ҙ͍ͯ͠ΔͷͰݺͼग़͚ͩ͢ IUUQTQVCEFWQBDLBHFTMJOUJOH
26 ࣮ࡍ࡞ͬͯΈͯ ©︎ 2022 10X, Inc. ɾ*%&্ʹࢦఠ༰͕දࣔ͞ΕΔͷͰ͙͢ؾ͚ͮͯศར ɾ࣮ͨͩͱ"OBMZ[FS1MVHJOͷσόοά͕େม ɾͱΓ͋͑ͣಈ͘ܗʹ͢ΔͷͰिؒɺϦϑΝΫλϦϯάͯ͠ʴिؒ͘Β͍
27 BOBMZ[FSQMVHJO͕ಈ͍͍ͯͳ͍͔͠Εͳ͍࣌ͷσόοάςΫ ©︎ 2022 10X, Inc. ɾFYFDVUJPOQBUIͷதɺఆ͍ͯͨ͠༰ʹͳ͍ͬͯΔ͔ ɾ)0.&EBSU4FSWFSQMVHJO@NBOBHFSͷQMVHJOEBSUΛ࣮ߦͯ͠ΈͯΤϥʔʹͳΔ͔֬ ೝ ɾ"OBMZ[FSQMVHJOͰ%FCVHHFSΛ͏
Γํ͕ਖ਼͍͔͠ඍົ
28 ·ͣɺجຊ ©︎ 2022 10X, Inc. ɾ*OUFMJ+Λ͍·͢ ɾ%BSU"OBMZUJDTλϒʹҠಈͯ͠ࣃंΛΫϦοΫ͢Δ ͱl7JFXBOBMZ[FSEJBHOPTUJDTzͱ͍͏ͷ͕ग़ΔͷͰ ΫϦοΫ
ɾ"OBMZTJT4FSWFS%JBHOPTUJDT্ཱ͕͕ͪΔͷͰɺ 1MVHJOTλϒʹҠಈ ɾࠨͷঢ়ଶͩͬͨΒਖ਼͘͠ಈ͍͍ͯΔ
29 FYFDVUJPOQBUIͷதɺఆ͍ͯͨ͠༰ʹͳ͍ͬͯΔ͔ ©︎ 2022 10X, Inc. ͓͔͍࣌͠ϑΝΠϧΛফ͢ͱΔ
30 )0.&EBSU4FSWFSQMVHJO@NBOBHFSͷQMVHJOEBSUΛ࣮ߦͯ͠ΈͯΤϥʔʹͳΔ͔֬ೝ ©︎ 2022 10X, Inc. ΤϥʔʹͳͬͯΔ࣌ͳ͓͢
31 "OBMZ[FSQMVHJOͰ%FCVHHFSΛ͏ ©︎ 2022 10X, Inc. ͜ͷυΩϡϝϯτ͕ৄ͍͠ʂ IUUQTHJUIVCDPN8PSLJWBPWFS@SFBDUUSFF NBTUFSUPPMTBOBMZ[FS@QMVHJOEFCVHHJOHUIF QMVHJO
32 ݱঢ়ͱࠓޙ ©︎ 2022 10X, Inc. ɾ-JOUJOHͱ͍͏ύοέʔδΛ࡞ͬͯ9Ͱར༻͍ͯ͠Δ ɾJOWFSUBTF͔ΒDVTUPN@MJOUͱ͍͏ύοέʔδ͕݄ʹग़ͨ ɾ͜ΕMJOUJOHಉ༷؆୯ʹBOBMZ[FSQMVHJOΛ࡞ΕΔ ɾ9ͰMJOUJOHΛΊͯDVTUPN@MJOUʹҠߦ͢Δ༧ఆ
ɾͳͷͰMJOUJOHͰͳ͘DVTUPN@MJOUΛͬͯͶ
©︎ 2022 10X, Inc. 33 ίʔυͷॻ͖͑
34 1SPWJEFS͔Β3JWFSQPEͷஔ͖͑ ©︎ 2022 10X, Inc. ɾ݄ࠒɺ1SPWJEFS͔Β3JWFSQPEʹҠߦ͍ͨ͠ ɾͪ·ͪ·มߋ͢ΔͷେมͳͷͰҰؾʹஔ͖͍͑ͨ ɾ੩తղੳͰ1SPWJEFS͔Β3JWFSQPEʹҰؾʹஔ͖͑Δͧʂ
©︎ 2022 10X, Inc. 35 ͲͷΑ͏ʹ࣮͔ͨ͠ʁ
36 EBSU@DPEFNPE ©︎ 2022 10X, Inc. ɾϧʔϧʹϚον͢Δίʔυͷॻ͖͕͑ग़དྷΔศརύοέʔδ ɾ"45ɺਖ਼نදݱΛॻ͖͑ͷ݅ʹग़དྷΔ ɾIUUQTQVCEFWQBDLBHFTDPEFNPE ɾSJWFSQPEͰ3JWFSQPEYܥ͔ΒYܥͷஔ͖͑DPEFNPEΛ࣮ͬͯ͞Ε͍ͯΔ
37 EBSU@DPEFNPEͷ࣮ྫ ©︎ 2022 10X, Inc.
38 ࣮ࡍ࡞ͬͯΈͯ ©︎ 2022 10X, Inc. ɾDPEFNPEͰίʔυΛॻ͖͑Δͷ؆୯ʹͰ͖ͯศར ɾϏϧυ͕ग़དྷΔͱ͜Ζ·Ͱग़དྷ͚ͨͲɺಈ͖͕ෆԺͩͬͨͷͰϚʔδ͠ͳ͔ͬͨ ɾҰؾʹஔ͖͑Δʹɺ࡞ΓࠐΉඞཁ͕͋Δ ɾͪΌΜͱΔͳΒখ࣮ͯ͘͞͠খ࣮͘͞ߦ͍ͯ͘͠ͷ͕Α͔ͬͨ
ɾࠓۀҕୗͷਓʹखͬͯΒͬͯखಈͰઈࢍҠߦத
©︎ 2022 10X, Inc. 39 ·ͱΊ
40 ·ͱΊ ©︎ 2022 10X, Inc. ɾ੩తղੳΛ͑ίʔυͷϧʔϧҧΛݟ͚ͭͨΓमਖ਼ग़དྷͯศརʂϦ ϑΝΫλϦϯάʹ͑Δ ɾEBSUBOBMZ[FͱEBSU fi
YΧελϜϧʔϧ͕ར༻Ͱ͖ͳ͍ͷͰಠࣗϧʔϧ Λఆ͍ٛͨ͠ͳΒࣗલͰ࣮͢Δඞཁ͕͋Δ ɾϧʔϧҧΛݟ͚ͭΔͨΊͷ࣮DVTUPN@MJOUΛָ͑ʹ࣮Ͱ͖Δ ɾBOBMZ[FSQMVHJOMJOUJOH͕ࢀߟʹͳΔ͔ ɾίʔυͷॻ͖͑ͷ࣮DPEFNPEΛָ͑ʹ࣮Ͱ͖Δ ɾҰؾʹΔͷେมͳͷͰখ࣮͘͞ɺ࣮ߦɺվળ͍ͯ͘͠ͷ͕ྑͦ͞ ͏
41 ͋Γ͕ͱ͏͍͟͝·ͨ͠ ©︎ 2022 10X, Inc.