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
460
出前館におけるFlutter活用事例
FlutterKaigi mini Osaka #1 with Mix Leap Study #75の登壇資料です
株式会社出前館
June 10, 2024
Tweet
Share
More Decks by 株式会社出前館
See All by 株式会社出前館
出前館アプリにおけるFlutterアプリ設計とそれを支えるCICD環境の進化
demaecan
0
530
出前館のマルチプロダクト戦略を支えるアーキテクチャ 〜技術的負債を解消しながら事業を多角化する〜
demaecan
1
120
新卒1年目の自分に伝えたかったエンジニアの成長に役に立つ話
demaecan
0
1.7k
新卒エンジニアが0からNon-BlockingなgPRCサーバーを作った話
demaecan
1
450
出前館アプリにおける Flutterアプリ設計
demaecan
2
860
プロダクト本部紹介資料
demaecan
0
9.3k
処理性能向上とコスト最適化を実現! ハイブリッド/マルチクラウド構成へ移行しサービス需要の急拡大に対応する強力なシステム基盤を実現
demaecan
0
110
出前館におけるFlutterの現在とこれから
demaecan
0
1.2k
出前館Webフロントエンドリプレイスプロジェクトの取り組みと反省について
demaecan
1
1.5k
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
GitHub's CSS Performance
jonrohan
1030
460k
The Cost Of JavaScript in 2023
addyosmani
47
7.4k
Visualization
eitanlees
146
15k
A Tale of Four Properties
chriscoyier
158
23k
Writing Fast Ruby
sferik
628
61k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
380
Producing Creativity
orderedlist
PRO
344
40k
GraphQLとの向き合い方2022年版
quramy
44
14k
Large-scale JavaScript Application Architecture
addyosmani
511
110k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Unsuck your backbone
ammeep
669
57k
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