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
2.2k
Dartにおける静的解析 / FlutterKaigi 2022
hisaichi5518
November 17, 2022
Tweet
Share
More Decks by hisaichi5518
See All by hisaichi5518
技術力あげたい
hisaichi5518
4
4.6k
ソフトウェアエンジニアが品質保証を学んでわかったこと / What software engineers have learned about quality assurance
hisaichi5518
6
11k
10X と Flutter / 10X with Flutter
hisaichi5518
0
2.3k
ひさいちとの1on1
hisaichi5518
0
2.6k
しあわせ推進委員会 / Shiawase Promotion Committee
hisaichi5518
0
1.2k
2017-03-23
hisaichi5518
0
3.7k
Pepabo Tech Conference 7
hisaichi5518
1
1.1k
かんばんやりたい
hisaichi5518
0
1.1k
エンジニアの立ち居振る舞い
hisaichi5518
2
1.6k
Other Decks in Technology
See All in Technology
マーケットプレイス版Oracle WebCenter Content For OCI
oracle4engineer
PRO
4
1.3k
米軍Platform One / Black Pearlに学ぶ極限環境DevSecOps
jyoshise
2
410
Black Hat USA 2025 Recap ~ クラウドセキュリティ編 ~
kyohmizu
0
540
CloudFormationコンソールから、実際に作られたリソースを辿れるようになろう!
amixedcolor
1
190
旧から新へ: 大規模ウェブクローラの Perl から Go への移行 / YAPC::Fukuoka 2025
motemen
3
920
Introducing RFC9111 / YAPC::Fukuoka 2025
k1low
1
250
ソフトウェア開発現代史: 55%が変化に備えていない現実 ─ AI支援型開発時代のReboot Japan #agilejapan
takabow
7
4.3k
ABEJA FIRST GUIDE for Software Engineers
abeja
0
3.2k
Flutterで実装する実践的な攻撃対策とセキュリティ向上
fujikinaga
2
430
[mercari GEARS 2025] Keynote
mercari
PRO
1
270
「O(n log(n))のパフォーマンス」の意味がわかるようになろう
dhirabayashi
0
180
手を動かしながら学ぶデータモデリング - 論理設計から物理設計まで / Data modeling
soudai
PRO
24
5.7k
Featured
See All Featured
Statistics for Hackers
jakevdp
799
220k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
34
2.3k
Unsuck your backbone
ammeep
671
58k
YesSQL, Process and Tooling at Scale
rocio
174
15k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.1k
Stop Working from a Prison Cell
hatefulcrawdad
272
21k
Site-Speed That Sticks
csswizardry
13
960
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Facilitating Awesome Meetings
lara
57
6.6k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Music & Morning Musume
bryan
46
6.9k
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.