Udacity Developing Android Apps with Kotlin 레슨8 Connect to the Internet 요약

Lesson 8: Connect to the Internet

1. Greetings Earth Friends!

2. Introduction

3. RESTful Services

URI가 URL을 포함하는 개념

4. Libraries

5. App Walkthrough and Starter Code

6. Exercise: Connecting to the Internet

7. Permissions

8. Exercise: Parsing the JSON Response

moshi가 gson이나 jackson보다 더 좋은 이유가 있을까?

https://medium.com/@IlyaEremin/android-json-parsers-comparison-2017-8b5221721e31

jackson이 성능에서 가장 좋은데 친숙하지 않은 API가 단점이라고 함.

moshi는 제이크 와튼이 만든 거라 함께 사용한 듯

9. Exercise: Coroutines and Deferred

Deferred<List<MarsProperty>>

...

private fun getMarsRealEstateProperties() {
   coroutineScope.launch {
       var getPropertiesDeferred = MarsApi.retrofitService.getProperties()
       try {
            var listResult = getPropertiesDeferred.await() // retrofit에 suspend기능의 메소드가 추가됨.
           _response.value = "Success: ${listResult.size} Mars properties retrieved"
       } catch (e: Exception) {
           _response.value = "Failure: ${e.message}"
       }
   }
}

10. Googler Interview: Jake Wharton

11. Exercise: Display an Internet Image

12. Exercise: Display Images in a Grid

ViewModel의 LiveData<List> → layout xml의 바인딩 어댑터로 적용

13. Exercise: Error Handling with RecyclerView

14. Parcel and Parcelables

코틀린에서 @Parcelize 어노테이션이면 Parcelable 완성

15. Exercise: Add the Detail Screen

16. Summary