- IDE : Android Studio
- Minimum SDK level 21
- Language : Kotlin based + Transfer build configuration from Groovy + Coroutines for asynchronous.
- Jetpack AAC
- LiveData : Observable data holder class.
- LifeCycle : Use lifecycle-aware components to perform actions in response to lifecycle events such as activities and fragments(viewmodel, livedata).
- ViewModel : Manage data holder classes related to UI and performs asynchronous operations using coroutines for optimal processing.
- Test
- Koin : Dependency injection.
- Retrofit2 : REST APIs.
- OkHttp3 : Implementing interceptor, logging web server.
- Glide : Image loader.
- Lottie : Splash animation.
Activity, Fragment Convension
- inherit
BaseActivity
orBaseFragment
and usingViewBinding
- On Activity and Fragment, work with bindings in
initViews
functions
// ex
fun initViews() = with(binding) {
// do something..
}
- On Activity and Fragment, work with ViewModel in
initCollects
functions
// ex
fun initCollects() = with(viewModel) {
// do something..
}
Test Method Convention
given(option)_when_expect (korea language & when using spaces, use _ )
ex) 예기치 못한 에러가_발생했을때_에러페이지가 잘 보여지는가에 대한 테스트