Lock in $30 Savings on PRO—Offer Ends Soon! ⏳
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
日付の繰り返しの話 / Mobile Act OSAKA 14
Search
Hiroki Nagasawa
October 18, 2024
Programming
0
14
日付の繰り返しの話 / Mobile Act OSAKA 14
Mobile Act OSAKA 14:
https://mobileact.connpass.com/event/330822/
Hiroki Nagasawa
October 18, 2024
Tweet
Share
More Decks by Hiroki Nagasawa
See All by Hiroki Nagasawa
プラットフォームに馴染むモバイルアプリデザイン / Mobile App UI Design Lunch LT
pixyzehn
0
110
個人開発こそ世界へ / Indie App Development Lunch LT 2
pixyzehn
1
1.2k
自分のために作ったアプリが、グローバルに使われるまで / Indie App Development Lunch LT
pixyzehn
1
280
Other Decks in Programming
See All in Programming
Level up your Gemini CLI - D&D Style!
palladius
1
150
TUIライブラリつくってみた / i-just-make-TUI-library
kazto
1
230
Full-Cycle Reactivity in Angular: SignalStore mit Signal Forms und Resources
manfredsteyer
PRO
0
160
Evolving NEWT’s TypeScript Backend for the AI-Driven Era
xpromx
0
220
Why Kotlin? 電子カルテを Kotlin で開発する理由 / Why Kotlin? at Henry
agatan
2
660
関数実行の裏側では何が起きているのか?
minop1205
1
360
アーキテクチャと考える迷子にならない開発者テスト
irof
9
3.4k
JJUG CCC 2025 Fall: Virtual Thread Deep Dive
ternbusty
3
500
手軽に積ん読を増やすには?/読みたい本と付き合うには?
o0h
PRO
1
130
ID管理機能開発の裏側 高速にSaaS連携を実現したチームのAI活用編
atzzcokek
0
140
TypeScriptで設計する 堅牢さとUXを両立した非同期ワークフローの実現
moeka__c
5
2.8k
宅宅自以為的浪漫:跟 AI 一起為自己辦的研討會寫一個售票系統
eddie
0
320
Featured
See All Featured
Writing Fast Ruby
sferik
630
62k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Being A Developer After 40
akosma
91
590k
Reflections from 52 weeks, 52 projects
jeffersonlam
355
21k
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
GraphQLとの向き合い方2022年版
quramy
49
14k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
196
68k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Faster Mobile Websites
deanohume
310
31k
Transcript
Hiroki Nagasawa ͷ܁Γฦ͠ͷ
ࣗݾհ • @pixyzehn (Hiroki Nagasawa) • iOS Engineer at Doist
(2017 ~ ) • ݸਓ։ൃ at Blue Comet Labs • Expenses - ࢧग़ཧΞϓϦ
ͷ܁Γฦ͠ʹ͍ͭͯ • Expensesʹ͓͚Δࢧग़ऩೖͷ܁Γฦ͠ • ΞϓϦ(ϩʔΧϧ)Ͱ܁Γฦ͠ܭࢉΛߦ͏͜ͱ͕લఏ (ΦϑϥΠϯαϙʔτɺiCloudར༻) • ࢦఆ͞Εͨ܁Γฦ͠Φϓγϣϯ͔Β࣍ͷΛฦ͚ͩ͢ • ݁ߏ؆୯ͦ͏
ͷ܁Γฦ͠ͷ۩ମྫ Part 1 • 7͝ͱʹൃੜ͢ΔΠϕϯτ • 2िؒ͝ͱͷਫ༵ʹൃੜ͢ΔΠϕϯτ • ຖ݄25ʹൃੜ͢ΔΠϕϯτ •
3͔݄͝ͱͷ18ʹൃੜΠϕϯτ • etc…
ͷ܁Γฦ͠ͷ۩ମྫ Part 2 • 3͔݄͝ͱͷୈ3༵ʹൃੜ͢ΔΠϕϯτ • 5͔݄͝ͱͷ11ɺ15ʹൃੜ͢ΔΠϕϯτ • 4͝ͱͷ6݄ɺ10݄ͷ18ʹൃੜ͢ΔΠϕϯτ •
etc… 😅
ͷ܁Γฦ͠ͷ۩ମྫ Part 3 • 3िؒ͝ͱͷՐ༵ɺ༵ɺ༵ʹൃੜ͢ΔɺӬଓతʹ܁Γฦ͢Πϕϯτ • 3͔݄͝ͱͷ11ɺ15ɺ20ʹൃੜ͢Δɺ܁Γฦ͠ऴ͕ྃଘࡏ͢ΔΠϕϯτ • 10͝ͱͷ1݄ɺ2݄ɺ6݄ɺ10݄ͷୈ1༵ʹൃੜ͢ΔɺӬଓతʹ܁Γฦ͢Πϕϯτ •
etc… 😱
ͷ܁Γฦ͠Λཧ • ܁Γฦ͠ͷ୯Ґ (ผɺिผɺ݄ผɺผ) • ܁Γฦ͠ͷִؒ (1 ~ 999) •
܁Γฦ͠ͷऴྃ (Ӭଓతʹ܁Γฦ͢ or ܁Γฦ͠ͷऴྃ) • ܁Γฦ͠։࢝ͦͷΦϒδΣΫτʹؔ࿈͍ͯ͠Δ (ྫ: ࠷ॳʹࢧͬͨ) • AppleͷRemindersΛࢀߟ
ผͷ܁Γฦ͠ • ܁Γฦ͠ͷִؒͷΈ
िผͷ܁Γฦ͠ • ܁Γฦ͠ͷִؒ • ༵ (ෳબՄ)
݄ผͷ܁Γฦ͠ • ܁Γฦ͠ͷִؒ • “Ͱࢦఆ”λΠϓ (ෳબՄ) • “िͱ༵λΠϓ”
ผͷ܁Γฦ͠ • ܁Γฦ͠ͷִؒ • ݄ (ෳબՄ) • ༵ (Φϓγϣφϧ)
܁Γฦ͠ઃఆը໘ • γϯϓϧͰΑ͘ΘΕΔΦϓγϣϯΛఏࣔ • ܁Γฦ͠ͷෳࡶͳΧελϚΠζΛผͷը໘ • ΧελϜͷৄࡉΛΘ͔Γ͘͢දࣔ • ܁Γฦ͠ͷऴྃԼ෦ʹදࣔ
܁Γฦ͠ͷ࣮ • Foundationͷ enumerateDates(startingAfter:matching:matchingPolicy:repeatedTimePolicy:direction:using:)Λ ར༻ • ༧ظ͠ͳ͍ಈ࡞ͳͲগʑ͋Γ • OSSϥΠϒϥϦ͕͋Γͦ͏Ͱͳ͍ •
໘ͦ͘͞͏…
custom-repeat-date • Swift Packageͱͯ͠Publicʹެ։ • ̎ؒ΄ͲExpensesͰར༻͠ͳ͕Βमਖ਼ • αϯϓϧϓϩδΣΫτ͋Γ(SwiftUIར༻) • DocCʹΑΔυΩϡϝϯτ͋Γ
• Swift Package IndexʹՃ • https://github.com/pixyzehn/custom-repeat-date
ӡ༻͔ͯ͠Βͷؾ͖ͮ • ݄ผʹ͓͍͕ͯͳ͍݄͕͋Δ (31ͳͲ) → ݄ΛՃ • ୈԿ༵ʹ͓͍ͯୈ4͔ୈ5ͷͲͪΒ͔࠷ऴΛࢦఆ͍ͨ͠߹ → ࠷ऴΛՃ
• ܁Γฦ͠ͷΛͯ͢දࣔ͢Δ߹ɺIn-memoryͰΛੜ͢ΔͷͰΩϟογϡͳͲͷ࠷ దԽඞཁ • ܁Γฦ͠ʹؔ͢ΔՃػೳϦΫΤετ΄ͱΜͲͳ͠ • ͜͜·Ͱ࣮͍ͯ͠ΔྨࣅΞϓϦগͳ͘ධྑ͍ ☺