디자인패턴 2

[면접을 위한 CS 전공지식 노트] 디자인패턴의 종류 및 특징

1. 싱글톤 패턴 ⭐️ 싱글톤 패턴은 특정 클래스의 인스턴스를 1개만 생성되는 것을 보장하는 디자인 패턴이다.  쉽게 말하자면 메모리 절약을 위해, 인스턴스가 필요할 때 똑같은 인스턴스를 새로 만들지 않고 기존의 인스턴스를 가져와 활용하는 기법을 말한다. 사용자가 1초에 10번 똑같은 요청을 보내면 요청을 처리하기 위한 똑같은 객체를 1초에 10번 생성하고 소멸되는 메모리 낭비 문제가 발생하게 된다.하지만 싱글톤 패턴을 사용하면 최초 한번 new로 객체를 생성하고 해당 객체를 이후에도 사용하도록 다른 모듈들과 공유(static)하여 메모리 낭비 문제를 방지할 수 있다. 따라서 싱글톤 패턴을 사용하게 되면 불필요한 메모리 낭비를 방지할 수 있다. 보통 싱글톤 패턴이 적용된 객체가 필요한 경우는 그 객체가 ..

개발 상식 2024.07.02

[면접을 위한 CS 전공지식 노트] 1-1 디자인 패턴

디자인 패턴이란 ? 특정 상황에서 공통적으로 발생하는 문제에 대한 재사용 가능한 해결책 1. 싱글톤 패턴(Singleton Pattern) 싱글톤 패턴이란 하나의 클래스로 단 하나의 인스턴스만 만드는 디자인 패턴을 의미한다. 이를 통해 인스턴스를 생성하는 비용을 줄이고, 하나의 인스턴스를 다른 모듈들이 공유할 수 있다는 장점이 있다. 하지만, 모듈간의 결합을 강하게 만들어 및 의존성이 높아진다는 단점이 있다. 👉🏻 모듈간의 결합으로 인한 의존성 문제를 해결하기 위해 '의존성을 주입'하는 방법이 있다. 2. 팩토리 패턴(Factory Pattern) 팩토리 패턴이란 상속 관계에 있는 두 클래스에서, 중요한 뼈대를 상위 클래스가 결정하고 세부적인 내용을 하위 클래스가 결정하는 디자인 패턴을 의미한다. 이로 ..

개발 상식 2023.11.26