inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

스프링 핵심 원리 - 기본편

IoC, DI, 그리고 컨테이너

클라이언트 코드 명칭을 자세히 모르겠습니다.

340

혜민

작성한 질문수 7

1

 

"애플리케이션 “실행 시점” 에 외부에서 실제 구현 객체를 생성하고 클라이언트에 전달해서 클라이언트와 서버의 실제 의존관계가 연결 되는 것을 “의존관계 주입” 이라고 한다."

"외부에서 실제 구현 객체를 생성하고 클라이언트에 전달(주입)함으로써 의존관계가 연결되는 것이다"

 

위에 두 문장이 있습니다. 

밑에 문장으로 예를 들어 설명하겠습니다.
문장을 3개로 나눠 보겠습니다.

1. 외부에서 실제 구현 객체를 생성
2. 클라이언트에 전달(주입)함
3. 의존관계가 연결

이렇게 나눠 받는데, 여기서 제가 궁금한 것은 

2번 클라이언트에 전달함 입니다. 

OrderServiceImpl 가 클라이언트 코드라고 하셨는데, 뭔가 딱 느낌오는게 없습니다.
왜? OrderServiceImpl가 클라이언트 코드인가 하는 느낌을 모르겠습니다..

 

더 자세히 말씀드리면 

1. '클라이언트' 와 '주문 서비스' 관계가 궁금하며

2. 처음에 '주문 서비스' 로 어떤 값이 들어오고 어떻게 클래스들이 이동하는지 흐름!!

3. 왜 주문 서비스가 클라이언트 코드인지.. 모르겠습니다

 

클라이언트=호출, 서버=응답 이라고 다른 게시글에서 김영한님이 댓글에 설명해주신걸 봤었는데 이해가 잘 되지 않았습니다 .. 

 

MemberRepository 도 클라이언트 코드이고("왜??"), DiscountPolicy 도 클라이언트 코드이고("왜??") OrderServiceImpl도 클라이언트 코드가 되는건지("왜??").. 그렇게 된다면 왜 그런건지 자세히 알고 싶습니다...

spring oop

답변 1

1

David

안녕하세요. water_ yoon님, 공식 서포터즈 David입니다.

아래 글 답변을 확인해주세요:)

https://www.inflearn.com/questions/117662

https://www.inflearn.com/questions/135627

 

이미 영한님 글에서 자세히 설명해주고 있습니다. 호출과 응답 그 이상 그 이하도 아닙니다.

클라이언트와 서버의 관계를 생각하면, 클라이언트는 요청하고, 서버는 요청에 응답합니다.

A객체와 B객체가 있고 A객체에는 B객체의 메서드를 호출하는 코드가 있습니다.

이때, A객체 내에 B객체를 호출하는 코드가 클라이언트 코드가 되고, A객체로부터 호출되는 B객체의 메서드가 서버 코드가 됩니다.

감사합니다.

 

 

빈 스코프 개념의 중요성

0

23

1

SingletonService가 JVM이 뜰 때 생성되는게 맞나요?

0

68

2

섹션3. 11 회원객체 다이어그램

0

38

1

OCP, DIP과 @Qualifier 어노테이션에 대해서 질문합니다.

0

40

1

코드 자료

0

86

2

구현체가 동적으로 정해질 때, 팩토리 기법을 사용하나요?

0

83

2

MemberService의 인터페이스를 왜 사용하는지 궁금합니다.

0

100

1

롬복 @Setter를 써야 하는 상황이 있는건가요?

0

104

1

빈 등록 메서드의 파라미터가 빈이 아니어도 되나요?

0

89

1

테스트 속도가 나중에 영향이 있을까요?

0

91

1

gradle 설정 안떠서 질문 남깁니다!

0

148

2

build.gradle로 프로젝트를 여는 이유

0

101

1

provider 사용하는 이유

0

99

1

다음 강의 뭘 들어야 할까요

0

140

2

프로토타입 빈, 직접 destroy 호출 안 할 경우

0

70

1

beanB

0

94

2

퀴즈다시풀기

0

77

1

Gradle로 바꿔도 오류가 똑같이 발생하네요 ㅠㅠ

0

105

2

"중복 등록과 충돌" 강의에서 강사님과 다른 에러가 발생합니다.

0

72

3

run 실행했는데 결과창이 이렇게 뜨네요 왜 그런건가요>

0

116

2

도메인의 정의?

0

64

1

ApplicationContext 질문입니다.

0

68

1

@Scope의 proxyMode를 사용할때 단위 테스트 방법

0

98

2

ai api 선정하기 관련 질문

0

141

2