스프링 2

[스프링부트] 객체 지향 설계와 스프링

- 다형성 + OCP, DIP를 가능하게 지원해준다. - DI 컨테이너 제공 - 클라이언트의 코드 변경 없이 기능을 확장할 수 있다. - 쉽게 부품 교체하듯이 개발할 수 있다. 모든 설계에 역할과 구현을 분리하자! - 인터페이스를 도입하면 추상화라는 비용이 발생한다. - 기능 확장 가능성이 없다면 구체 클래스를 사용하고, 향후 필요할 때 리팩터링해서 인터페이스를 도입하는 방법이 있다. 객체지향 책 추천 : 객체지향의 사실과 오해 스프링 책 추천 : 토비의 스프링 JPA 책 추천 : 자바 ORM 표준 JPA 프로그래밍 출처 https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B..

[스프링부트] Spring의 역사, 생태계, Spring의 개념

Spring : EJB라는 겨울을 넘어 새로운 시작이라는 뜻! EJB의 단점 1. 테스트가 어렵다. : EJB 외부에서 실행하는 것이 어려웠기에 컨테이너에 배포를 해야만 했다. 그러나 스프링 프레임워크는 의존성 주입이라는 개념을 도입하여 테스트 과정을 간소화할 수 있게 되었다. 테스트 과정을 간소화하게 되면 얻게 되는 이점은? > 생산성이 향상된다. > 빠른 결함을 발견하게 되고 이로 인해 수정 비용이 적게 들어간다. > 지속적인 통합 시 자동화된 단위 테스트로 향후 결함을 예방한다. 의존성 주입 (DI : Dependency Injection) >> 의존 객체를 생성하지 않고 주입 받아 사용한다. new 연산자를 이용해 객체를 생성하는 것 - 배포과정이 불편하다. - 불필요한 메서드를 구현해야 한다. ..