Android Jetpack 104

Simple Coroutine - 2 (Simple Example)

개복치개발자 강의는 아래의 링크에서 확인할 수 있습니다. 개복치개발자 | Linktree uyalae@naver.com linktr.ee 간단하게 코루틴의 예제들을 보고 가겠습니다. 구글 공식문서에서 설명은 아래와 같이 나와 있습니다. 코루틴은 비동기적으로 실행되는 코드를 간소화하기 위해 Android에서 사용할 수 있는 동시 실행 설계 패턴입니다. 여기에서 포인트는 "비동기"인데, 아마 처음들어보신 분들도 있을 수 있으니 간단하게 설명을 드리면 커피숍이 있다고 생각해볼게요. 여기에서 A라는 고객이 커피를 주문하고 나오기까지 기다리고 커피를 받고 B라는 고객이 커피를 주문하고 나오기까지 기다리고 커피를 받고 C라는 고객이 커피를 주문하고 나오기까지 기다리고 커피를 받고 의 과정을 반복하는데, 이 과정이 ..

Android Jetpack 2022.02.13

Simple Coroutine - 1 (코루틴이란?)

개복치개발자 강의는 아래의 링크에서 확인할 수 있습니다. 개복치개발자 | Linktree uyalae@naver.com linktr.ee 간단하게 코루틴(Coroutine)에 대해서 알아보고 가겠습니다. 뒤에서 좀 더 자세하게 알아보기 전에 간단하게만 알아보고 가겠습니다. 코루틴을 처음 들어보시는 분들은 코루틴 / 코루틴 이름이 비슷하니깐 뭔가 얘랑 관련이 있는건가 라고 생각이 듭니다. 그런데 코루틴은 Koroutine 이 아니라 Coroutine입니다. Kotlin이란 이름과는 별 상관이 없습니다. 아래 처럼 여러 언어에서 사용한다고 하네요. 다른 언어를 한번 살펴볼까요? 파이썬 문서를 보니 파이썬에도 Coroutine이라는 설명이 있습니다. 위키피디아를 보면 위키피디아에서는 코루틴을 아래와 같이 설명..

Android Jetpack 2022.02.12

Retrofit - 3 ( Retrofit + Livedata + ViewModel)

개복치개발자 강의는 아래의 링크에서 확인할 수 있습니다. 개복치개발자 | Linktree uyalae@naver.com linktr.ee Retrofit을 LiveData및 ViewModel을 이용해서 한번 해보도록 하겠습니다. 추후에 MVVM패턴이라는 것을 이용해서 이 것을 좀 더 아름답게? 꾸밀 텐데, 일단 지금까지 배운 것으로 한번 해보겠습니다. 우선 폴더 구조는 아래와 같습니다. 아래의 링크에서 영상으로 보실 수 있습니다. https://www.inflearn.com/course/%EC%B9%9C%EC%A0%88%ED%95%9C-jetpack-1?inst=3b988560 [중급편] 친절한 JETPACK 개론 (Android Kotlin) - 인프런 | 강의 코틀린으로 안드로이드 개발을 위한 젯팩(..

Android Jetpack 2022.02.08

Retrofit - 2 (Simple Retrofit Example)

개복치개발자 강의는 아래의 링크에서 확인할 수 있습니다. 개복치개발자 | Linktree uyalae@naver.com linktr.ee 간단한 Retrofit 예제를 한번 해보도록 하겠습니다. 우선적으로 gradle에 implementation을 해줍니다. implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.retrofit2:converter-gson:2.9.0' 폴더 구조는 아래와 같고 코드는 아래와 같습니다. 다음 글에서 Retrofit + Livedata + ViewModel + Coroutine을 이용해서 한번 해보겠습니다.

Android Jetpack 2022.02.07

Retrofit - 1 (Retrofit / GSON이란?)

개복치개발자 강의는 아래의 링크에서 확인할 수 있습니다. 개복치개발자 | Linktree uyalae@naver.com linktr.ee Retrofit과 GSON에 대해서 알아보겠습니다. 많이들 들어보셨고, 써본 분들도 많으실테지만, 한번 정의를 짚고 넘어가겠습니다. Retrofit 에 대해서 보면 Retrofit is a type-safe REST client for Android, Java and Kotlin developed by Square. The library provides a powerful framework for authenticating and interacting with APIs and sending network requests with OkHttp This library ma..

Android Jetpack 2022.02.04

Android Room - 5 (Room + ViewModel + ViewModelScope + LiveData)

