Retrofit Retrofit.Builder()

레트로핏의 빌더를 생성해준다.

Retrofit client(OkHttpClient client)

retrofit에서 이용할 okhttp client를 지정해준다.

OkHttpClient.Builder를 이용해서 client를 생생하여 인자로 전달한다.

Retrofit baseUrl(String url)

연결할 원격 http 서버의 url을 지정한다.

url은 되도록 ‘/’으로 끝내도록 한다.

Retrofit addConverterFactory(Factory factory)

http 통신은 json body를 주고받으면서 이루어진다. json을 data class로 변환해야 실제로 어플리케이션에서 데이터를 유용하게 쓸 수 있다.

안드로이드에서 보편적으로 이용하는 Json 컨버터는 Gson이다. GsonConverterFactory를 전달해준다.

Retrofit addCallAdapterFactory

retrofit은 call 객체에 데이터를 담아서 통신을 처리한다. 이때, call 객체에서 데이터를 추출하기 위해서는 데이터의 타입을 Call에서 추출할 수 있어야한다. 만일, call 객체를 사용자가 custom해서 사용한다면, formal한 방법으로는 타입 추출이 안되니 타입추출을 위한 CallAdapterFactory를 정의해줘야한다.