블로그 이전하는김에 점점 까먹고 있는 RxJava 다시 한 번 공부해보도록 하려고 합니다. RxJava를 깊게 공부하기 전 간단한 개념 먼저 살펴보도록 하겠습니다. 리액티브 프로그래밍 데이터의 변화가 발생했을 때 변경이 발생한 곳에서 새로운 데이터를 보냄.(Push 방식) 함수형 프로그래밍의 지원이 필요 멀티 스레드 환경에서 사용할시 데드락과 동기화 문제 발생할 수 있음. Observable.just("hello") .subscribe(System.out::println); Observable 클래스 데이터의 변화가 발생하는 데이터 소스 just()함수 Observable 선언 방식 Subscribe() 함수 Observable을 구독하며 Observable은 subscribe() 함수를 호출해야 변화한..
지난번에 면접에서 해당 질문을 받았는데 제대로 답하지 못했습니다... 다시 정리하며 기억하기 위해 enum클래스와 sealed클래스의 차이점에 대해 알아보려고 합니다. Enum class vs Sealed class 👉🏻둘다 타입을 제한적으로 사용하고자 할 때 많이 사용하게 됨. - `Enum`에서는 특정 값을 single instance로서 하나의 객체만 제한적으로 사용할 수 있으며, 생성자의 형태도 동일해야만 한다. - `Sealed`에서는 state을 포함하고 있는 여러개의 instance를 가질 수 있고, 생성자도 각각의 특징에 따라서 다르게 가져갈 수 있다. ⇒ 정적인 아닌 다양한 state를 사용할 수 있다. 🎈Sealed Class - 자기 자신이 추상 클래스이고, 자신을 상속받는 여러 서브..
Dispatcher에 Coroutine을 붙이는 작업을 하기 위해서는 async와 launch 두 가지 메소드를 이용할 수 있습니다. 그렇다면 launch와 async에 차이점과 언제 사용해야하는지 알아보려고 합니다! launch란 launch를 통해 코루틴 블록을 만드는 것을 코루틴 빌더 생성이라고 하며, launch는 현재 스레드를 차단하지 않고 새로운 코루틴을 실행할 수 있으며 특정 결과값 없이 Job 객체를 반환합니다. fun main() { val job = GlobalScope.launch { delay(1000L) println("coroutine launch") } println("call in main") println("job is Active: ${job.isActive}, Compl..
내 블로그 - 관리자 홈 전환 |
Q
Q
|
---|---|
새 글 쓰기 |
W
W
|
글 수정 (권한 있는 경우) |
E
E
|
---|---|
댓글 영역으로 이동 |
C
C
|
이 페이지의 URL 복사 |
S
S
|
---|---|
맨 위로 이동 |
T
T
|
티스토리 홈 이동 |
H
H
|
단축키 안내 |
Shift + /
⇧ + /
|
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.