지금까지 자바, c언어, 파이썬, 코틀린.. 언어만 배워왔지
실질적으로 back-end는 건들여본 적이 없었따 ㅠㅠㅠㅜ 학교다니면서 심지어는 db수업도 들어본 적이 없구..
이번에 sqlite써보는 김에 수업 때 배운건 helper를 사용하는 것이지만 room으로 한번 도전...(아직 뭔지도 모르겠음)
일단 전반적으로 제일 정리가 잘 되어있던 블로그.
비동기로 작업하려면
1. asyncTask
2. 코루틴
3. RxKotlin
4. JavaThread 의 방법이 있다고 한다.
먼저 가장 익숙했던 asyncTask는 안드로이드11에서 deprecated 되었다고 하고!!!!!
(원래 그냥 쓰던 것도 바꿔야겠군)
2,3 번중에 고민했는데
사실 개인의 선택이지만 RxKotlin은 RxJava를 이미 써본 사람들이 코틀린에서도 적용할 수 있게 좀 더 발전시킨 형태이고 코틀린에서는 코루틴이 제일 좋은 선택이라고 판단했다. 롤리팝 버전에서 문제가 있다는 말이 있던데 어쨌거나 나는 코루틴 선택..!
일단 기본적으로 RxJava를 지원하기 때문에 이 기능들을 모두 사용가능한 것 같고,
- Single 타입은 1개가 오면 success 아무것도 안오면 error를 타게됩니다.
- Maybe 타입은 행이 1개 or 0개가 오거나 Update시
success -> oncomplete를 타게됩니다.
- Flowable 타입은 어떤 행도 존재하지 않을경우 onNext나 onError을 방출하지 않습니다.
LiveData와 observe를 이용해서
데이터의 변경을 감지할 수 있다.
CoroutineScope(Dispatchers.IO).launch {
// 실행할 코드
}
'Kotlin > 안드로이드 공부' 카테고리의 다른 글
editText 텍스트 변경 감지 (0) | 2020.06.19 |
---|---|
fcm (0) | 2020.06.14 |
RecyclerView에 listener 달아주기 (0) | 2020.05.17 |
RecyclerView 만들기 (0) | 2020.05.17 |
AsyncTask (0) | 2020.05.17 |