spring/core(2)
-
스프링 기본 - 싱글톤
* 웹 애플리케이션은 주로 여러 고객이 동시에 요청을 한다. --> 고객이 요청할 때마다 객체를 생성하면 안되기 때문에 싱글톤 적용이 필요하다. 싱글톤 패턴 - 클래스의 인스턴스가 1개만 생성되는 것을 보장하는 디자인 패턴 - private 생성자를 사용해서 외부에서 임의로 new키워드를 사용하지 못하게 막아야 한다. * 단점 코드가 많이 들어간다. 의존관계상 클라이언트가 구체 클래스에 의존한다 (DIP 위반) 클라이언트가 구체 클래스에 의존해서 OCP 원칙을 위반할 가능성이 높다. 테스트가 어렵다 내부 속성을 변경하거나 초기화하기 어렵다 private 생성자로 인해 자식 클래스를 만들기 어렵다 유연성이 떨어진다 스프링 컨테이너 * 기존에 배운 @Configuration과 @Bean을 통해 객체를 스프링..
2023.02.15 -
스프링 기본 - 객체지향 적용/ DI, loC
객체 지향 5가지 원칙 (SOLID) SRP (Single Responsibility Principle) 단일 책임의 원칙 - 모듈이 변경되는 이유가 한가지여야 한다. - 즉, 해당 모듈이 여러 대상 또는 액터들에 대해 책임을 가져서는 안되고, 오직 하나의 액터에 대해서만 책임을 져야 한다. OCP (Open-Closed Principle) 개방 폐쇄 원칙 - 확장에 대해 열려있고 변경에 대해서는 닫혀있어야 한다. - 개방 폐쇄 원칙을 지키기 위해서는 추상화에 의존해야 한다. ISP (Interface segregation principle) 인터페이스 분리 원칙 - 목적과 관심에 따라 인터페이스로 분리한다. - 자신의 관심에 맞는 인터페이스만을 접근하여 불필요한 간섭을 최소화한다. LSP (Liskov..
2023.02.15