- Single Activity
- MVVM Pattern
- Clean Code
- Repository Pattern
View: Renders UI and delegates user actions to ViewModel
ViewModel: Can have simple UI logic but most of the time just gets the data from UseCase
UseCase: Contains all business rules and they written in the manner of single responsibility principle
Repository: Single source of data. Responsible to get data from one or more data sources
- Fragment: Independent screens that are hosted within an Activity
- LiveData: Lifecycle aware observable and data holder
- ViewModel: Holds UI data across configuration changes
- Databinding: Binds UI components in layouts to data sources
- Dagger-Hilt: Dependency injector
- Coroutines: Asynchronous programming
- Kotlin-Flow: Asynchronous programming
- Retrofit: Type safe HTTP client
- Glide: Media management and image loading framework
- KTX: A set of Kotlin extensions
Copyright tolganacar
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.