일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 알고리즘 자바
- DataBinding
- android recyclerview
- scope function
- 습관만들기
- Java
- 안드로이드 갤러리 접근
- Android ProgressBar
- Android Interceptor
- Kotlin FCM
- MVP Architecture
- 프로그래머스 알고리즘
- Android 12 대응
- WebView
- Android ViewPager2
- Android DataBinding
- Android Navigation
- 카카오 알고리즘
- Android Jetpack
- 안드로이드 fcm
- Android WebView
- 안드로이드
- OkHttp Interceptor
- 영어독립365
- Android 12
- 영어공부
- Android
- Kotlin
- 66챌린지
- 안드로이드 카카오 로그인
- Today
- Total
목록안드로이드/Pattern (5)
Developer Geek
개요 MVP 패턴이란 [Android] MVP Architecture MVP 패턴이란? Model, View, Presenter로 구성된 아키텍쳐 패턴이다. 등장 배경 처음에 안드로이드 개발을 시작하는 사람이라면 앱에서 사용되는 (비지니스)로직들이 모두 Activity(Fragment)에 작성할 것이 devgeek.tistory.com Model, View, Presenter로 구성된 아키텍쳐 패턴이다. 앱 설명 MVP 아키텍쳐 패턴을 사용하여 명언보기 버튼을 누르면 명언을 랜덤하게 보여준다. 단 명언을 불러오는데 사용자 경험을 고려하여 실행중임을 명시하기 위해 프로그래스바 를 나타낸다. 앱 실행 화면 Code 프로젝트 구조 build.gradle(:app): ViewBinding 세팅 android {..
MVP 패턴이란? Model, View, Presenter로 구성된 아키텍쳐 패턴이다. 등장 배경 처음에 안드로이드 개발을 시작하는 사람이라면 앱에서 사용되는 (비지니스)로직들이 모두 Activity(Fragment)에 작성할 것이다. 이런 개발 접근 방식은 Activity 가 거의 모든 UI와 데이터 처리가지 하게 된다. 나아가 이런 개발 방식은 유지보수와 확장을 어렵게 만든다. 유지보수, 가독성, 확장성 그리고 리팩토링에 유연하게 대처하기 위해서 개발자들은 각각의 코드들이 좋은 레이어단위로 구분되는 걸 선호한다. 아키텍쳐 패턴을 적용함으로써, 우리는 코드를 분리할 수 있다. MVP(Model-View-Presenter) 아키텍쳐는 많이 사용되는 아키텍쳐 패턴 중 하나이고 프로젝트를 조직할 때도 용이하..
Builder Pattern 이란 Builder Pattern은 객체지향 프로그래밍에서 다양한 객체 생성 문제에 대한 유연한 솔루션을 제공하기 위해 설계된 GoF 디자인 패턴 중 하나이다. Builder Pattern의 목적은 복잡한 객체의 구성을 해당 표현과 분리하는 것이다. 빌더 패턴은 다음과 같은 문제를 해결한다. 별도의 Builder 객체에서 복잡한 객체의 일부를 만들고 조합하는 것을 캡슐화한다. 클래스는 객체를 직접 생성하는 대신 Builder 객체에게 객체 생성을 위임한다. 클래스 안에서 직접 복잡한 객체의 대부분을 만들고 조합하는 건 유연하지 않다. 복잡한 객체의 특정 표현을 생성하도록 클래스를 커밋하고 나중에 클래스와 독립적으로 표현을 변경할 수 없도록 한다. 클래스는 복잡한 객체의 다른 ..
Model + View + ViewModel Model: 데이터 원본의 추상화를 담당한다. View: ViewModel에게 유저의 action을 알려주는 역할을 담당한다. 그리고 ViewModel를 구독하여 UI Data를 관리하고 application logic을 담당하지 않는다. ViewModel: View와 관련된 데이터의 흐름을 관장한다. 추가적으로 Model과 ViewModel을 연결한다. MVVM 특징 App의 생명주기 상태가 유지된다. UI 요소는 비즈니스 로직과 무관하다. 비즈니스 로직과 db 운영과의 종속성이 없다. 프로젝트를 이해하고 코드를 읽는 것이 쉽다. MVVM 장점 유지보수: 비즈니스 로직이 View와 독립적으로 돌아가기 때문에 수정보완이 빠르고 다음 버전을 신속하게 출시할 수 ..
개요 앱에서 딱 한번만 생성되고 전역에서 사용할 객체가 필요하다면 우린 Singleton Pattern을 사용하면 된다. Singleton Pattern은 해당 클래스에서 오직 하나의 객체만을 사용하도록 제한하는 것이다. 그래서 Singleton Pattern을 구현하기 위해서는 Singleton Class을 먼저 만들어야 한다. 이번 글에서는 Kotlin을 이용해 Singleton Class 만드는 법을 알아 보도록 한다. Singleton Class Singleton Class 는 오직 하나의 객체만이 생성되고 어디서나 사용될 수 있는 클래스이다. NetworkService, DatabaseService 등 오직 하나의 객체만 필요한 경우에 사용된다. Retrofit2 Singleton 예제 Sing..