인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

허은택 sam님의 프로필 이미지
허은택 sam

작성한 질문수

스프링 핵심 원리 - 기본편

관심사의 분리

강의를 듣는데 이해가 안갑니다

작성

·

353

0

강의를 듣는데 이해가 안갑니다 어떻게 해야되죠?
return new OrderServiceImpl(new MemoryMemberRepository(), new FixDiscountPolicy());
 여기에서 왜newMemoryMemberRepository()를 쓰고 FixDiscountPolicy()를 쓰는지가 한 예고 
이거 외에도 많은 부분이 너무 복잡하게 느껴집니다.
어떻게 해야되죠?
 

답변 2

1

저도 딱이래요 지금. 

이거 외에도 많은 부분이 너무 복잡하게 느껴집니다.

위 말이 완전 공감되네요. 이해가 안가서 계속 자바 개념복습하면서 봐도 쉽지않군요.....!

저도 이강의는 유독이해가안가네요 

자바 기본기가 부족한거같아서 강의 들을때마다 계속 자바복습하고 있어요. 기존 자바 학습하던 강의가 너무 기초적이 었어서 자바8쪽 지식이 좀 부족했던 것 같아요. (+제네릭 .. 등등) 

조금 더 초석을 다지고 다시 도전해보려합니다..! 파이팅입니다

1

안녕하세요. 허은택 sam님, 공식 서포터즈 OMG입니다.

영한님께서 잘 설명해주시나, 프로그래밍 경험이 적고, 스프링 개발 경험이 적다면 어렵거나 이해 안되는게 어찌보면 당연하다고 생각합니다.

기본편 강의가 첫 수강이시라면, 처음엔 이해가 가지 않더라도 영한님 설명을 듣고, 코드를 따라하면서 강의 코드를 완성시키는 데에 목적을 둡니다.

완강을 하게 되면 실행이 잘 되는 완성된 강의코드가 생기게 될 것이며 강의 내용을 100% 소화하지 못하더라도 이해가 되는 부분, 안되는 부분이 있을거라 생각합니다.

이후 복습을 진행하는데, 1강씩 꼼꼼히 확인합니다. 코드를 따라쳐야하는 수고가 줄며 온전히 영한님 설명에 집중할 수 있고, 1번 수강했기 때문에 어떤 설명을 하실지 대략 알게 됩니다. 

이 상태에서 모르는 게 있다면 넘어가지 말고 하나씩 개념을 채워나가고 이해하는 노력의 단계가 필요할 것으로 생갹됩니다.

 

추가로 강의에서 설명하시는 어떤 개념(내용)이 궁금하시다 하면 구체적으로 무엇이 이해가 안되는지 질문글 남겨주시면 영한님과 서포터즈가 답변드리겠습니다.


감사합니다.

질문 내용에 대해 답변 드리면, 간단히 메서드를 예시로 생각하시면 이해가 쉬울거라 생각합니다.

public int sum(int a, int b) {

    return a + b;

}

main {

   int result = sum (1 , 2);

}

sum 메서드는 a 와 b를 파라미터로 받아 더하는 결과를 반환하고, main함수에서는 sum메서드를 1과 2로 인자를 전달합니다.

이와 같이

return new OrderServiceImpl(new MemoryMemberRepository(), new FixDiscountPolicy());

 

에서도 OrderServiceImpl생성자로 MemoryMemberRepository()와 FixDiscountPoicy()를 전달하여

OrderServiceImpl에서 사용하기 위함입니다.

 

ㅒOrderServiceImpl을 보면 MemberRepository와 DiscountPolicy가 필드로 선언되어 있고, 이 값은 생성자를 통해 받습니다.

return new OrderServiceImpl을 호출하는 곳에서 어떤 인자를 넘겨줄지 정할 수 있으며, 이 호출하는 곳에서 FixDiscountPolicy를 넘길지, RateDiscountPolicy를 넘길지 정해지며, OrderServiceImpl입장에서는 자신의 코드 수정 없이 어떤 할인정책이 정해지던간에 동작합니다.

 

추가로 더 자세한 설명은 영한님의 강의에서 전부 설명해주고 계시니 강의 수강을 이어서 해주시길 바랍니다.

제 설명 중 궁금하신 내용 있으면 댓글남겨주세요.

허은택 sam님의 프로필 이미지
허은택 sam

작성한 질문수

질문하기