전체 글 357

싱글톤 패턴, 팩토리 패턴

싱글톤 패턴 (Singleton pattern) - 하나의 클래스에 오직 하나의 인스턴스만 가지는 패턴 - DB 연결 모듈에 많이 사용 - 인스턴스를 하나만 만들어 놓고 이 인스턴스를 다른 모듈이 공유하며 사용하여 인스턴스를 생성할 때 드는 비용 감소 - 하지만, 의존성이 높아진다는 단점이 발생 - 싱글톤 패턴은 모듈간의 결합을 강하게 만들 수 있음 - 이때, 의존성 주입을 통해 모듈간의 결합을 조금 느슨하게 만들어 해결 가능 (이를 '디커플링 된다' 라고 부르기도 함) - 싱글톤 패턴의 단점 TDD (Test Driven Development)의 방해요소 - TDD는 단위 테스트를 주로 하는데, 단위 테스트는 독립적이어야 하고, 테스트를 어떤 순서로든 실행할 수 있어야 함 - 하지만, 하나의 인스턴스를..

배열의 오름차순, 내림차순

가장 기본이 되는 String, int 타입 배열의 오름차순과 내림차순에 대해 알아보자 String 타입 배열 오름차순 String[] arr = {"b", "d", "a", "c"}; Arrays.sort(arr); System.out.print(Arrays.toString(arr)); // {"a", "b", "c", "d"} 내림차순 String[] arr = {"b", "d", "a", "c"}; Arrays.sort(arr, Collections.reversreOrder()); System.out.print(Arrays.toString(arr)); // {"d", "c", "b", "a"} int 타입 배열 오름차순 int[] arr = {5, 2, 4, 3, 1}; Arrays.sort(arr..

@PostConstruct

@PostoConstruct 란? - 종속성 주입이 완료된 후 실행되어야 하는 메서드에 사용, 의존성 주입이 완료된 후에 실행되어야 하는 메소드에 사용 - 다른 리소스에서 호출되지 않아도 수행 - 생성자보다 늦게 호출이된다 ※ 호출순서 1. 생성자 호출 2. 의존성 주입 완료 (@Autowire || @RequiredArgsConstructor) 3. @PostConstruct @PostConstruct 사용 이유 1) 생성자 호출 시, bean은 초기화가 이루어지기 전! (= DI가 이루어지기 전) 따라서, @Postconstruct를 사용하면 bean이 초기화 되는 동시에 의존성 확인이 가능! 2) bean LifeCycle 에서 오직 한 번만 수행 된다. (= 어플리케이션이 실행될 때 한 번만 실행..

728x90