본문 바로가기
반응형

Square5

Dagger를 통한 Dependency Injection 구현 오늘은 Dependency Injection에 대한 지난 글에 이어서, Dagger를 통해서 어떻게 이를 구현하는지 정리해 보려고 합니다. 혹시 이전 글을 읽지 못하신 분들은아래 글의 링크를 참조해 주세요. Dependency Injection(DI)에 대해서 알아보자 Dagger1은 Retrofit등 유명한 라이브러리를 개발한 Square사의 작품이구요. 현재 사용되는 Dagger2는 구글에서 포크하여 개발하고 있습니다. 무조건적인 신뢰는 좋지 않습니다만, 이들 회사의 네임밸류와 포트폴리오 만으로도, 라이브러리에 대한 믿음이 생기는 건 어쩔수가 없네요. 그럼 Dagger를 구현하는 방법에 대해서 정리해 보도록 하겠습니다. 1. dagger2를 통한 구현준비 1-1. 라이브러리 Implement 라이브러.. 2021. 12. 22.
Dependency Injection(DI)에 대해서 알아보자 Dependency Injection(DI)은 개발을 해 보신분이라면 어디선가는 결국 듣게 되는 개념입니다. 오늘은 복잡해 보이는 이 개념이 무엇인지 정리해 보도록 하겠습니다. 1. Dependency Injection(DI) 1-1. Dependency 우리말로는 의존 혹은 의존성이라고 할 수 있겠는데요. 그럼 누가 누구에게 의존하는 것일까요? 하나의 클래스가 다른 하나의 클래스에 의존하는 것을 의미합니다. A클래스가 객체를 만들기 위해 B를 필요로 하는 것인데요. B는 A의 의존(Dependency)의 대상이 되는 것이지요. 현실에 비교해 보면, 자동차 회사는 타이어 부품회사에 의존하고 있고, 타이어 부품회사는 의존의 대상,즉 Dependency가 되는 것이지요. 각각 Car클래스와 Tire클래스를 .. 2019. 12. 28.
RxJava로 구현하는 EventBus Event를 하나의 클래스에서 받아서 중개해주는 방식의 EventBus방식은,바로 연결되어 있지 않아서 Listener를 전달하기 힘들 Activity나 Fragment, Service들 사이에 Event를 전달하기 참 좋은데요.EventBus나 지금은 Deprecated된 Square사의 Otto도 있지만, RxJava로도 구현할 수 있습니다.(Otto가 Deprecated된 이유도 RxJava때문이지요.) 오늘은 이 방법에 대해서 정리해 보겠습니다. 1. 구현 방법 우선 간단하게 구현방법을 정리해 보겠습니다.먼저, Event의 중개자가 될 Singleton방식의 EventBus클래스를 생성하구요.이 EventBus를 이용해, EventSend와 EventGet을 할 수 있는 메소드를 만들어 줍니다. .. 2017. 9. 28.
ProGuard Rules 정리 (Retrofit & OkHttp, JSoup, GSon, RxJava, Glide etc) 다양한 라이브러리를 사용하는 만큼, 다양한 ProGuard를 사용해야 합니다.그런데, 어떤 라이브러리는 이 부분에 대해서 명확히 정리하고 있고,또 어떤 라이브러리는 그렇지 못합니다. 오늘은 제가 주로 사용하는 라이브러리들의 Proguard세팅과 링크들을 정리해 보겠습니다. 1. Retrofit & OkHttp 안드로이드 앱에서 네트워크를 사용한다면 대부분이 사용하는 라이브러리일 것 같은데요.라이브러리도 잘 만들었지만, Proguard룰도 홈페이지에 잘 정리해 두었습니다. 역시 믿고 의지하는 Square네요.아래 링크의 페이지에서, 하단부에 Proguard-Rule을 소개하고 있구요.더불어 Retrofit이 사용하는 OkIo의 Proguard-Rule의 링크도 제공해 주고 있습니다. http://squar.. 2017. 7. 8.
OKHttp 의 Application Interceptor 와 Network Interceptor 안드로이드 앱을 만들면서 네트워크 라이브러리로 무엇을 쓰시나요? 물론, 구글 개발자사이트에서 코드까지 제공해주는 Volley Library도 있긴하지만, 실제로 구글도 많이는 않쓴다고 하지요. 저와 제 주변에서는 OKHttp가 많이 쓰이는 것 같은데요. 오늘은 이 OKHttp를 사용하면서 쓰게되는 Interceptor라는 것에 대해서 정리해보고자 합니다. Interceptor는 말 그대로 낚아채는 것인데요. 네트워크 통신을 하는 중간에, 무언가를 공통적으로 실어보내거나 받아서 써야 할때 사용합니다. 크게 두가지가 있는데, Application Interceptor와 Network Interceptor가 있습니다. 1. Intercept는 두번 한다. 두가지 Interceptor에 대해서 알아보기 전에, .. 2017. 5. 22.