μ°μ£Ό ν λ§λ₯Ό μ μ©ν μκ° κ΄λ¦¬ iOS μ±
μλ, νμ΄λ¨Έ(λ―Έμ ), μ€ν±μμΉ(μμ νν) κΈ°λ₯μ ν΅ν΄ μκ°μ λ λͺ°μ κ° μκ² κ΄λ¦¬ν μ μλλ‘ λλ μ±
RocketCallμ λ¨μ‘°λ‘μ΄ κΈ°λ³Έ μκ³ μ±μ κ²½νμμ λ²μ΄λ,
μ°μ£Ό ννμ΄λΌλ 컨μ
μ κΈ°λ°μΌλ‘ μκ°μ λ μ¬λ―Έμκ³ μ§κ΄μ μΌλ‘ κ΄λ¦¬ν μ μλλ‘ κΈ°νν μ±μ
λλ€.
μ¬μ©μλ λ¨μν μκ°μ μ¬λ κ²μ΄ μλλΌ,
νλμ λ―Έμ
μ μννλ― μλμ μ€μ νκ³ , νμ΄λ¨Έλ₯Ό μ§ννκ³ , μμ λ‘κ² νννλ― μ€ν±μμΉλ₯Ό μ¬μ©ν μ μμ΅λλ€.
- νλ‘μ νΈλͺ : RocketCall
- νλͺ : Alarara
- κ°λ° κΈ°κ°: 2026.03.20 ~ 2026.03.30
κΈ°λ³Έ μλ/νμ΄λ¨Έ μ±μ νμ κΈ°λ₯μ μΆ©λΆνμ§λ§,
μ¬μ©μκ° μκ°μ λͺ°μ
κ° μκ² κ²½ννλλ‘ λλ μμλ λΆμ‘±νλ€κ³ λκΌμ΅λλ€.
RocketCallμ μ΄ μ§μ μμ μΆλ°νμ΅λλ€.
- μκ° κ΄λ¦¬λ₯Ό λ μ¬λ―Έμκ² λ§λ€ μ μμκΉ?
- λ½λͺ¨λλ‘, μλ, μ€ν±μμΉλ₯Ό νλμ ν΅μΌλ 컨μ μΌλ‘ λ¬Άμ μ μμκΉ?
- λ¨μν κΈ°λ₯ μ±μ΄ μλλΌ, μ¬μ©μκ° μνμ νλ¦μ 체κ°ν μ μλ μ±μ λ§λ€ μ μμκΉ?
μ΄ κ³ λ―Όμ λ°νμΌλ‘ βμκ° = μ°μ£Ό ννβ μ΄λΌλ 컨μ μ μ μ©νμ΅λλ€.
μκ° = μ°μ£Ό νν
RocketCallμ μκ°μ νλμ μ°μ£Ό λ―Έμ μ²λΌ ν΄μν©λλ€.
- μλ: λ°μ¬ μΉ΄μ΄νΈλ€μ΄
- νμ΄λ¨Έ: κ³νλ λ―Έμ μν
- μ€ν±μμΉ: μμ νν
- ν νλ©΄: κΈ°λ‘κ³Ό νμ¬ μνλ₯Ό νμΈνλ κ΄μ μΌν°
μ΄λ κ² κ°κ°μ κΈ°λ₯μ νλμ μΈκ³κ΄ μμμ μμ°μ€λ½κ² μ°κ²°νκ³ μ νμ΅λλ€.
- μ£Όκ° κΈ°λ‘ νμ
- κ°μ₯ κ°κΉμ΄ μλ νμ
- μλ 리μ€νΈ νμΈ
- μλ On / Off
- μλ μΆκ° / μμ / μμ
- μκ° μ€μ
- λ°λ³΅ μ€μ
- λ μ΄λΈ μ΄λ¦ λ° μ€λͺ μ λ ₯
- μ¬μ΄λ μ€μ
- ν ν±
- κΈ°λ³Έ μ¬μ΄λ
- 보κ΄ν¨ λ Έλ μ ν
- λ€μ μλ¦Ό μ€μ
- λ―Έμ 리μ€νΈ νμΈ
- μμ / μ€μ§
- μμ / μμ
- λ©ν° νμ΄λ¨Έ κΈ°λ₯
- μ κ· λ±λ‘ νλ©΄
- λΉ λ₯Έ μ ν λ©λ΄
- 컀μ€ν μ€μ
- μ§ν νλ©΄
- μ§ν μ λλ©μ΄μ
- νμ¬ μ§ν μκ° νμ
- μμ / μΌμμ μ§ / μ€λ¨
- Lap κΈ°λ‘
- μ¬μ€μ
λ€μ κΈ°λ₯μ μ€μ ꡬν κΈ°λ₯κ³Ό λ³λλ‘, νλ‘μ νΈ νμ₯ λ°©ν₯μΌλ‘ κΈ°νν μμ΄λμ΄μ λλ€.
- λ―Έμ λ¬μ± μ NASA API κΈ°λ° μ΄λ―Έμ§ 보μ
- Dynamic Island νμ©
- μΈκ³ μκ³ κΈ°λ₯ νμ₯
- λ―Έμ λ‘κ·Έ μΉ΄λ
- μμ ― μ§μ
- μ°μ£Ό μ°λΉμΈνΈ μ¬μ΄λ
- Swift
- UIKit
- MVVM
- RxSwift Input / Output Pattern
- CoreData
- RxSwift
- SnapKit
- Then
- Lottie
- GitFlow
- PR Review
- Gemini Code Assist
RocketCall
βββ Model
β βββ CoredataEntity
β βββ AlarmModel
β βββ CoreDataManager
β βββ NotificationManager
β βββ Payload
β βββ Model
β
βββ Util
β βββ TimeContainerView
β βββ BaseCardView
β βββ CircleButton
β βββ GradientProgressView
β βββ TitleView
β βββ UIViewController+
β
βββ View
β βββ Alarm
β βββ HomeTab
β β βββ Controller
β β βββ View
β βββ Mission
β β βββ Create
β β βββ List
β β βββ MissionResultView
β βββ Stopwatch
β βββ TimerAnimationView
β
βββ ViewModel
β βββ AlarmListViewModel
β βββ AlarmSettingViewModel
β βββ CreateMissionViewModel
β βββ HomeViewModel
β βββ MissionViewModel
β βββ StopWatchViewModel
β βββ TimerAnimationViewModel
β βββ TimerViewModel
β βββ ViewModelProtocol
β
βββ AppDelegate
βββ SceneDelegate
βββ AssetsRocketCallμ MVVM μν€ν μ²λ₯Ό κΈ°λ°μΌλ‘ ꡬννμ΅λλ€.
- μ¬μ©μ μ λ ₯μ λ°κ³ νλ©΄μ ꡬμ±
- ViewModelμ Outputμ λ°μΈλ©νμ¬ UIλ₯Ό κ°±μ
- Viewμμ μ λ¬ν Inputμ κΈ°λ°μΌλ‘ λΉμ¦λμ€ λ‘μ§μ μ²λ¦¬
- κ°κ³΅λ μνλ₯Ό OutputμΌλ‘ μ λ¬
- CoreDataλ₯Ό ν΅ν λ°μ΄ν° μ μ₯
- μλ¦Ό κ΄λ ¨ λ‘μ§ κ΄λ¦¬
- νμν λ°μ΄ν° λͺ¨λΈ λ° Payload κ΄λ¦¬
νΉν μν λ³νμ μ΄λ²€νΈ νλ¦μ΄ λ§μ νλ‘μ νΈ νΉμ±μ RxSwift Input / Output ν¨ν΄μ νμ©ν΄ νλ©΄κ³Ό λ‘μ§μ νλ¦μ λ λͺ νν λλκ³ μ νμ΅λλ€.
- κΈ°λ₯μ΄ μλ, νμ΄λ¨Έ, μ€ν±μμΉ, ν νλ©΄μΌλ‘ λλμ΄ μμκΈ° λλ¬Έμ νλ©΄ λ‘μ§κ³Ό λΉμ¦λμ€ λ‘μ§μ λΆλ¦¬ν νμκ° μμμ΅λλ€.
- MVVMμ μ μ©ν΄ κ° κ³μΈ΅μ μν μ λͺ νν λλκ³ , κΈ°λ₯λ³λ‘ ViewModelμ λΆλ¦¬ν΄ μ μ§λ³΄μμ±κ³Ό νμ₯μ±μ λμ΄κ³ μ νμ΅λλ€.
- μ΄λ² νλ‘μ νΈλ λ¨μ νλ©΄ ꡬμ±λ³΄λ€μν λ³ν, μ¬μ©μ μ λ ₯, νμ΄λ¨Έ νλ¦, νλ©΄ λ°μΈλ©μ΄ μ€μν νλ‘μ νΈμμ΅λλ€. κ·Έλμ ViewControllerκ° μ§μ λͺ¨λ μνλ₯Ό μ²λ¦¬ν기보λ€, Inputμ μ λ¬νκ³ Outputμ ꡬλ νλ κ΅¬μ‘°λ‘ κ΅¬μ±ν΄ νλ¦μ λ μμΈ‘ κ°λ₯νκ² λ§λ€μμ΅λλ€.
- μλ, λ―Έμ , κΈ°λ‘ λ±μ λ°μ΄ν°λ₯Ό λ‘컬μ μ μ₯νκ³ κ΄λ¦¬νκΈ° μν΄ CoreDataλ₯Ό μ¬μ©νμ΅λλ€.
- TitleView, BaseCardView, GradientProgressView λ± κ³΅ν΅ UI μ»΄ν¬λνΈλ₯Ό λ³λλ‘ λΆλ¦¬νμ¬ μ¬μ¬μ©μ±μ λμ΄κ³ νλ©΄λ³ μΌκ΄μ±μ μ μ§νκ³ μ νμ΅λλ€.
| μ΄λ¦ | λ΄λΉ |
|---|---|
| νμ£Όν | μ€ν±μμΉ |
| λ³μλ¦° | λ©μΈ νλ©΄ |
| μ₯μμ¬ | νμ΄λ¨Έ μ§ν νλ©΄(μ λλ©μ΄μ ) |
| μμλΉ | νμ΄λ¨Έ νλ©΄ |
| κΉμ£Όν¬ | μλ νλ©΄ |
| κ³΅ν΅ | SA μμ±, μ€ν¬λΌ μΌμ§ μ 리 |
- Scrum
- μ€μ μ€ν¬λΌ (11:00): νμ λ° μ½λ 리뷰
- μ λ μ€ν¬λΌ (20:00): μ§ν μν© κ³΅μ
- PR κ·μΉ
- λͺ¨λμ€ν°λ μ΄ν μ½λ리뷰 μ§ν
- νμ μ μΆκ° PR μκ° μ΄μ
- Approval 2λͺ μ΄μ μ Merge
- Merge μ νμ 곡μ
- AI 리뷰μ΄λ 보쑰μ μΌλ‘λ§ νμ©
- Branch Strategy
- GitFlow μ λ΅ μ¬μ©
- λΈλμΉ μμ: feature/Alarm#1
- API Design Guidelines κΈ°λ³Έ μ€μ
- camelCase μ¬μ©
- μ½μ΄ μ¬μ© μ§μ
- μ κ·Ό μ μ΄μ λͺ μ
- κΈ°λ₯ λ° νλ©΄ κΈ°μ€ λλ ν 리 λΆλ¦¬
- // MARK:λ₯Ό νμ©ν ꡬλΆ
- extension λ¨μλ‘ κΈ°λ₯ λΆλ¦¬
- μ»€λ° λ¨μ μΈλΆν
- πfeat : κΈ°λ₯ μΆκ°
- β»οΈrefactor : κΈ°λ₯ κ°μ / μ λ©΄ μμ
- β test : ν μ€νΈ μΆκ°
- π©Ήchore : λ€μ΄λ°, 컨벀μ λ± μμ
- πfix : μ€λ₯ μμ
- πdocs : λ¬Έμ μΆκ° λ° μμ
- πbuild : νμΌ μ΄λ λ° μΆκ°
- NASA APIλ₯Ό νμ©ν 보μν UX κ°ν
- Dynamic Island μ°λ
- λ―Έμ λ‘κ·Έ μΉ΄λ μ 곡
- μμ ― μ§μ
- λ νλΆν μ λλ©μ΄μ λ° μ¬μ΄λ μ°μΆ