본문 바로가기

Android2

13장. Rxjava 적용하기 커니의 코틀린 책의 내용을 요약한 글입니다. 1. Reactive Extensions 란? ReactiveX 라고도 부릅니다. reactive extensions 이벤트 기반 비동기 프로그래밍을 위한 라이브러리입니다. (RxJava, RxJS, RxClojure, RxSwift, RxScala 등 포함) 발생하는 이벤트를 스트림에 전달하고, 이 스트림을 관찰하다가 원하는 이벤트를 감지하면 동작을 수행하는 방식으로 동작합니다. 2. RxJava 란? 안드로이드를 포함하여 모든 자바 기반 플랫폼에서 사용할 수 있는 ReactiveX 라이브러리의 JVM 구현체 입니다. 1) 옵저버블(Observable) 옵저버블은 이벤트를 만들어(emit)내는 주체로, 스트림을 통해 만든 이벤트를 내보냅니다. 2) 옵저버(O.. 2020. 9. 25.
널이 될 수 있는 타입 / 될 수 없는 타입 커니의 코틀린 책의 내용을 요약한 글입니다. 자바의 널(null) 처리 프로그래밍을 하면서 가장 많이 마주치는 버그 중 하나로 NPE(null pointer exception) 를 들 수 있을 것입니다. 자바에서는 NPE 를 방지하기 위해 어노테이션의 도움을 받아 널 허용 여부를 다음과 같이 구분합니다. // 널 값을 허용 @Nullable String name; // 널 값을 허용하지 않음 @NonNull String name; 그러나 어노테이션으로 널 어용 여부를 확인하는 것은 Android Lint 와 같은 정적 분석 도구에서 지원하는 기능이기 때문에 여전히 NPE(null pointer exception) 가 발생할 여지가 있습니다. 위의 코드에서도 보다시피 NonNull 로 선언한 변수를 초기화.. 2020. 9. 22.