-
Notifications
You must be signed in to change notification settings - Fork 0
Retrofit, Okhttp
박진성 edited this page Dec 13, 2023
·
2 revisions
- Squareup 사의 Http 클라이언트 라이브러리
- 내부적으로 OkHttp3 를 사용하고 있음
- Rest API 를 사용할 때, 더 편리하게 Http 통신을 할 수 있게 도와줌
- 직접 Http 통신을 구현을 하게되면, 여러 기초적인 작업들을 직접 코딩해야된다
- Threading,
- 응답 분석,
- 오류 처리,
- 실패요청 재시도,
- 캐싱 ,
- 연결
- 라이브러리를 활용함 으로서, 이런 작업들을 대신 맡기게 되는 것이다.
Type-Safe 한 형태이다
- 런타임에 에러를 확인하는 것이 아닌, 컴파일 과정에서 에러를 확인해주는 Type-Safe 한 형태를 가진다
가독성이 뛰어나다
- Annotation 사용으로, 가독성이 좋음
복잡하지 않은 구현
- Retrofit2 에서 제공하는, Call Wrapper 와 Response Wrapper 를 사용하면, 네트워크 통신 결과값을 손쉽게 처리 간으
- Interface를 생성하고, create 해주면, interface 에 정의한 메서드의 구현체를 알아서 생성해준다. 따라서 Retrofit2 통신 구현체를 직접 생성해 줄 필요가 없다.
빠른 성능
- OkHttp 기반이라 다른 라이브러리보다 빠른 성능을 가짐
- Retrofit2 와 같이 Square 사에 의해 개발된 오픈 소스 HTTP 클라이언트 라이브러리
- HTTP 요청과 응답을 생성하고 처리하는 기본 기능을 제공함
- HTTP 헤더, 바디 등 세부 사항을 제어할 수 있으며, 요청 및 응답에 대한 세밀한 제어가 가능
**낮은 수준의 HTTP 작업 적합!!**
-
위에서 언급했다시피, Retrofit 은 고수준의 HTTP 통신을 하기에 적합하다
-
Okhttp 는 낮은 수준의 HTTP 작업의 적합하기 때문에, Retrofit 과 Okhttp 를 같이 사용하게 되면, 네트워크 통신 매니징이 더 원활해진다.
-
대표적 기능
- Logging : 네트워크 통신의 내용을 Logging 할 수 있다
- Interceptor : 네트워크 통신시, 반복되는 헤더를 주입할 수 있다
-
👬 팀 회고
-
🙍♂️ 개인 회고