개복치개발자 강의는 아래의 링크에서 확인할 수 있습니다. 개복치개발자 | Linktree uyalae@naver.com linktr.ee Room을 이전에 배운 ViewModel과 LiveData를 이용해서 함께 사용해보도록 하겠습니다. 여기에서 ViewModelScope와 AndroidViewModel이라는 친구가 나옵니다. 간단하게 설명드리고 가면 ViewModelScope 이 부분은 코루틴을 할 때 설명드리긴 할 것인데, 쉽게 말하면 ViewModel을 코루틴과 결합하여 사용하는 것입니다. (코루틴은 rx를 해보셨다면, rxjava와 유사한 친구로 이해하시면 될 것 같고, 아니면 그냥 비동기 작업을 해주는 쓰레드 정도로 알고 계셔도 될 것 같습니다.) 그리고 AndroidViewModel은 구글링을..

Android Jetpack 2022.01.27

Android Room - 4 (Room Muti Table / Show DB)

개복치개발자 강의는 아래의 링크에서 확인할 수 있습니다. 개복치개발자 | Linktree uyalae@naver.com linktr.ee 이전 글을 통해서 간단한 Room을 써보는 과정을 진행해봤습니다. 그 이번에는 Table 하나가 아니라, 여러개의 테이블은 보는 방법과 DB를 시각적으로 보는 방법들에 대해서 설명해보겠습니다. 일단 데이터가 어떤 데이터가 있는지 확인해볼까요? Android Debug Database라는 친구를 사용해볼것입니다. https://github.com/amitshekhariitbhu/Android-Debug-Database GitHub - amitshekhariitbhu/Android-Debug-Database: A library for debugging android dat..

Android Jetpack 2022.01.22

Android Room - 3 (Room Simple ex)

개복치개발자 강의는 아래의 링크에서 확인할 수 있습니다. 개복치개발자 | Linktree uyalae@naver.com linktr.ee 이번에는 ROOM에 대해서 알아보겠습니다. 공식문서에 있는 그림으로 가장 잘 표현이 되어 있습니다. 위에서 보여주는 그림에서 DAO(Data Access Objects), Entities 라고 2개가 나옵니다. 이 친구들 간단하게 생각해보면 DAO - 이름 그대로 Data에 접근(Access)하는 친구입니다. SQLite에서 Query날렸던 것 처럼 쿼리를 날려주는 곳인데, 아래와 같이 사용할 수 있습니다. 그리고 Entities같은 경우는 데이터베이스에 데이터 모델(스키마)를 정의해주는 곳이라고 생각해주시면 될 것 같습니다. 그렇다면 굉장히 간단한 예제를 통해서 어떻..

Android Jetpack 2022.01.21

Android Room - 2 (SQLite Simple Ex)

Room이 좋다는 것을 알기 전에, SQlite가 어떤 식으로 동작하는지는 알아야, Room과 비교할 수 있겟죠? 간단하게 SQLite을 어떻게 쓰는지 코드로 알아보겠습니다. 전체적인 느낌은 DB에 SQL문을 날릴 때의 느낌과 유사합니다. 간단하게 INSERT/GETALL/DELETE 정도만 구현해봤습니다. - 참조 https://developer.android.com/training/data-storage/sqlite?hl=ko SQLite를 사용하여 데이터 저장 | Android 개발자 | Android Developers SQLite를 사용하여 데이터 저장 데이터베이스에 데이터를 저장하는 작업은 연락처 정보와 같이 반복적이거나 구조화된 데이터에 이상적입니다. 이 페이지에서는 개발자가 일반적으로 SQ..

Android Jetpack 2022.01.21

Android Room -1 (Room vs SQLite)

이번에는 Android ROOM에 대해서 알아보겠습니다. 로컬DB 즉 네트워크 서버가 아니라, 핸드폰 디바이스에 저장되는 저장공간입니다. 카카오톡을 생각하면 편한데, 얘가 네트워크가 끊어져 있어도 대화창이 나옵니다. 당연히 대화 내용을 네트워크에서 받아와야 할 텐데, 네트워크 연결이 끊겨있는데도 나오는 것을 보면, 어딘가에 저장된 곳에서 가져오겠죠? 이와 유사하게 로컬(local)DB를 사용해서 데이터를 저장하고 불러올 수 있습니다. 안드로이드에서는 대표적으로 SQLite와 ROOM이 있습니다. 이 2개의 차이를 한번 볼까요? 구글 문서에서는 아래와 같이 설명하고 있습니다. Room은 SQLite에 대한 추상화 레이어를 제공하여 원활한 데이터베이스 액세스를 지원하는 동시에 SQLite를 완벽히 활용합니다..

Android Jetpack 2022.01.20