π» κ°λ°/Android
GitHub - k906506/MVVM: π¨ MVVMμ΄ λμμ? π¨ MVVMμ΄ λμμ? Contribute to k906506/MVVM development by creating an account on GitHub. github.com MVVM λ λ²μ§Έ μκ°μ΄λ€. κ°μμ€λ½κ² μ°Ύμμ¨ μ΄μ λ μ‘Ένλ₯Ό μ§ννλ€κ° RecyclerView λ₯Ό Room μ μ¬μ©ν΄μ MVVM ν¨ν΄ μΌλ‘ ꡬννλλ° μ μμ μΌλ‘ μλνμ§ μμμ RecyclerView + Room + MVVM μ μ 리νκ³ μ½λλ₯Ό λ€μ λ³΄λ €κ³ νλ€. μ°μ MVVM μ ꡬννκΈ° μν΄μλ μμ κ·Έλ¦Όμ μ΄ν΄νκ³ λμ΄κ°λ κ²μ΄ μ’λ€. κ·Έλ¦Όμμ μ£ΌμκΉκ² λ΄μΌν κ²μ νμ΄νμ λ°©ν₯ μ΄λ€. λͺ¨λ νμ΄νκ° λ¨λ°©ν₯μΌλ‘ μ°κ²° λμ΄μκ³ μμ μμλ νμ μμλ₯Ό μ°Έμ‘°νλ€. μ°Έμ‘°..
π» κ°λ°/Kotlin
κ°λ³μ± λ³ν μ μλ€? κ°λ³μ±μ΄ λμμ? π μ½νλ¦° μμμ κ°λ³μ±μ νμ 맀κ°λ³μκ° ν΄λμ€ κ³μΈ΅μ μν₯μ μ£Όλ κ²μ λ§νλ€. μλ₯Ό λ€μ΄ νμ Aμ κ°μ΄ νμν λͺ¨λ ν΄λμ€μ νμ Bμ κ°μ λ£μ΄λ λ¬Έμ κ° μλ€λ©΄ Bλ Aμ νμ νμμ΄ λλ€. μλ μ½λλ₯Ό 보μ. val integer : Int = 1 val number : Number = integer // Numberλ μμ μλ£ν, Intλ νμ μλ£ν IntνμΌλ‘ μ μΈν integer λ³μκ° NumberνμΌλ‘ μ μΈν number λ³μμ ν λΉν΄λ μ무 λ¬Έμ κ° μλ κ²μ λ³Ό μ μλ€. μ΄κ² λ°λ‘ κ°λ³μ±μ΄λ€. λ λ€λ₯Έ μλ‘λ Int?μ Intκ° μλ€. Int?λ nullλ ν¬ν¨νλ―λ‘ Int?κ° Intμ μμ μλ£νμ΄ λλ€. κ°λ³μ±μ 3κ°μ§ μ ν κΈ°λ³Έμ μΌλ‘..
π» κ°λ°/Kotlin
μ λ€λ¦ μ λ€λ¦ , λ€λ₯Έ μΈμ΄λ₯Ό μ΄λ―Έ κ²½ννκ³ μλ€λ©΄ λ―μ λ¨μ΄λ μλλ€. λ λμΆ© μκΈ°νλ©΄ μλ£ν μ λμ€μ μ μΈνλ? κ·Έλ° λλμ΄λ€. μ°μ νμ€νκ² μ§κ³ λμ΄κ°λ³΄μ. κ·Έλμ μ λ€λ¦μ΄ λκ³ μ μ°λκ±°μμ? π€ μ λ€λ¦ μ ν΄λμ€ λ΄λΆμμ μ¬μ©ν μλ£νμ λμ€μ μΈμ€ν΄μ€λ₯Ό μμ±ν λ νμ νλ λ°©λ²μ΄λ€. μ λ€λ¦μ΄ λμ€κ² λ λ°°κ²½μ μλ£νμ κ°μ²΄λ€μ λ€λ£¨λ λ©μλλ ν΄λμ€μμ μ»΄νμΌ μκ°μ μλ£νμ κ²μ¬νμ¬ μ λΉν μλ£νμ μ ννκΈ° μν΄μμ΄λ€. μ λ€λ¦μ μ¬μ©νλ©΄ κ°μ²΄μ μλ£νμ μ»΄νμΌν λ 체ν¬νκΈ° λλ¬Έμ κ°μ²΄ μλ£νμ μμ μ±μ λμ΄κ³ ν λ³νμ λ²κ±°λ‘μμ΄ μ€μ΄λ λ€. μ λ€λ¦μ μ¬μ© λ°©λ² μ λ€λ¦μ μ΅κΈ λΈλν· μ¬μ΄μ νμ 맀κ°λ³μ λ₯Ό λ£μ΄ μ μΈνκ³ νλ μ΄μμ νμ 맀κ°λ³μλ₯Ό μ§μ ν μ μλ€. νμ 맀κ°λ³μλ μ..
π» κ°λ°/Kotlin
λ³΄ν΅ ν΄λμ€ λ μμ±κ³Ό λμμ κ°μ§κΈ° λλ¬Έμ νλ‘νΌν° μ λ©μλ λ₯Ό λ©€λ²λ‘ κ°μ§λ€. λ¨μ½ νΉμ λμμ κ°μ§μ§ μκ³ μ€λ‘μ§ λ°μ΄ν° μ μ₯μ μν΄ μ¬μ©νλ€λ©΄ μΌλ°μ μΈ ν΄λμ€μμμ ꡬν λΆλΆμ νμκ° μμ κ²μ΄λ€. ꡬνλΆλ₯Ό μμ±νμ§ μμΌλ©΄ κ·Έλ§νΌ λ©λͺ¨λ¦¬λ₯Ό λ μ¬μ©νκ² λκ³ μμμ λλΉλ₯Ό λ§μ μ μκ² λ κ²μ΄λ€. μ΄μ²λΌ μ½νλ¦°μμλ λ°μ΄ν° μ μ₯μ μν ν΄λμ€κ° μλλ° λ°λ‘ λ°μ΄ν° ν΄λμ€ μ΄λ€. λ°μ΄ν° ν΄λμ€ λ³΄ν΅ λ°μ΄ν° μ λ¬μ μν κ°μ²΄λ₯Ό DTO(Data Transfer Object) λΌκ³ λΆλ₯Έλ€. ꡬν λ‘μ§μ κ°μ§κ³ μμ§ μκ³ μμν λ°μ΄ν° κ°μ²΄λ₯Ό νννκΈ° λλ¬Έμ μμ±κ³Ό μμ±μ μ κ·Όνκ³ μ νλ κ²ν°μ μΈν° λ₯Ό κ°μ§λ€. μΆκ°μ μΌλ‘ toString(), equals() κ³Ό κ°μ λ°μ΄ν°λ₯Ό νννκ±°λ λΉκ΅νλ λ©μλ..
π» κ°λ°/Kotlin
μΆμ ν΄λμ€ μΆμ ν΄λμ€ VS μΈν°νμ΄μ€ μΆμ ν΄λμ€ λ λλ΅μ μΈ μ€κ³μ λͺ
μΈμ 곡ν΅μ κΈ°λ₯μ ꡬνν ν΄λμ€μ΄λ€. μ¦, ꡬ체μ μ΄μ§ μμ κ²μ΄λ€. μΆμ ν΄λμ€ λ₯Ό μμνλ νμ ν΄λμ€ λ μΆμ ν΄λμ€μ λ΄μ©μ λ ꡬ체ν ν΄μΌ νλ€. μ€μ? κ·ΈλΌ μΆμ ν΄λμ€λ μΈν°νμ΄μ€λ κ°μ κ±° μλ? π€ μλ°ν λ§νλ©΄ λ€λ₯΄λ€. μΈν°νμ΄μ€ μμ λλ΅μ μΈ μ€κ³ λͺ
μΈλ₯Ό ꡬννκ³ μΈν°νμ΄μ€ λ₯Ό μμνλ νμ ν΄λμ€ μμ μ΄λ₯Ό ꡬ체ννλ κ²μ λμΌνλ€. νμ§λ§ μΈν°νμ΄μ€μμλ νλ‘νΌν°μ μν μ 보λ₯Ό μ μ₯ν μ μλ€. λ€μ λ§νλ©΄ μΈν°νμ΄μ€ μμλ νλ‘νΌν°μ μ΄κΈ°ν κ° λΆκ°λ₯νλ€λ κ²μ΄λ€. interface Vehicle { val name : String val color : String val weight : Double } ..
π» κ°λ°/iOS
곡λΆν κ² μ μ²κΈ° 21λ
3νμ°¨ μκ²λ κ² [1κ³Όλͺ©] μννΈμ¨μ΄ μ€κ³ 1. λλ°μ° λΆμ κΈ°λ² - κ°μ²΄ λͺ¨λΈλ§ -> λμ λͺ¨λΈλ§ -> κΈ°λ₯ λͺ¨λΈλ§ μμΌλ‘ μ§νΉ - κ°μ²΄ λͺ¨λΈλ§ : μ 보 λͺ¨λΈλ§μ΄λΌκ³ λ λΆλ₯΄λ©° ν΄λμ€ λ€μ΄μ΄κ·Έλ¨μ μμ± - λμ λͺ¨λΈλ§ : μν λ€μ΄μ΄κ·Έλ¨μ μμ± - κΈ°λ₯ λͺ¨λΈλ§ : μλ£ νλ¦λ(Data Flow Diagram)μ μμ± 2. μꡬμ¬ν κ°λ° νλ‘μΈμ€ λμΆ(μꡬμ¬ν μμ§) -> λΆμ -> λͺ
μΈ -> νμΈ(μꡬμ¬ν κ²μ¦) 3. μ μμΌ κ°λ° νλ‘μΈμ€ - μ΅μ€νΈλ¦Ό νλ‘κ·Έλλ° : XP, κ³ κ°κ³Ό ν¨κΌ 2μ£Ό μ λμ λ°λ³΅ κ°λ°, TDD - μ€ν¬λΌ : 30μΌλ§λ€ λμ κ°λ₯ν μ νμ μ 곡νλ μ€νλ¦°νΈ κ°λ° 4. UML κ΄κ³ - μΌλ°ν : Generalization, μ€μ μΌκ° νμ΄ν, μΌλ°μ μΈ κ²κ³Ό ..
π» κ°λ°/iOS
곡λΆν κ² μ μ²κΈ° 21λ
1νμ°¨ μκ²λ κ² [1κ³Όλͺ©] μννΈμ¨μ΄ μ€κ³ 1. λμμΈ ν¨ν΄ - μμ± ν¨ν΄ : μΆμ ν©ν 리, λΉλ, ν©ν 리 λ©μλ, νλ‘ν νμ
, μ±κΈν€ - ꡬ쑰 ν¨ν΄ : μ΄λν°, λΈλ¦¬μ§, μ»΄νΌμ§νΈ, λ°μ½λ μ΄ν°, νΌμ¬λ, νλ‘μ - νμ ν¨ν΄ : 컀맨νΈ, μ΅μ λ², μ λ΅, μν 2. κ°μ²΄μ§ν₯ λΆμ λ°©λ²λ‘ - Cord-Yourdon : E-R λ€μ΄μ΄κ·Έλ¨μ μ¬μ©νμ¬ κ°μ²΄μ νμλ₯Ό λ°μ΄ν° λͺ¨λΈλ§ νλλ° μ΄μ 3. μννΈμ¨μ΄ μμ€ν
λΆμ - νλ«νΌ κΈ°λ₯ λΆμ - νλ«νΌ μ±λ₯ νΉμ± λΆμ - μ΄μ체μ λΆμ - λ€νΈμν¬ λΆμ - DBMS λΆμ 4. UML - ν΄λμ€ λ€μ΄μ΄κ·Έλ¨ : μμ€ν
μ ꡬμ±νλ ν΄λμ€λ€ μ¬μ΄μ κ΄κ³λ₯Ό νμ - μ‘ν°λΉν° λ€μ΄μ΄κ·Έλ¨ : μμ€ν
λ΄λΆμ μ‘΄μ¬νλ μ¬λ¬ νμμ λΆκΈ° λ° μ‘°κ±΄μ νμ ..
π» κ°λ°/iOS
곡λΆν κ² μ μ²κΈ° 22λ
1νμ°¨ μκ²λ κ² [1κ³Όλͺ©] μννΈμ¨μ΄ μ€κ³ 1. μννΈμ¨μ΄ μ€κ³ λ°©λ² - μν₯μ μ€κ³ λ°©λ² : λ°ν
μ
, μμ λ¬Έμ λ₯Ό ν΄κ²°νμ¬ ν° λ¬Έμ λ‘ ν΅ν©, κ°μ²΄ μ§ν₯ νλ‘κ·Έλλ° (Java) - νν₯μ μ€κ³ λ°©λ² : νλ€μ΄, ν° λ¬Έμ λ₯Ό μμ λ¬Έμ λ‘ λΆν΄, μ μ°¨ μ€μ¬ νλ‘κ·Έλλ° (C) 2. λ°μ΄ν° νλ¦λ - νλ‘μΈμ€ : μ - λ°μ΄ν° νλ¦ : νμ΄ν - λ°μ΄ν° μ μ₯ : ννμ - μ’
λ£ : μ¬κ°ν 3. UI μ€κ³ λꡬ - μμ΄μ΄ νλ μ : νμ΄μ§μ λν λλ΅μ μΈ λ μ΄μμ λ° UI μμ μ€κ³ - λͺ©μ
: μμ΄μ΄ νλ μμμ λμμΈ, μ¬μ© λ°©λ² μ€λͺ
, νκ°λ₯Ό μν΄ μ€μ νλ©΄κ³Ό μ μ¬νλλ‘ UIλ₯Ό λ³κ²½ (μ μ ) - μ€ν 리보λ : μμ΄μ΄ νλ μμμ μ½ν
μΈ μ€λͺ
, νλ¦λ μΆκ° - νλ‘ν νμ
: μμ΄μ΄ νλ μ..
π» κ°λ°/Android
GitHub - k906506/MVVM: π¨ MVVMμ΄ λμμ? π¨ MVVMμ΄ λμμ? Contribute to k906506/MVVM development by creating an account on GitHub. github.com μμ¦ MVVM μ λν΄μ 곡λΆνκ³ μλ€. μ§κΈκΉμ§ μ± κ΅¬νν λ κ·Έλ₯ μ‘ν°λΉν°μ λ€ λλ €λ°μμλλ° λͺ¨λΈμ΄λ λ·°κ° λ무 κ°νκ² κ²°ν©λμ΄ μλ λλμ΄ κ°νλ€. λν λλΆλΆμ λ‘μ§μ λ·°(μ‘ν°λΉν°)μμ μ²λ¦¬νκ³ νκ³ μμκ³ μ¬μ¬μ©μ±μ΄ λ§€μ° λ¨μ΄μ‘μλ€. μ€μ λ‘ κ²¨μΈλ°©νμ μ§ννλ κΈλ‘λ²μΈμ¬νΈλ λ μ΄ν μ νλ λ§λ€μκ³ λλ¦ λΆλ¦¬νλ€κ³ λΆλ¦¬νλλ° μ§μ§ μ¬μ¬μ©μ±μ΄ 0 μ΄μλ€. MVC κ° κ΅¬ννκΈ°λ μ λ§ νΈνμ§λ§ μ΄ κΈ°νμ ν¨ν΄ 곡λΆλ ν κ²Έ MVVM μ μ νκ² λμλ€. λ¬Όλ‘ MVC ..
π» κ°λ°/μ€λμ μ½μ§
μ€λ₯ λ°μ Databinding + ViewModel + LiveData λ‘ κ°λ¨ν MVVM μμ λ₯Ό ꡬννκΈ° μν΄ Databinding μΌλ‘ ννν λ³μ(?)λ₯Ό layout μμ λΈλμ λ£μ΄μ€¬λλ λ°μν μ€λ₯ μ€λ₯ λ΄μ© ν΄κ²° String μΌλ‘ λ³ννμ§ μμμ λ°μν λ¬Έμ ... γ
γ
γ
γ
γ
... toString() μ ν΄μ€¬λλ μ μμ μΌλ‘ μλνλ€. μ°Έκ³ MVVM μμ StackOverFlow