To Do 스프링 핵심 원리 - 기본편 / 섹션2 ~섹션3 프로젝트 주제 : 회원 서비스와 상품 구매 시 할인 적용 정리 내용은 크게 3가지로 정리된다. 1. 섹션 2-첫 강의 ~ 섹션3-관심사의 분리 전까지 (순수한 자바 코드, 스프링 사용 X) 처음 프로젝트 생성부터 간단한 회원 가입, 조회 로직과 상품 주문 서비스 구현. 하지만 앞에서 배운 DIP(의존 관계 역전 원칙), OCP(개방-폐쇄 원칙)이 지켜지지 않는다. 위의 원칙이 지켜지지 않은 이유는 아래의 코드에서 OrderServiceImpl가 인터페이스인 DiscountPolicy뿐 만 아니라 각각의 구체 클래스까지 의존하고 있다. (DIP 위반) 원래는 인터페이스에만 의존해야 하고 구체 클래스는 뭐가 된든지 몰라야 한다. 할인 정책을 바꿀 때..
To Do 스프링 핵심 원리 - 기본편 / 섹션 1 (객체 지향 설계와 스프링) 1. 스프링이 존재하기 전 - ejb를 사용했었다 -> jpa, spring 탄생 2. spring에서 제공하는 수많은 서비스 화인 (spring.io) https://spring.io/projects 3. 스프링의 핵심 컨셉 4. 좋은 객체 지향 프로그래밍에 대해 - 다형성 : 유연하고 변경이 용이해야함. - 역활과 구현으로 나뉘어야함 역할 = 인터페이스 구현 = 인터페이스를 구현한 것 즉, 클라이언트가 내부구조를 몰라도되며 클라이언트에 영향을 주지 않고 새롭게 구현 가능 실생활 예제) 자동자 -> 역할(인터페이스) 자동차 종류(K3,아반떼, 벤츠 등) -> 구현 운전자는 자동차의 종류와 상관없이 자동차라는 것만 알면 된다..