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
2k
Dartにおける静的解析 / FlutterKaigi 2022
hisaichi5518
November 17, 2022
Tweet
Share
More Decks by hisaichi5518
See All by hisaichi5518
技術力あげたい
hisaichi5518
3
3.7k
ソフトウェアエンジニアが品質保証を学んでわかったこと / What software engineers have learned about quality assurance
hisaichi5518
6
9.3k
10X と Flutter / 10X with Flutter
hisaichi5518
0
2.1k
ひさいちとの1on1
hisaichi5518
0
2.5k
しあわせ推進委員会 / Shiawase Promotion Committee
hisaichi5518
0
1.1k
2017-03-23
hisaichi5518
0
3.7k
Pepabo Tech Conference 7
hisaichi5518
1
1.1k
かんばんやりたい
hisaichi5518
0
1k
エンジニアの立ち居振る舞い
hisaichi5518
2
1.5k
Other Decks in Technology
See All in Technology
DynamoDB でスロットリングが発生したとき/when_throttling_occurs_in_dynamodb_short
emiki
0
250
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
個人でもIAM Identity Centerを使おう!(アクセス管理編)
ryder472
4
230
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
TypeScriptの次なる大進化なるか!? 条件型を返り値とする関数の型推論
uhyo
2
1.7k
IBC 2024 動画技術関連レポート / IBC 2024 Report
cyberagentdevelopers
PRO
1
110
AWS Lambda のトラブルシュートをしていて思うこと
kazzpapa3
2
180
プロダクト活用度で見えた真実 ホリゾンタルSaaSでの顧客解像度の高め方
tadaken3
0
180
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
130
EventHub Startup CTO of the year 2024 ピッチ資料
eventhub
0
120
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
330
Why App Signing Matters for Your Android Apps - Android Bangkok Conference 2024
akexorcist
0
130
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
28
2k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Designing the Hi-DPI Web
ddemaree
280
34k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Building an army of robots
kneath
302
43k
4 Signs Your Business is Dying
shpigford
180
21k
How STYLIGHT went responsive
nonsquared
95
5.2k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
8
900
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
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.