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
出前館におけるFlutter活用事例
Search
株式会社出前館
June 10, 2024
0
680
出前館におけるFlutter活用事例
FlutterKaigi mini Osaka #1 with Mix Leap Study #75の登壇資料です
株式会社出前館
June 10, 2024
Tweet
Share
More Decks by 株式会社出前館
See All by 株式会社出前館
SpringBoot x TestContainerで実現するポータブル自動結合テスト
demaecan
0
230
これならできる!Kotlin・Spring・DDDを活用したAll in oneのマイクロサービス開発術
demaecan
2
610
出前館を支えるJavaとKotlin
demaecan
0
430
滑らかなユーザー体験も目指す注文管理のマイクロサービス化〜注文情報CSVダウンロード機能の事例〜
demaecan
1
400
Yahoo!クイックマート管理画面でNext.js + static exportsを選んだ理由
demaecan
1
100
出前館アプリにおけるFlutterアプリ設計とそれを支えるCICD環境の進化
demaecan
0
1.1k
出前館のマルチプロダクト戦略を支えるアーキテクチャ 〜技術的負債を解消しながら事業を多角化する〜
demaecan
1
310
新卒1年目の自分に伝えたかったエンジニアの成長に役に立つ話
demaecan
0
1.9k
新卒エンジニアが0からNon-BlockingなgPRCサーバーを作った話
demaecan
1
640
Featured
See All Featured
Making Projects Easy
brettharned
117
6.4k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.7k
Designing Experiences People Love
moore
142
24k
Java REST API Framework Comparison - PWX 2021
mraible
33
8.8k
Git: the NoSQL Database
bkeepers
PRO
431
66k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Rebuilding a faster, lazier Slack
samanthasiow
83
9.2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Being A Developer After 40
akosma
90
590k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
The Straight Up "How To Draw Better" Workshop
denniskardys
236
140k
The Power of CSS Pseudo Elements
geoffreycrofte
77
6k
Transcript
出前館におけるFlutter活用事例 株式会社出前館 田中優之 2024.6 @ Mix Leap Study #75 -
FlutterKaigi mini Osaka #1
ࣗݾհ ग़લؗͷ͝հ ͜Ε·ͰͷऔΓΈ ࠓޙͷ՝ͱΓ͍ͨ͜ͱ 01 02 03 04 Contents
ࣗݾհ ग़લؗͷ͝հ ͜Ε·ͰͷऔΓΈ ࠓޙͷ՝ͱΓ͍ͨ͜ͱ 01 02 03 04 Contents
ాத ༏೭ • 8FCαʔϏε։ൃͷͷͪ ΞϓϦ։ൃΛ୲ • ήʔϜΞϓϦ • ΧʔφϏΞϓϦ •
݄ ʙ ग़લؗΛ୲ ͜Ε·Ͱͷۀܦݧ ͦͷଞ • ྉཧ • ത࢜ ιϑτΣΞֶ גࣜձࣾग़લؗ ϓϩμΫτຊ෦ίϯγϡʔϚ෦ ΞϓϦ։ൃάϧʔϓ άϧʔϓϚωʔδϟ ॴଐ • -*/&Ϡϑʔגࣜձࣾ ژΦϑΟεॴଐ • גࣜձࣾग़લؗग़ ࣗݾհ
ࣗݾհ ग़લؗͷ͝հ ͜Ε·ͰͷऔΓΈ ࠓޙͷ՝ͱΓ͍ͨ͜ͱ 01 02 03 04 Contents
ग़લؗͷ͝հ .*44*0/ ςΫϊϩδʔͰ࣌ؒՁΛߴΊΔ 7*4*0/ ҬͷਓʑͷͤΛͭͳ͙ϥΠϑΠϯϑϥ 7"-6& ϗεϐλϦςΟ νϟϨϯδ ΫϦΤΠςΟϏςΟ
ࣗݾհ ग़લؗͷ͝հ ͜Ε·ͰͷऔΓΈ ࠓޙͷ՝ͱΓ͍ͨ͜ͱ 01 02 03 04 Contents
͜Ε·ͰͷऔΓΈ 'MVUUFS,BJHJͰͷൃද ओͳΞϓϦͷར༻ٕज़มભ • Ճໍళ͚ΞϓϦ 9BNBSJO • υϥΠόʔ͚ΞϓϦ 3FBDU/BUJWF •
ग़લؗΞϓϦ ΤϯυϢʔβ͚ 3FBDU/BUJWF • Ճໍళ͚ΞϓϦ 9BNBSJO 'MVUUFS • υϥΠόʔ͚ΞϓϦ 3FBDU/BUJWF 'MVUUFS • ग़લؗΞϓϦ ΤϯυϢʔβ͚ 3FBDU/BUJWF 'MVUUFS
͜Ε·ͰͷऔΓΈ 'MVUUFS,BJHJͰͷൃද ඇػೳཁ݅ • ίʔυϑϦʔζظؒΛઃ͚Δ͜ͱ͍͠ • 'MVUUFS൛ͷ։ൃͱطଘ3FBDU/BUJWF൛ͷػೳՃΛฒߦ͢Δ • 'MVUUFS൛ؖࠃνʔϜͰઌߦͯ͠ਐΊ ঃʑʹຊνʔϜ߹ྲྀ
• ຊଆϝϯόʔ'MVUUFSΛ͜Ε͔Βֶश͢Δ • ෆ۩߹ͳ͘ Ͱ͖Δ͚ͩૣ͘ϦϦʔε͢Δ ػೳཁ݅ • طଘ3FBDU/BUJWF൛ͱಉ༷ͷػೳΛఏڙ͢Δ ग़લؗΞϓϦ 3FBSDIJUFDUͷऔΓΈ
͜Ε·ͰͷऔΓΈ 'MVUUFS,BJHJͰͷൃද dϦάϨογϣϯςετͷݟ͠d Test Planning Test Analysis Test Design Test
Implementation Test Execu7on • εέδϡʔϧཱҊ • ίετࢼࢉ • ϖʔδػೳ୯Ґ ͰείΞϦϯά • είΞϦϯά݁Ռ Λ༻͍ͨ༏ઌܾ ఆ • ϋΠϨϕϧςετ έʔε࡞ • ςετ؍͢Γ߹ Θͤ • ςετέʔε࣮ • ςετέʔεमਖ਼ ςετ࣮ࢪ ࣍ͷϖʔδػೳΛ ݟ͠ ग़લؗΞϓϦ 3FBSDIJUFDUͷऔΓΈ
0 50 100 150 200 250 0 10 20 30
40 50 60 70 80 90 100 バグ件数(個) テストケース消化率(%) バグ曲線 ͜Ε·ͰͷऔΓΈ 'MVUUFS,BJHJͰͷൃද 他にも様々な⼯夫が あった上での成果 🙆
͜Ε·ͰͷऔΓΈ ͦͷޙ 6*ϦχϡʔΞϧ • 6*ͷΈมߋ FYը໘ભҠͳͲͷมߋ͠ͳ͍ • #MPDʹؔͯ͠ͷमਖ਼ͳ͠Ͱྃ • ͦͷଞɿσβΠϯγεςϜߏஙࡁΈ
• εέδϡʔϧɿd
͜Ε·ͰͷऔΓΈ ͦͷޙ 'MVUUFSΞοϓάϨʔυ • 'MVUUFS • 9DPEFͷόʔδϣϯΞοϓ͓Αͼ1SJWBDZ1PMJDZରԠ • ݩʑ͜ͷରԠͷ࣮ࢪ͢Δܭը͕ͩͬͨɺ'MVUUFSͷΞοϓά ϨʔυΛ͢Δඞཁ͕͋ΔͱΘ͔Γ߄ͯͨ
• $*$%ڥͷ࡞ۀௐ • 5FBNDJUZͱ͍͏$*πʔϧΛར༻ͯ͠શΞϓϦΛӡ༻ • Ϗϧυαʔό.BD4UVEJP ॾʑͷࣄʹΑΔ • ଞΞϓϦͷϦϦʔε༧ఆΛՃຯ͠ɺ9DPEFͷΞοϓάϨʔυ࣮ ࢪ • ˞ৄࡉΛ͢ηογϣϯͷϓϩϙʔβϧ J04%$ ग़ͯ͠·͢ iOSDCのプロポーザル へのQRコード
͜Ε·ͰͷऔΓΈ ͦͷޙ ͦͷଞ • 3FMFBTF5SBJOͷಋೖ • ϦϦʔεͱ࣭Λࢧ͑ΔΛΈԽ • ಋೖޙͷޮՌɿϦϦʔεௐ࡞ۀͷݮগɺ։ൃϦζϜͷఆண •
3FUFBNJOH • ৫ࣄͰɺओཁϝϯόʔ͕ • ॏཁͳυϝΠϯΛϦʔυ͍ͯͨ͠ϝϯόʔͩͬͨͷͰɺܭըత ʹ3FUFBNJOHΛ࣮ࢪ 5FBN5PQPMPHZΛ࠾༻͍ͯ͠ΔͷͰɺ ͦΕΛϕʔεʹ3FUFBNJOH • J04%$Ͱؔ͢ΔΛ͢ϓϩϙʔβϧΛग़ͯ͠·͢ͷͰ Ԡԉ͓ئ͍͠·͢ʂ iOSDCのプロポーザル へのQRコード
͜Ε·ͰͷऔΓΈ ͦͷޙ ͦͷଞ • Πϕϯτొஃ • 'PMEFS4USVDUVSF4UBUF.BOBHFNFOUͷ͜ͱͳͲઆ໌ • ࢿྉɺ໘ന͍ͱࢥ͏ͷͰͥͻ͝ཡ͍ͩ͘͞ʂ •
'MVUUFS8FCΛ༻͍ͨ4UHڥ • ՝ɿηΩϡϦςΟ্ͷཧ༝ͰࡏͰ։ൃऀҎ֎͕։ൃதΞϓ ϦΛݟΕͳ͍ • Ξϓϩʔνɿ'MVUUFS8FCͰڥߏங ϞόΠϧઐ༻ػೳ/( 発表資料への QRコード
ࣗݾհ ग़લؗͷ͝հ ͜Ε·ͰͷऔΓΈ ࠓޙͷ՝ͱΓ͍ͨ͜ͱ 01 02 03 04 Contents
ࠓޙͷ՝ͱΓ͍ͨ͜ͱ 69ͷ্ • ͍ʹ͍͘Օॴ͕͋Δͷվળ • γεςϜ͕େنͳͷͰɺ͕͔͔࣌ؒΔ͕ҰͭҰͭ೪Γڧ͘ਐΊΔ͔͠ͳ͍ ଟ༷ͳํ͕ར༻Ͱ͖ΔΞϓϦ • ΞΫηγϒϧͳΞϓϦ •
ಓͳ࡞ۀʹͳΔͱࢥ͏͕ɺٕज़తʹ՝ͱͳΔ͜ͱͦΜͳʹͳͦ͞͏ͳͷ ͰɺΓΓ͍ͨ 個⼈的なやりたいこ とを書いてます νʔϜͱͯ͠ͷΞτϓοτͷٻ • ΑΓڧ͍νʔϜɺͪΖΜʑͷۀָ͘͠ • εΩϧͷ෯ͱਂ͞ɺͲͪΒͷΩϟϦΞਐΊΔΑ͏ʹαϙʔτ • νʔϜྗͷ্ࢦ͚͢ͲɺݸͷྗΛଚॏ͍ͨ͠ ΤϯδχΞݸਓ͕Γ͍ͨ͜ͱ͕Ͱ͖ΔΑ͏ʹ • %FWFMPQFS&YQFSJFODFվળɺ%PDVNFOUJOHɺνʔϜશମͷεΩϧΞοϓ
THANK YOU