2017. 12. 1. 18:03ㆍ프로그래밍 언어/Spring Framework
토비의 스프링 3.1 - 용어 정리 및 참조
◈ 용어
싱글톤(singleton)
애플리케이션 컨텍스트로 만든 객체
싱글톤 레지스트리(singleton registry)
스프링이 직접 싱글톤 형태의 오브젝트를 만들고 관리(싱글톤을 저장하고 관리하는 레지스트리)
스프링 컨테이너는 싱글톤을 생성,관리,공급하는 싱글톤 관리 컨테이너이기도 하다.
싱글톤 패턴(Singleton Pattern)
어떤 클래스를 애플리케이션 내에서 제한된 인스턴스 개수, 이름처럼 주로 하나만 존재하도록 강제하는 패턴이다.
이렇게 하나만 만들어지는 클래스의 오브젝트는 애플리케이션 내에서 전역적으로 접근이 가능하다.
단지 오브젝트만 존재해야 하고, 이를 애플리케이션의 여러곳에서 공유하는 경우 주로 사용한다.
디자인 패턴중 가장 자주 활용되는 패턴이기도 하지만 가장 많은 비판을 받는 패턴이라고 한다.
스프링 빈의 스코프(scope)
빈이 생성되고, 존재하고, 적용되는 범위이다.
스프링 빈의 기본 스코프는 싱글톤이다.
싱글톤 스코프는 컨테이너 내에 한 개의 오브젝트만 만들어져서, 강제로 제거하지 않는한 스프링 컨테이너가 존재하는 동안 계속 유지가 되며 스프링에서 만들어지는 대부분의 빈은 싱글톤 스코프를 갖는다.
마이크로 DI(수동DI)
DI의 장점을 단순화해서 IoC컨테이너의 도움 없이 코드 내에서 적용한 경우를 마이크로DI라고 한다.
※ 로컬 클래스(지역 클래스, Local Class)
메소드 안에서 선언할 수 있으며 modifier이 dafalt , final , abstarct로만 선언할 수 있다.
로컬클래스를 포함하는 메소드 안에서만 객체를 생성할 수 있고, 메소드의 실행이 끝나면 해당 로컬클래스가 메모리에서 사라지게 된다.
※ 익명 내부 클래스
이름을 갖지 않는 클래스이며 클래스 선언과 오브젝트 생성이 결합된 형태로 만들어진다. 선언과 동시에 오브젝트를 생성한다.
상속할 클래스나 구현할 인터페이스를 생성자 대신 사용해서 다음과 같은 형태로 만들어 사용한다. 클래스를 재 사용할 필요가 없고, 구현한 인터페이스 타입으로만 사용할 경우 유용하게 사용된다.
new 인터페이스이름() { 클래스 본문 };
☞ 오타, 지적 환영합니다.
☞ 키워드 : 자바 오브젝트, 동일성과 동등성, 싱글톤, 싱글톤 패턴의 단점, 스코프, 스프링 빈의 스코프
'프로그래밍 언어 > Spring Framework' 카테고리의 다른 글
[인프런 김영한] 연관관계 매핑 기초 - 양방향 연관관계 (0) | 2021.02.03 |
---|---|
스프링 AOP 용어 , 스프링 네임스페이스 (0) | 2018.01.18 |
토비의 스프링 3.1 - 싱글톤, 싱글톤 패턴 (0) | 2017.12.21 |
객체지향 설계 5대 원칙 (SOLID) (0) | 2017.12.21 |
토비의 스프링 3.1 - DaoFactory 오브젝트 팩토리와 스프링 애플리케이션 컨텍스트의 동작방식 차이 (0) | 2017.12.01 |