디자인 패턴
[디자인 패턴] 프록시 패턴(Proxy Pattern)
📌프록시(Proxy)란? 프록시(Proxy)란 우리말로 대리자, 대변인 이라는 뜻이다. 뜻에서도 유추할 수 있듯이 무언가를 대신해주는 구조의 패턴이다. 즉, 어떤 객체를 사용하고자 할때, 객체를 직접적으로 참조하는 것이 아니라, 해당 객체를 대행(proxy)하는 객체를 통해 대상 객체에 접근하는 방식이다. 이 방법을 사용하면 해당 객체가 메모리에 존재하지 않아도 기본적인 정보를 참조하거나 설정할 수 있기 때문에 실제 객체가 필요한 시점까지 객체의 생성을 미룰 수 있다. 아래 링크를 참고하면 프록시(Proxy)를 이해하는데 더 도움될 것이다. https://yeo-computerclass.tistory.com/213 HTTP 프록시란? 📌프록시 서버(Proxy Server)란? 프록시 서버란 클라이언트와 ..
[디자인 패턴] 어댑터 패턴(Adapter Pattern)
📌어댑터(Adapter)란? 어댑터(Adapter)를 번역하면 변환기(converter)이다. 변환기의 역할은 서로 다른 두 인터페이스 사이에 통신이 가능하게 하는 것이다. 주변에서 가장 흔히 볼 수 있는 변환기로는 충전기가 있다. 핸드폰을 충전할 때 직접 콘센트에 연결할 수 없기 때문에 충전기가 콘센트와 핸드폰 사이에서 둘을 연결해주는 변환기의 역할을 수행한다. 즉, 어댑터 패턴(Adapter Pattern)은 호출당하는 쪽의 메소드를 호출하는 쪽의 코드에 대응하도록 중간에 변환기를 통해 호출하는 패턴이다. 같은 말이지만 다른 관점으로 본다면 어댑터 패턴(Adapter Pattern)은 이미 구현 되어 있는 객체를 이용하여 다른 기능을 구현하는 패턴이라고도 볼 수 있다. 코드는 가능한 적게 작성하는 것..
[디자인 패턴] 싱글톤 패턴(Singleton Pattern)
싱글톤 패턴(Singleton Pattern)이란? 싱글톤 패턴(Singleton Pattern) 싱글톤 패턴이란 인스턴스를 하나만 만들어 사용하기 위한 패턴이다. 하나의 인스턴스를 만들어 놓고 해당 인스턴스를 다른 모듈들이 공유하며 사용하기 때문에 인스턴스를 생성할 때 비용이 줄어드는 장점이 있다. 하지만 의존성이 높아진다는(모듈 간의 결합을 강하게 만드는) 단점이 있다. 싱글톤 패턴(Singleton Pattern) 특징 생성자에 private 접근 제어자를 지정→객체 생성을 위한 new에 제약을 걸어야 하기 때문이다. 단일 객체를 반환할 수 있는 정적 메소드가 필요 단일 객체를 참조할 정적 참조 변수가 필요 싱글톤 패턴 예제 예시: 프린터 프린트 하나를 10명이 공유해서 사용한다고 해보자. Prin..