| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- designPattern
- Observer Pattern
- 함수형프로그래밍
- 코루틴
- Kotlin
- Coroutines
- Singleton
- 프로토타입 패턴
- ㅓ
- 팩토리 메소드
- 디자인패턴 #
- factory method
- define
- compose
- 코틀린
- android designsystem
- ㅋㅁ
- 싱글톤
- 빌터패턴
- material3
- 추상팩토리패턴
- 디자인패턴
- builderPattern
- Functional Programming
- 안드로이드 디자인시스템
- PrototypePattern
- 추상 팩토리
- Design Pattern
- Abstract Factory
- 옵저버 패턴
- Today
- Total
목록전체 글 (339)
오늘도 더 나은 코드를 작성하였습니까?
개방-폐쇄 원칙(OCP, Open-Closed Principle)은 '소프트웨어 개체(클래스, 모듈, 함수 등등)는 확장에 대해 열려 있어야 하고, 수정에 대해서는 닫혀 있어야 한다'는 프로그래밍 원칙이다. Extention -Open Modification - Closed 다음과 같이 동물을 모델링한 객체가 있다. const val ANIMAL_TYPE_DOG = 0 const val ANIMAL_TYPE_CAT = 1 class Animal(private val type: Int){ fun roar() = when(type){ ANIMAL_TYPE_DOG -> println("멍멍") ANIMAL_TYPE_CAT -> println("야옹") else -> Exception("알수 없는 동물이다.")..
디자인패턴 - 개발을 하다 마주치는 문제를 해결하기 위한 방법들의 모음. - 코드를 읽기 쉽고 재사용하기 쉽게. - 디자인 패턴을 적용을 하려고 패턴을 문제에 맞추면 안된다. - 2개 이상 패턴이 혼용되어 적용되는 경우도 있다. - 단순히 Functional Programming으로 더 읽기 쉬운 경우도 있다. Single responsibility(단일 책임의 원칙) 객체 지향 프로그래밍에서 single responsibility principle이란 모든 함수/클래스/모듈는 하나의 책임만 가지며, 그 책임을 완전히 캡슐화해야 함을 일컫는다. 함수/클래스/모듈가 제공하는 모든 기능은 이 책임과 주의 깊게 부합해야 한다. 1. 하나가 많은 책임을 지고 있는 경우 fun multiplicationTable..
UserComponent 이전하기. UserComponent에는 Scope @LoggedUserScope 주석이 추가됩니다. 즉, UserComponent는 @LoggedUserScope 주석이 있는 클래스에 동일한 UserManager 인스턴스를 삽입합니다. UserComponent의 수명주기는 Android 클래스에 의해 관리되지 않으므로 사용 가능한 Hilt 구성요소에 매핑되지 않습니다. 생성된 Hilt 계층구조 중간에 맞춤 구성요소를 추가하는 작업은 지원되지 않는다. 1. hilt와 Dagger를 같이 사용한다. 2. Scope가 지정된 Component를 사용 가능한 가장 가까운 Hilt Component(이 경우 SingleTonComponent)로 이전하고 필요한 경우 null 허용 여부를 ..
각각의 SubComponent를 Hilt로 이전한다. LoginComponent 이전하기. LoginComponent를 직접 만들어 LoginActivity에서 사용하는 대신 Hilt에서 자동으로 처리한다. Hilt가 LoginActivity의 Component를 생성하고 삽입하려면 Activity에 @AndroidEntryPoint 주석을 추가 @AndroidEntryPoint class LoginActivity : AppCompatActivity() { //... } LoginActivity를 Hilt로 이전하기 위해 @AndroidEntryPoint만 추가하면 됩니다. Hilt가 기존의 Dagger Component에 접근하는 코드를 자동으로 생성한다. LoginEntryPoint Interface..