본문

[2018.03.17] 99. OkHttp VS Retrofit

도입

이번 포스팅에서는 Okhttp 라이브러리와 Retrofit 라이브러리의 개념과 차이점에 대해 정리 할 예정이다.

안드로이드 개발을 하면서 서버와 통신하기 위해 가장 많이 사용하는 라이브러리이지만 Okhttp와 Retrofit에 대하 잘 이해하지 못하고 사용했다.. 이번 기회를 통해 확실히 정리할 예정이다.



OkHttp 개념

(출처 - http://square.github.io/okhttp/)

OkHttp는 서버와 HTTP, HTTP/2 프로토콜 통신을 위한 클라이언트 라이브러리이다.

만약, 안드로이드에서 OkHttp를 사용하지 않고 HTTP로 통신하기 위해서는 

1. HttpURLConnection 연결

2. Buffer를 통한 입출력

3. 예외 처리

등등 개발자가 많은 부분을 신경 써야한다. 

복잡도가 증가하면 실수할 가능성도 커진다.


하지만, OkHttp는 이러한 부분을 쉽게 해결해 준다.


Retrofit 개념

(출처 - http://square.github.io/retrofit/)

Retrofit은 type-safe한 HTTP 클라이언트 라이브러리이다. (type-safe 개념)

내가 이해하기로는 Retrofit을 사용하므로 RESTFul 통신을 쉽게 할 수 있다. (RESTFul 개념)



궁금증

그렇다면!! 

Q. Retrofit은 OkHttp 라이브러리가 없이 동작할까? 라는 의문이 들었다.

개념에 따르면 Retrofit은 OkHttp 위에서 동작하기 때문이다. 그래서 내부 코드를 확인해보았다.


A. 결론

Retrofit은 OkHttp 클라이언트를 디폴트로 선언한다!




#OkHttp #Retrofit

공유

댓글