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
お寿司屋で例えるAndroid設計入門
Search
Swimmy
June 20, 2021
Programming
43
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
お寿司屋で例えるAndroid設計入門
Swimmy
June 20, 2021
More Decks by Swimmy
See All by Swimmy
Android16 Migration Stories ~Building a Pattern for Android OS upgrades~
reoandroider
0
240
違いがワカルKotlinプログラマーへの道
reoandroider
0
160
違いのワカル Kotlinプログラマーへの道
reoandroider
0
260
[Jetpack Compose] 原理から見るSkippable対応
reoandroider
1
370
Androdアプリ開発におけるネストスクロール問題と向き合うの説明用途
reoandroider
0
3.4k
Androdアプリ開発におけるネストスクロール問題と向き合うの説明用途
reoandroider
0
3.2k
Androdアプリ開発におけるネストスクロール問題と向き合うの説明用途~NestedScrollInteropConnectionは何してるの?編~
reoandroider
0
2.9k
Roborazziを最大限に活用する(導入編)
reoandroider
0
360
Master of NestedScroll
reoandroider
0
16k
Other Decks in Programming
See All in Programming
気づいたらRubyで100作品 ー クリエイティブコーディングが生活の一部になるまで / 100 Ruby Sketches Later: How Creative Coding Became Part of My Life
chobishiba
3
620
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
220
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
770
才能?センス?知らん、 続けたもん勝ちだ。-- 結婚・出産・癌を越えてなお、私がプロダクトを創り続ける理由
16bitidol
1
590
例外の正しい扱い方 そのエラー try-catchして大丈夫?
jinwatanabe
0
300
Vite+ Unified Toolchain for the Web
naokihaba
0
380
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.8k
Oxlintのカスタムルールの現況
syumai
6
1.2k
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
170
ランチタイムLT会3周年!ランチタイムLT会を3年間続けられたお話
y0hgi
1
120
act1-costs.pdf
sumedhbala
0
130
Strategic Design in the Frontend: Moduliths & Micro Frontends @DDDEurope
manfredsteyer
PRO
0
130
Featured
See All Featured
Skip the Path - Find Your Career Trail
mkilby
1
160
Optimizing for Happiness
mojombo
378
71k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
400
The Mindset for Success: Future Career Progression
greggifford
PRO
0
370
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.5k
The Curious Case for Waylosing
cassininazir
1
410
Paper Plane
katiecoart
PRO
1
52k
Marketing to machines
jonoalderson
1
5.5k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Transcript
お寿司屋で例える Android設計入門 by Reo
自己紹介
・専門学生 ・UIのあるものを作りたい→Android開発を始める ・現在自社開発企業にて、Android長期インターン中
設計を学ぶきっかけ
ランニングアプリ作成中の出来事・・ 一つのFragmentに1000行!! ・読みにくい ・辿りにくい ・重くなる
None
お客さん 板前 漁師 海 冷凍保存 View ViewModel Repository Room Remote
Data Source
お客さん 板前 漁師/仲卸業者 海 冷蔵庫 View ViewModel Repository Room Remote
Data Source 依存関係 データ(魚)の流れ
お客さんの対応兼板前兼冷蔵庫兼漁師 View
ソフトウェアの世界でも 分業は必要!!
>関心の分離 最も重要な原則は、 関心の分離です。すべてのコードを 1 つの Activity または Fragment に記 述するのはよくある間違いです。これらの
UI ベースのクラスには、 UI やオペレーティング シス テムとのやり取りを処理するロジックのみを含めます。これらのクラスをできる限りシンプルに保 つことで、ライフサイクルに関連する多くの問題を回避することができます。 Activity と Fragment の実装はデベロッパーが管理するものではないことにご注意ください。こ れらのクラスは、Android OS とアプリ間のコントラクトを体現する単なる結合クラスです。 Android OS は、ユーザーの操作に基づいて、またはシステムの状態(メモリ不足など)を理由と して、いつでもこれらのクラスを破棄することができます。ユーザーの便宜を十分に図り、アプリ を管理しやすくするため、こうしたクラスへの依存を最小限に抑えることをおすすめします。
お寿司屋の分業を簡単に再現したアプリ [Qiita] https://qiita.com/LaO/items/121365d5a1ab34815bc6 [Github] https://github.com/lion-king-IT/Qiita-MVVM-Sample
ご静聴 ありがとうございました by Reo