- μλΉμ€ μκ°
- κΈ°λ₯ μκ°
- κΈ°μ μ€ν
- νλ‘μ νΈ μ§ν λ° μ°μΆλ¬Ό
- κ°λ° λ©€λ² λ° νκ³
- νμ€ μκ° : μ νμν κΈ°μ μ°κ³ νλ‘μ νΈ - κΈμ΅ ν΅ν© λ€νΈμν¬ μ ν리μΌμ΄μ
- μλΉμ€ λͺ
:
SOL#
- μν, μΉ΄λ, μ¦κΆ λ±μ κΈμ΅ λ€νΈμν¬ ν΅ν© νλ«νΌ
- μν μ£Όμ κ±°λ κΈ°λ³Έ κΈ°λ₯
- UI/UX κ°μ
- κ³ κ° μ μ μ μν μΆκ° κΈ°λ₯: λͺ¨λμ ν΅μ₯, μ΄μ€ν° μκ·Έ
Jetpack Composeλ λ€μ΄ν°λΈ UIλ₯Ό λΉλνκΈ° μν Androidμ μ΅μ ν΄ν·μ λλ€. μ§κ΄μ μΈ Kotlin APIλ‘ Androidμμμ UI κ°λ°μ κ°μννκ³ κ°μννμ¬ μ±μ μλκ°μ λν΄μ€λλ€. Android UIλ₯Ό λ λΉ λ₯΄κ³ μ½κ² λΉλν μ μμ΅λλ€. Composeλ₯Ό μ¬μ©νλ©΄ Android View μμ€ν μ μ¬μ©ν λμ λΉν΄ λ μ μ μ½λλ‘ λ λ§μ μμ μ ν μ μμ΅λλ€. λ²νΌ, λͺ©λ‘ λλ μ λλ©μ΄μ μ΄ μμΌλ―λ‘ μ΄μ 무μμ λΉλν΄μΌ νλ μ½λλ μ‘°κΈλ§ μμ±ν΄λ λ©λλ€. λ Composeλ μ μΈμ APIλ₯Ό μ¬μ©ν©λλ€. μ¦, Composeκ° λλ¨Έμ§λ₯Ό μ²λ¦¬νλ―λ‘ UIλ₯Ό μ€λͺ νκΈ°λ§ νλ©΄ λ©λλ€. APIλ μ§κ΄μ μ΄λ―λ‘ μ°Ύμμ μ¬μ©νκΈ°κ° μ½μ΅λλ€.
μμΈν νΉμ§μ μλ λ§ν¬λ₯Ό μ°Έκ³ ν΄μ£ΌμΈμ.
FastAPIλ νλμ μ΄κ³ , λΉ λ₯΄λ©°(κ³ μ±λ₯), νμ΄μ¬ νμ€ νμ ννΈμ κΈ°μ΄ν Python3.6+μ APIλ₯Ό λΉλνκΈ° μν μΉ νλ μμν¬μ λλ€.
1. κ³μ μμ±μ λ°λ₯Έ λλ―Έλ°μ΄ν° μμ± μλ²
2. μ£Όμλ°μ΄ν° pandasλ₯Ό μ΄μ©νμ¬ μ μ ν mysqlμ μ μ¬ μλ² (μ€μΌμ₯΄λ§μ spring boot μ¬μ©νμμ΅λλ€)
Git flow μ¬μ©μ μν΄ sourcetree
νλ‘κ·Έλ¨μ μ¬μ©νμκ³ μ°μν νμ λ€μ git flowμ μ°Έκ³ .
android μ back μΌλ‘ λλμ΄ faature
μ νμ λΈλμΉλ₯Ό μ¬μ©νμμΌλ©° λ§€μΌ μ€μ μ€ν¬λΌ μ΄ν back
λΈλμΉμ android
λΈλμΉλ‘ merge νμ¬ μ¬μ©.
commit message
λ feat(κΈ°λ₯λͺ
): λ΄μ©
κ³Ό κ°μ΄ ν΅μΌνμ¬ μμ±.
맀주 μμμΌ μ€μ νμμμ κΈμ£Όμ μ§ν μ΄μλ₯Ό λ°±λ‘κ·Έμ λ±λ‘.
μ μ£Όμ μλ£νμ§ λͺ»ν μ΄μλ, μμΌλ‘ μ§νν μ΄μλ€μ μΆκ°ν¨.
- μν½μ νμ, μ‘κΈ, κ³μ’, μΉ΄λ λ±μΌλ‘ ꡬμ±.
- λ μ΄λΈμ back, android λ±μΌλ‘ ꡬμ±.
- μ€ν 리λ λͺ
νν μ λ¬μ μνμ¬
API λͺ μΈμ μμ±
μ κ°μ΄ μμ±. - μμ νν©μ μ€μκ°μΌλ‘ μ§λΌμ λ°μνμ¬ νμ¬ νμμ΄ μ΄λ€ μμ μ νκ³ μλμ§, μΌμ μ λλ μ΄κ° μλμ§ ν λμ μμλ³Ό μ μκ² ν¨.
-
λ―Όκ²½μ± :
μ΄λ² νλ‘μ νΈμμ λ°μ΄ν° μλ²(FastAPI)λ₯Ό λ°λ‘λμ΄ κ΄λ¦¬νμ΅λλ€. λ°μ΄ν°λ₯Ό λ€λ£¨κΈ°μ μ©μ΄ν Python κΈ°λ°μ νλ μμν¬λ‘ μ²μ μ¬μ©μ λΉν΄ λΉ λ₯Έ μ½λ μμ±μ΄ κ°λ₯νμ΅λλ€. κ°λ° νλ°λΆμ 6λͺ μ΄ Android Studioμ λͺ¨λ ν¬μ λμ΄ νλ©΄ ꡬμ±μ νμΌμ΅λλ€. μ€λλ§μ νλ‘ νΈ μμ μΈ κ²κ³Ό KotlinμΌλ‘ μμ ν΄μΌ νλλΆλΆμ΄ κ±±μ μ΄μλλ° νμλ€μ κ²©λ €λ‘ λ¬΄μ¬ν μ λ§λ¬΄λ¦¬ ν μ μμμ΅λλ€. -
κΉμ°¬μ :
λ§€μΌ μ¬μ©νλ λͺ¨λ°μΌ κΈμ΅ μ΄ν리μΌμ΄μ μ μ§μ κ°λ°ν΄ λ³Ό μ μμλ μ’μ κ²½νμ΄μμ΅λλ€. νΉν μ νμνκ³Ό μ°κ³ν΄μ μμ₯ λ°μ΄ν°μ λν 곡λΆλ₯Ό νλ©΄μ κΈμ΅ λλ©μΈμ λν μ΄ν΄λ₯Ό μμ μ μμμ΅λλ€. μ΄λ² νλ‘μ νΈλ κΈ°μ‘΄μ κΈμ΅ μλΉμ€λ₯Ό μ 곡νλ©΄μλ, νλ©΄κ³Ό λμ λΆλΆμ΄ κ°μ λκ³ , μ¬μ©μλ€μ μ μ μν¬λ§ν κΈ°λ₯μ΄ μλ μ΄ν리μΌμ΄μ μ λ§λλ κ²μ΄μκΈ° λλ¬Έμ, κΈ°μ‘΄μ κΈμ΅ μ΄νλ€μ λ§μ΄ μ¬μ©ν΄ 보면μ μΈμ¬μ΄νΈλ₯Ό μ»κ³ μ μ©ν΄μΌ νλ λΆλΆμ΄ κ°μ₯ μ€μνλ κ² κ°μ΅λλ€. κ°λ° κ΄λ ¨ λΆλΆμΌλ‘ Kotlinκ³Ό Spring bootλ‘ λ°±μλ κ°λ°μ 맑μμ μ§ννκ³ , λͺ¨λμ ν΅μ₯ κΈ°λ₯μ λν΄μλ μλλ‘μ΄λ κ°λ°λ μ§ννμ΅λλ€. νλ©΄κ³Ό μλ² λͺ¨λ κ°λ°μ ν΄λ³΄λ©΄μ, λ°μ΄ν°λ₯Ό μ£Όκ³ λ°λ κ²μ λν΄ μλ‘μ΄ μκ°μ μ»μ μ μμλ κ² κ°μ΅λλ€. μΈνΌμμ λ§μ§λ§ νλ‘μ νΈλ‘ μ’μ κ²½νν μ μμκ³ , μλλ‘μ΄λ κ°λ°μ μν΄ λ§€μΌ κ°μ΄ μΌκ·Όνλ©° μ§νν νμλ€μκ² κ³ μνλ€λ λ§ μ νκ³ μΆμ΅λλ€! -
μ΄μ§λ :
κ·Έλμμ νλ‘μ νΈ κ²½νκ³Ό λ€λ₯Έ μλ‘μ΄ μλλ₯Ό λ§μ΄ ν μ μμμ΅λλ€. νΉν μΉ νλ‘μ νΈμ μ§μ€νλ μ§λλ κ³Ό λ¬λ¦¬, apkλ₯Ό μ μν΄μΌνλ μ΄ν리μΌμ΄μ μ μμ ν μλ‘μ΄ μλμμ΅λλ€. ꡬκΈμ΄ λ°νν μλλ‘μ΄λ μ μ μ§μ λΌμ΄λΈλ¬λ¦¬μ λꡬ λͺ¨μμ§μΈ Android Jetpack μ¬μ©μ μν΄ Kotlinμ μ¬μ©νμμΌλ©°, μ΄μ λ§μΆ° λ°±μλλ μ½νλ¦°μ μ¬μ©νμ΅λλ€. νλ‘μ νΈμ κ·λͺ¨μ λΉν΄ 짧μ κ°λ° μκ°μ΄ μ£Όμ΄μ‘μκΈ° λλ¬Έμ, μλ λ°°ν¬μ κ°μ μλ² κ΄λ ¨ μ λ°μ μΈ μμ κ³Ό λ°±μλ μμ μ λΉ λ₯΄κ² μμ νκ³ μ΄ν리μΌμ΄μ μμ μ ν©λ₯νμμ΅λλ€. νλ‘μ νΈμ μ λ°μ μΈ μμ μ λͺ¨λ μ°Έμ¬νλ§νΌ νΉλ³ν μ μ μ΄ κ°λ μλΉμ€μμ΅λλ€.
Β κΈμ΅ μλΉμ€μ νΉμ§ μ μ ν¬ νμ μ§κ΄μ μΈ UI/UXμ λΉ λ₯Έ μ€νμλλ₯Ό μ€μ μΌλ‘ λμμ΅λλ€. κ·Έλ¬λ κ·Έλ§νΌ μ λ’°λ λν μ€μνλ€κ³ μκ°νμ¬ λ°μ΄ν°λ² μ΄μ€μμ μμ μμ μ λ°°μ νκ³ μνμ½λλ‘ λ°μ΄ν°λ₯Ό κ΄λ¦¬νμμΌλ©°, νΉν κ±°λλ΄μμ κ²½μ° Kafkaλ‘ λ°μ΄ν° μλ²λ₯Ό λ°λ‘ λμ΄ μΆ©λ μν©μ μ΅λν λ°°μ νκ³ κ΄λ¦¬ ν μ μλλ‘ νμμ΅λλ€. λν μ€λ¬΄μμλ μ 곡λμ§λ§ μ ν¬μκ² μ 곡λμ§ μλ μ λ³΄λ€ (λΉνμ μ 보 λ±)μ΄ κ½€ μμ΄ λ°μ΄ν° μ°Έμ‘° λ¬΄κ²°μ± μ μ§λ₯Ό μν μ€κ³λ₯Ό νννκ² ν΄μΌνμ΅λλ€.
Β λ§μ§λ§μΌλ‘ μ΄λ² νλ‘μ νΈμμ λ§μ μκ²½μ΄ μμλλ° ν° κ°λ± μμ΄ κ°λ°μ νμ¨μ€ νμλ€μ λ무 κ³ λ§μ~!!! -
μ΄μ£Όμ :
Jetpack composeμ MVVM λμμΈ ν¨ν΄μ μν Jetpack ViewModelκ³Ό hilt λ± νμ κ΄μ¬ μμλ λΌμ΄λΈλ¬λ¦¬λ₯Ό νμ©ν΄λ³Ό μ μμλ νλ‘μ νΈμμ΅λλ€. μλλ‘μ΄λ μμ λμ΄ λ§μ μ¬μ κ° μμλλ°, μ λ₯ν λ°±μλ μΉκ΅¬λ€μ΄ μλ² κ΅¬μ±μ λ§μΉκ³ , μλλ‘μ΄λ κ°λ°μ λμμ€μ λͺ©νλ‘ νλ ν리ν°λ₯Ό μμ‘°λ‘κ² λ§μΆ μ μμμ΅λλ€. μ΄λ‘μ¨, 5κ°μ λμ ν¨κ» νλ νμλ€κ³Όμ λͺ¨λ νλ‘μ νΈκ° λλ¬λλ°, νμλ€ λͺ¨λ λ§μ κ²μ μ»μ μ μμλ μκ°μ΄ λκΈ°λ₯Ό λ°λΌκ³ , μμΌλ‘ 건κ°νκ³ ν볡νκΈΈ λ°λλλ€!! -
μ κ±΄μ° :
μ΄μ λΆν° μλλ‘μ΄λλ₯Ό ν λ² κ°λ°ν΄λ³΄κ³ μΆμλλ°, μ νμν κΈ°μ μ°κ³ νλ‘μ νΈλ‘ μ’μ κΈ°νλ₯Ό μ»μ΄ κ²½νν΄λ³Ό μ μμ΄μ μ’μμ΅λλ€. μ΄λ²μλ μ²μ μ¬μ©ν΄λ³΄λ Kotlinκ³Ό Jetpack Composeλ₯Ό μ¬μ©νμ¬ μ΄λ°μλ κ°λ° μλκ° μ‘°κΈ λλ Έλλ°, μ΅μν΄μ§λ μ κ° μνλ ꡬλλ‘ μ½κ² νλ©΄μ ꡬμ±ν μ μμ΄μ μΉλ³΄λ€ νΈν λΆλΆλ λ§μμ΅λλ€. μ΄λ² νλ‘μ νΈμμλ λΉμ€ μλ κΈ°μ μ€νμ μ¬μ©νλ€κΈ° 보λ€λ μν μ ν리μΌμ΄μ μ΄λ€λ³΄λ μ¬μ©μ κ΄μ μμ μ§κ΄μ μΈ UI/UXλ₯Ό ꡬμ±ν μ μλλ‘ λ Έλ ₯νμ΅λλ€. μ΄μ νλ‘μ νΈμ λΉν΄ κ°λ° κΈ°κ°μ΄ μλμ μΌλ‘ 짧μ μμ¬μμ΄ λ¨μ§λ§, λ§μ§λ§ νλ‘μ νΈμΈ λ§νΌ νν μλ κ°λ°μ ν κ² κ°μμ λ§μ‘±ν©λλ€. λ§μ§λ§μΌλ‘, μΈνΌμμ μ§ννλ 2νκΈ° 3κ°μ νλ‘μ νΈλ₯Ό ν¨κ»ν νμλ€μκ² κ³ μνλ€λ λ§μ μ νκ³ μΆμ΅λλ€. κΌ μ’μ νμ¬μ μ·¨μ§ν΄μ λ§μλκ±° μ¬μ£ΌκΈΈ~!! -
μ±μ€μ :
νμ κ΄μ¬μ΄ μμλ κΈμ΅μ μ£Όμ λ‘ κ°λ°ν μ μμ΄μ λμ± μ¦κ²κ² μνλ νλ‘μ νΈμμ΅λλ€. MAUκ° λμ μμ€ κΈμ΅ μ±λ€μ λΆμνκ³ ,μ νμνμ νμ§μμ΄μ λ©ν λκ³Όμ λ©ν λ§μ ν΅ν΄ νμ μμμ μν λ°μ΄ν° ꡬμ±κ³Ό κΈμ΅κΆμ IT νΈλ λλ₯Ό λ°°μΈ μ μμμ΅λλ€. 2νκΈ° λμ ν¨κ» ν΄μ€ νμλ€μκ², μμΌλ‘ λ λ©μ§ κ°λ°μλ‘ μ±μ₯νκΈΈ μμν κ²!!!! λͺ¨λ κ³ μνλ€