앞의 글에서 의존성 주입이란 무엇인지. 왜 필요한지를 알게 되었다. 의존성 주입이란 무엇이며 왜 필요한가? 목표 의존성 주입이 무엇인지 이해한다. 의존성 주입이 왜 필요한지 이해한다. 의존성 주입이란? 의존성 주입이란 클래스간 의존성을 클래스 외부에서 주입하는 것을 뜻한다. 더 자세하게는 kotlinworld.com 이번 글에서는 이러한 의존성 주입을 쉽게 할 수 있도록 도와주는 프레임웍 Dagger2에 대해 살펴본다. 그 전에 앞의 글에서 의존성 주입을 위해 필요했던 사항을 살펴보도록 한다. 의존성 주입을 위해 필요한 사항 의존성 클래스간의 강한 의존성은 인터페이스화를 통해 약한 의존성을 가지도록 만들 수 있다. 주입 클래스A에 의존성이 있는 클래스B의 인스턴스를 클래스A 내부에서 생성하는 것이 아니라..
분류 전체보기
GET 메서드 GET 메서드는 리소스를 조회하는데 사용된다. 보통 GET메서드는 리소스에 직접 접근하거나 질의(Query)를 날릴 때 사용된다. 리소스 직접 조회 먼저 GET메서드를 이용해 리소스를 조회하는 것을 살펴보자. https://kotlinworld.com/post/94 위와 같은 URL을 웹브라우져에 날렸다고 해보자. 이는 아래와 같은 HTTP 메세지로 변환되어 서버로 전송된다. GET /post/94 HTTP/1.1 Host: www.kotlinworld.com 이 때 서버는 www.kotlinworld.com의의 /post/94에 있는 리소스를 클라이언트에 반환한다. 질의(Query)를 통한 조회 다음은 질의를 이용해 리소스를 조회하는 방식이다. 질의는 ?{키워드}={질의 내용} 을 통해 ..
HTTP 메서드 HTTP메서드는 클라이언트에서 서버로 리소스에 대한 작업을 지시할 때 사용된다. 즉, HTTP메서드는 클라이언트에서 서버에 작업을 요청할 때만 사용되며, 서버에서 클라이언트로 보내는 메세지에는 포함되지 않는다. 이러한 HTTP메서드는 여러가지가 있지만, 이 글에서는 자주 사용되는 GET과 POST 그리고 비교적 빈번히 사용되는 PUT, PATCH, DELETE에 대해서 다룬다. 목차 리소스 조회 : GET 메서드 리소스 등록1 : POST 메서드 리소스 등록2 : PUT 메서드 리소스 등록3 : PATCH 메서드 리소스 삭제 : DELETE 메서드
HTTP 메세지 구조 HTTP의 메세지는 3가지 부분으로 나뉘어져 있다. Start Line(시작 라인) Header(헤더) Body(바디) HTTP메세지는 ASCII Characterset을 사용하는 문자열로 전송이 되기 때문에 필요한 부분을 파싱하기 위해서는 각 부분의 구조화가 필요하다. 각 부분은 다음과 같이 구조화된다. Start Line 한 줄로 이루어져 있다. 첫 번째 줄이 무조건 시작 라인이 되며 시작 라인은 두 줄 이상은 될 수 없다. Header 헤더는 첫 줄을 제외한 공백라인이 나오기 전까지의 줄이다. 헤더는 수십줄, 수백줄이 될 수도 있다. Body 바디는 공백 라인 뒤의 모든 라인으로 이루어져 있다. 간단한 규칙이다. 자 그러면 각 부분에서 어떤 일을 하는지 살펴보자. Start L..
HTTP 통신 HTTP 통신은 다음과 같은 특징을 가진다. 대부분의 파일 형식 전송 가능 클라이언트 - 서버 구조 Stateless Connectionless 대부분의 파일 형식 전송 가능 HTTP란 HyperText Transfer Protocol의 약자로 HTML 파일을 전송하는 프로토콜이라는 의미를 가지지만, 오늘날에는 거의 모든 파일 형식을 HTTP 통신을 이용해 전송 가능하다. 특히 우리가 자주 사용하는 JSON, TEXT, IMAGE 파일은 물론 음성 파일 등도 HTTP를 통해 전송이 가능해졌다. 클라이언트 - 서버 구조 클라이언트 - 서버 구조 클라이언트의 요청이 있을 때 서버가 응답하는 단방향 통신이다. HTTP는 클라이언트에서 서버에 요청을 하는 단방향 통신이다. 서버는 클라이언트에 요청..