Android/JETPACK

    [JETPACK개론] Coroutine / ViewModelScope

    [JETPACK개론] Coroutine / ViewModelScope

    Coroutine 코루틴은 비동기적으로 실행되는 코드를 간소화 하기 위해 안드로이드에서 사용할 수 있는 동시 실행 설계 패턴이다. 이 전에 포스팅했던 게시물에서 CallBack Hell을 해결할 수 있는 좋은 수단이다 CallBack Hell 관련 게시물 -> [JETPACK개론] Retrofit의 CallBack Hell 전에 Retrofit을 주제로 포스팅했던 글에서 이어서 작성을 해보겠다. 간단하게 아래와 같은 api를 여러 개 불러온다고 가정해보자. @GET("posts/{number}") fun getPostNumber( @Path("number") number : Int ) :.. ssongcode.tistory.com 코루틴의 기초를 한번 다뤄보자. suspend fun a() { //a작업..

    [JETPACK개론] Retrofit의 CallBack Hell

    전에 Retrofit을 주제로 포스팅했던 글에서 이어서 작성을 해보겠다. 간단하게 아래와 같은 api를 여러 개 불러온다고 가정해보자. @GET("posts/{number}") fun getPostNumber( @Path("number") number : Int ) : Call api.getPost1().enqueue(object : Callback{ override fun onResponse(call: Call, response: Response) { Log.d("API1", response.body().toString()) } override fun onFailure(call: Call, t: Throwable) { Log.d("API1", "fail") } }) api.getPostNumber(2)..

    [JETPACK개론] Retrofit

    [JETPACK개론] Retrofit

    트러버 앱을 만들면서 Retrofit을 많이 이용하였는데 ViewModel 과 코루틴과 같이 사용해본 경험은 없어 아쉬움이 큰 프로젝트였다. 따라서 이번 젯팩 인프런 강의를 들으면서 다시 한번 복습하며 ViewModel과 코투린 같이 사용해볼 예정이다. Retrofit2 관련해서 포스팅했던 링크를 첨부한다!! 개념은 링크를 통해서 보고! 이번 글에서는 젯팩 강의에서 진행했던 실습을 정리해보려고한다! [Android] Retrofit2 사용하기 Retrofit2 ? -Rest API 통신 라이브러리 -Rest API 통신을 위해 구현된 스퀘어사의 OkHttp 라이브러리의 상위 구현체 -android와 서버 환경에서 HTTP API를 쉽고 안전하게 사용할 수 있도록 도와준다. Retrofit을.. ssong..

    [JETPACK개론] DataBinding + ViewModel + LiveData

    [JETPACK개론] DataBinding + ViewModel + LiveData

    앞에서 공부했던 DataBinding과 ViewModel과 LiveData를 사용하여 실습을 진행해보자!! 이렇게 과일 이름이 주어지고, 그 밑 두 개는 위의 과일이름이 섞여서 나오는 프로그램을 ViewModel과 LiveData를 사용하여 구현해보자. 데이터바인딩 준비 buildFeatures{ dataBinding true } ViewModel 준비 class MainViewModel : ViewModel() { private var _mutableWord = MutableLiveData("") val liveWord : LiveData get() = _mutableWord private var _randommutableWord = MutableLiveData("") val randomliveWord..

    [JETPACK개론] Map / SwitchMap

    LiveData를 사용하다 보면 여러 가지의 데이터를 다루게 되고, 이러한 데이터들이 함께 바껴야하는 상황도 많이 만나게 된다. 데이터베이스와 네트워크 통신을 도와주는 라이브러리와 함께 사용되기도 하는데 이 때 Transformation의 Map과 SwitchMap 메소드를 사용한다!! 간단한 실습을 통해 이 두 가지를 알아보자! EditText에 숫자를 입력하고 버튼을 누르면 자동으로 그 숫자끼리 더해지고, 곱해지는 프로그램을 구현해보자. 예를 들어, 10을 입력하면 20과 100이 출력되는 것이다. 위의 메소드를 모두 이용한다고하면, 10이라는 라이브데이터로 20과 100으로 변환시키는 것에서 이용할 수 있을 것이다! private var _mutableCount = MutableLiveData(0)..