일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Design Pattern
- ㅓ
- 싱글톤
- 프로토타입 패턴
- factory method
- Kotlin
- 옵저버 패턴
- Abstract Factory
- 코틀린
- 빌터패턴
- builderPattern
- El
- a
- 디자인패턴 #
- 디자인패턴
- Observer Pattern
- ㅋㅁ
- r
- 추상 팩토리
- Functional Programming
- F
- designPattern
- 팩토리 메소드
- 함수형프로그래밍
- Singleton
- 추상팩토리패턴
- PrototypePattern
- Today
- Total
목록분류 전체보기 (327)
오늘도 더 나은 코드를 작성하였습니까?
특수한 반환 유형을 비롯하여 쿼리 메서드에 다양한 반환 유형을 지원합니다. 다음 표는 쿼리 유형 및 프레임워크에 기반한 관련 반환 유형을 보여줍니다. Flow을 사용하는 반응형 쿼리 Room 2.2 이상에서는 Kotlin의 Flow 기능을 사용하여 앱의 UI를 최신 상태로 유지할 수 있습니다. 기본 데이터가 변경될 때 UI가 자동으로 업데이트되도록 하려면 Flow 객체를 반환하는 쿼리 메서드를 작성하세요. 테이블의 데이터가 변경될 때마다 반환된 Flow 객체가 쿼리를 다시 트리거하고 전체 결과 세트를 다시 내보냅니다. 테이블 데이터 변경 ----> 이전에 반환된 Flow 객체가 DB에 쿼리 요청하여 변경된 데이터 수신한다. Flow를 사용하는 반응형 쿼리에는 한 가지 중요한 제한사항이 있습니다. Flow..
앱 데이터에 액세스 하려면데이터 액세스 객체 또는 DAO를 사용해야 된다. 각 DAO에는 앱 데이터베이스의 추상 액세스를 제공하는 메서드가 포함되어 있으므로 이 Dao 객체 세트는 Room의 기본 구성요소를 구성한다. 쿼리 빌더나 직접 쿼리 대신 DAO 클래스를 사용하면 데이터 베이스 구성 요소를 분리하고, 단위 테스트가 수월하다. DAO는 인터페이스 또는 추상 클래스일 수 있습니다. 추상 클래스라면 RoomDatabase를 유일한 매개변수로 사용하는 생성자를 선택적으로 가질 수 있습니다. Room은 컴파일 시간에 각 DAO 구현을 생성합니다. Room은 UI스레드(메인 스레드)에서 데이터 베이스 접근을 허용하지 않는다. (UI를 오랫동안 잠글 수 있기 때문입니다. ) allowMainThreadQuer..
위임 프로퍼티 컴파일 규칙 class C { var prop: Type by MyDelegate() } val c = C() 컴파일러는 MyDelegate 클래스의 인스턴스를 감춰진 프로퍼티에 저장하며 그 감춰진 프로퍼티를 라는 이름으로 부른다. 프로퍼티를 표현하기 위해 KProperty 타입의 객체를 사용한다. 이 객체를 라고 부른다. class C { private val = MyDelegate() var prop: Type get() = .getValue(this, ) set(value: Type) = .setValue(this, , value) } val x = c.prop -------> val x = . getValue(c, ) c.prop = x -------> . setValue( c, ,..
위임 프로퍼티 컴파일 규칙 class C { var prop: Type by MyDelegate() } val c = C() 컴파일러는 MyDelegate 클래스의 인스턴스를 감춰진 프로퍼티에 저장하며 그 감춰진 프로퍼티를 라는 이름으로 부른다. 프로퍼티를 표현하기 위해 KProperty 타입의 객체를 사용한다. 이 객체를 라고 부른다. class C { private val = MyDelegate() var prop: Type get() = .getValue(this, ) set(value: Type) = .setValue(this, , value) } val x = c.prop -------> val x = . getValue(c, ) c.prop = x -------> . setValue( c, ,..