Languages
- JavaScript
- Java
- TypeScript
- Node.js
- C
- C#
- C++
- Kotlin
- Lua
- Deno
- Swift
- Rust
- Dart (flutter)
- Vue.js
- Next.js
- React
- HTML
Android
λΌμ΄λΈλ¬λ¦¬
- OkHttp
- Retrofit
- Coroutine
- RxJava
- RxKotlin
- RxAndroid
- Dagger
- Koin
- Hilt
- Paging
- Realm
- LiveData
- DataBinding
- Room
μν€ν μ² ν¨ν΄
μλͺ μ£ΌκΈ°
Activity Life-Cycle
Layout Life-Cycle
4λ μ»΄ν¬λνΈ
- Activity
- Service
- BroadCast Receiver
- Content Provider
Context
μ±κΈν€ μΈμ€ν΄μ€
- Application Context
- Activity Context
Dagger
Component Method
Provision Method
: 맀κ°λ³μ X, λͺ¨λμ΄ μ 곡νλ κ°μ²΄νμ
μ λ°μ
Member-Injection Method
: μμ‘΄μ± μ£Όμ
μ λ°μ κ°μ²΄λ₯Ό λ©μλμ νΌλΌλ―Έν°λ‘ λκΉ (@Inject
)
Hilt
Dependency Injection better then
Dagger
Words
λΈλ‘νΉ/λ ΌλΈλ‘νΉ
μ νμν 맀컀λμ¦
λΈλ‘νΉ
: //todo
λ
ΌλΈλ‘νΉ
: λΈλ‘νΉμ λ°λ μν -> //todo
λκΈ°/λΉλκΈ°
μμ보μ₯ 맀컀λμ¦
λκΈ°
: νμ¬ μμ
μ μμ²κ³Ό μλ΅μ΄ λμμ λ°μνλκ² -> νμ¬ μμ
μ μλ΅κ³Ό λ€μ μμ
μ μμ²μ΄ λμμ λ°μ
λΉλκΈ°
: λκΈ°μ λ°λ μν -> νμ¬ μμ
μ μλ΅κ³Ό λ€μ μμ
μ μμ²μ νμ΄λ°μ΄ μΌμΉνμ§ μμλ λ¨
I/O
Input/Output
CPU
/λ©λͺ¨λ¦¬
μ μ 보λ₯Ό μ£Όκ³ λ°μ (μ°μ°μ ν¨)
νλ μμν¬
κ°λ°μ λ°νμ΄ λλ ν
νλ¦Ώκ³Ό κ°μ μν μ νλ class
μ interface
λ€μ μ§ν©
λ°νμ
νλ‘κ·Έλ¨μ΄ μ€νλκ³ μμλ μ‘΄μ¬νλ κ³³ -> νλ‘κ·Έλλ° μΈμ΄κ° ꡬλλλ νκ²½
μ»΄νμΌνμ
//todo
μΈν°ν리ν°
//todo
νλ‘μΈμ€
μ΄μμ²΄μ¬ νλΉ μμ λ¨μ -> μμ곡μ X
μ€λ λ
νλ‘μΈμ€ λ΄μμ μ€νλλ νλ¦ λ¨μ -> μμ 곡μ O
Dependency Injection
μμ‘΄μ± μ£Όμ
java
μ android
λ₯Ό μν΄ μμ ν μ μ μΌλ‘ λμλ μ»΄νμΌνμ μμ‘΄μ± μ£Όμ
νλ μμν¬
reflection
νλ‘κ·Έλ¨ λ΄λΆ μμ±μ μ‘°μν μ μκ² ν΄μ€
μ±κΈν€
scope
λ₯Ό μ§μ νκ³ κ°μ²΄λ₯Ό μ¬μ¬μ©ν¨
보μΌλ¬νλ μ΄νΈ μ½λ
BoilerPlate Code
μ΅μνμ λ³κ²½μΌλ‘ μ¬λ¬κ³³μμ μ¬μ¬μ© λλ©°, λ°λ³΅μ μΌλ‘ λΉμ·ν ννλ₯Ό λλ μ½λ
Executors
//todo
Wrapper
//todo
Coroutines
//todo