Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
生体データを取り扱うアプリ開発の勘所
Search
Kohei Tabata
July 11, 2019
Programming
1
130
生体データを取り扱うアプリ開発の勘所
Kohei Tabata
July 11, 2019
Tweet
Share
More Decks by Kohei Tabata
See All by Kohei Tabata
AIと協業する開発の進め方
nerd0geek1
0
140
営業活動なしで継続的に案件を受注する方法 / how to get a contract without sales as a freelance
nerd0geek1
2
960
動線改善とステータス可視化で家庭内のストレスを軽減した話
nerd0geek1
3
4.4k
家庭をプロジェクトとして運営した話
nerd0geek1
2
4.3k
fastlaneの勉強会を主催して学んだこと、得たこと、悩んだこと
nerd0geek1
1
1.1k
みんなで育てるprecheck
nerd0geek1
1
780
matchとは?match導入のメリット
nerd0geek1
4
600
Improve your workflow with Sketch plugin
nerd0geek1
3
1.5k
Looking back try! Swift 2017
nerd0geek1
0
650
Other Decks in Programming
See All in Programming
Canon EOS R50 V と R5 Mark II 購入でみえてきた最近のデジイチ VR180 事情、そして VR180 静止画に活路を見出すまで
karad
0
120
LLMで複雑な検索条件アセットから脱却する!! 生成的検索インタフェースの設計論
po3rin
3
820
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
7.3k
Socio-Technical Evolution: Growing an Architecture and Its Organization for Fast Flow
cer
PRO
0
360
まだ間に合う!Claude Code元年をふりかえる
nogu66
5
850
リリース時」テストから「デイリー実行」へ!開発マネージャが取り組んだ、レガシー自動テストのモダン化戦略
goataka
0
130
tsgolintはいかにしてtypescript-goの非公開APIを呼び出しているのか
syumai
7
2.2k
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
150
Context is King? 〜Verifiability時代とコンテキスト設計 / Beyond "Context is King"
rkaga
10
1.3k
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
240
S3 VectorsとStrands Agentsを利用したAgentic RAGシステムの構築
tosuri13
6
320
C-Shared Buildで突破するAI Agent バックテストの壁
po3rin
0
390
Featured
See All Featured
A designer walks into a library…
pauljervisheath
210
24k
Docker and Python
trallard
47
3.7k
What's in a price? How to price your products and services
michaelherold
246
13k
Building Applications with DynamoDB
mza
96
6.8k
Facilitating Awesome Meetings
lara
57
6.7k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
1.3k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Automating Front-end Workflow
addyosmani
1371
200k
Context Engineering - Making Every Token Count
addyosmani
9
530
How to Think Like a Performance Engineer
csswizardry
28
2.4k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.6k
Transcript
ੜମσʔλΛऔΓѻ͏ ΞϓϦ։ൃͷצॴ Health Tech0.5 @TIME SHARINGौ୩Ӊాொ Kohei Tabata
ࣗݾհ ➤ ాാߒฏ(@nerd0geek1) ➤ iOS Engineer @ Saib Studio LLC
➤ ڈͷ11݄͔ΒiOSΞϓϦશମͷ։ൃΛ͓ख͍͍ͯ͠·͢ɻ ➤ ࠷ۙσβΠϯษڧͯ͠ޱग़ͨ͠͠Γͯ͠·͢ɻ
ઃܭࢥͷಋೖͱϦϑΝΫλϦϯάʁ ΞϥʔϜɺλΠϚʔػߏʁ (Timer, UNNotificationRequest) Clean Architecture x RxSwiftʁ fastlane x
CircleCIʹΑΔCI/CDͷಋೖʁ
ͰɺϔϧεέΞاۀ͡Όͳͯ͘ Ͱ͖ΔΑͶʁ
ΞδΣϯμ ➤ ੜମσʔλ × औಘ ➤ ϑΟʔυόοΫαΠΫϧେ͖͗͢(ਭͷ߹Ұ൩) ➤ ͦ͜ʹؔ͢Δ෦ͷ։ൃ͕ϘτϧωοΫʹͳΓ͕ͪ ➤
ੜମσʔλ × ੳ ➤ ੜσʔλσʔλ༰ྔΛצҊͭͭ͠ɺղ૾ߴ͘औಘ͓ͯ͘͠
ੜମσʔλऔಘ͕େม σʔλܭଌ։࢝ σʔλੳ (ΫϥΠΞϯτ) σʔλੳ (αʔό)
ੜମσʔλऔಘ͕େม σʔλܭଌ։࢝ σʔλੳ (ΫϥΠΞϯτ) σʔλੳ (αʔό) ेʙҰ൩
ੜମσʔλऔಘ͕େมɺੜͰ͖ͳ͍ ➤ O:SLEEPͷ߹جຊతͳϢʔεέʔε͕Ұ൩ (ੳͷͨΊʹɺ࠷ݶͰेͷσʔλ͕ඞཁ) ➤ ؔ࿈͢Δػೳɾը໘ͷ։ൃͰεϐʔυ͕ग़ͤͳ͍ ➤ ਭੳϞδϡʔϧͷݕূ ➤ ਭܭଌޙͷը໘ભҠ
➤ etc… ϓϩμΫτ։ൃ͍͔ʹߴʹ։ൃͱݕূΛਐΊΔ͔͕ ΩϞͳͷʹ
։ൃΛߴԽ͢ΔͨΊʹԿΛ͔ͨ͠ʁ ➤ Λཧ͢Δͱ2ͭɻ ➤ ਭੳϞδϡʔϧͷϩδοΫͷਖ਼͠͞ΛݕূͰ͖͍ͯͳ͍ ➤ ਭΛؚΉը໘ભҠɾϑϩʔͷݕূʹ͕͔͔࣌ؒΓ͗͢Δ
ਭੳϞδϡʔϧͷਖ਼͠͞ͷݕূ ➤ ϢχοτςετͷՃ ➤ ͷਭσʔλΛੵ ➤ Ϣχοτςετ͕͍͢͠Α͏ʹɺΫϥε֎ʹެ։͢ΔϝιουΛมߋ ➤ ਭσʔλΛݩʹݕূ༻ͷμϛʔσʔλΛ࡞
ը໘ભҠɺϑϩʔͷݕূ ➤ ίʔυͷॻ͖͑ɺμϛʔσʔλͰΓΔ ➤ ϐϯϙΠϯτͰͷը໘ભҠݕূखݩͰίʔυΛॻ͖͑Δ͜ͱͰରԠ ➤ ը໘ભҠʹσʔλ͕ඞཁͳ߹ɺࣗͷաڈʹੵͨ͠ਭσʔλΛ ͖࣋ͬͯͯɺ͚ͩมߋͯ͠ར༻͢Δ ➤ ։ൃνʔϜશମͷߴԽ͕ඞཁʹͳͬͨ߹ɺ͜ͷ͋ͨΓ
σόοάػೳͱͯ͠࡞͍͔ͬͯ͘…ʁ
None
ੜମσʔλੳେม ➤ O: ͷΞϧΰϦζϜ৸ฦΓʹΑΔମಈ = ՃΛϕʔεͱ ͨ͠ͷ ➤ ԾʹɺࠓͷΞϧΰϦζϜΑΓྑ͍ΞϧΰϦζϜΛ։ൃͨ͠ ߹ɺͦΕ͕Ͳ͏͍ͬͨ݁ՌͱͳΔͷ͔ɺ~िؒͨ
ͣʹݕূ͍ͨ͠ɻ
None
None
ੜσʔλΛDBʹอ࣋͢Εྑ͍ͷͰʁ ➤ ݱঢ়ͷΞϓϦͰɺඵ͝ͱʹҎԼͷΛऔಘ͠ɺͦΕΛ ىচ࣌Ͱੳɺੳ݁ՌͷΈΛαʔόʹૹ৴͍ͯ͠Δɻ ➤ time(Date) ➤ x(Double) ➤ y(Double)
➤ z(Double) ➤ ͜ͷੜσʔλΛղ૾ߴ͍ঢ়ଶͰRealmʹอ࣋͢Ε ྑ͍ͷͰʁ
ͨͩ͠… ➤ ՃใͷੜσʔλϨίʔυ͕͔ͳΓଟ͍ɻ ➤ 1ϨίʔυʹҎԼͷใؚ͕·ΕΔɻ ➤ time(Date, 8byte) ➤ x(Double,
8byte) ➤ y(Double, 8byte) ➤ z(Double, 8byte) ➤ 1ඵຖɺ6࣌ؒਭͱͯ͠ 60 * 60 * 6 * 8 * 4 = 691200Byte ≒ 700kB ➤ 0.1ඵຖͩͱ 60 * 60 * 6 * 10 * 8 * 4 = 6912000Byte ≒ 7MB
ͳͷͰ ➤ ϑΝΠϧαΠζ͕େ͖͘ͳΓ͗͢ͳ͍Α͏ʹཧ ➤ ۩ମతʹ ➤ ੜσʔλۙ30ͷΈΛอ࣋͢ΔΑ͏ʹ࣮ ➤ 30Λ͑Δʹ͍ͭͯݹ͍ͷ͔Βফ͍ͯ͘͠
None
·ͱΊ ➤ ੜମσʔλΛऔΓѻ͏ΞϓϦͱ͍ͬͯجຊมΘΒͳ͍ ➤ ͨͩ͠ɺऔΓѻ͏σʔλͷಛੑ͕ଞͷΞϓϦͱେ͖͘ҟͳΔ (औಘɺੜ͕ࠔ) ➤ طଘͷΞϓϦ։ൃͰಘͨࣝΛ༻͍ͯɺͦ͏͍ͬͨಛघੑʹ ཱ͔ͪ͏