개발자 면접 예상 질문 : 싱글톤 디자인 패턴 Singleton

#디자인패턴 #싱글톤 #singleton #싱글톤디자인패턴 – 싱글톤소프트웨어 디자인 패턴은 소프트웨어 설계에서 주어진 컨텍스트 내에서 일반적으로 발생하는 문제에 대한 일반적인 재사용 가능한 솔루션입니다(위키피디아 번역) 디자인 패턴을 사용할 때의 장점은 디자인 패턴이 이미 정의되어 있으며 반복적인 문제를 해결하기 위한 업계 표준 접근 방식을 제공하기 때문에 설계 패턴을 사용하면 시간이 절약됩니다.디자인 패턴을 사용하면 재사용이 촉진되어 보다 강력하고 유지 보수 가능한 코드가 생성됩니다.설계 패턴이 이미 정의되어 있기 때문에 코드를 쉽게 이해하고 디버깅할 수 있습니다. 이번 글에서는 싱글톤의 디자인에 대해 설명해보겠습니다.싱글톤 패턴은 많은 디자인 패턴 중 하나입니다.트레이시 코드, 출처 언플래시목차 1. Singleton이란 2. 어떤 문제를 해결하기 위한 디자인 패턴?Singleton이란? 이름을 보면 Single-ton인 것을 보면 Single과 관련이 있는 디자인 패턴이라는 것을 유추할 수 있습니다.Single이라는 단어는 “단 하나의 단일의 “이라는 의미를 갖고 있습니다.뭐가 단 한가지 있을까요?그것은 프로세스 내에서 단1개의 객체를 갖게 하는 디자인 패턴입니다.2. 어떤 문제를 해결하기 위한 디자인 패턴인가요?1)복수의 시스템에서 공유 가능한 자원에 접근이 요구될 때 싱글 트는 글로벌 변수처럼 사용하지만 복수의 시스템에서 공유 가능할 필요가 있는 경우, 예를 들면 복수의 프로세스의 로그를 출력할 필요가 있는 경우에 사용할 수 있습니다.그러나 복수의 시스템에서 공유된 리소스를 사용할 때에는 뮤지션 텍스 등을 고려하여 설계할 필요가 있겠군요.2)단 하나만 존재해야 할 경우, 어떤 제약 때문에 하나의 프로세스에서 2개 이상의 네트워크 오브젝트가 존재하는 경우 오류가 발생한 경우 단 하나의 네트워크 오브젝트만이 존재하는 실수로 네트워크 오브젝트를 추가로 생성한다고 해도 이미 생성된 오브젝트를 가리키게 싱글 튼를 사용할 수 있습니다.(더 좋은 예가 있으면 의견을 공유하세요!!)3)개체가 많은 자원을 필요로 하는 경우 메모리 절약을 위하여 객체 클래스 내에 막대한 양의 변수가 포함된 변수가 있는 경우에 여러 객체를 생성하면 많은 메모리를 사용하게 됩니다.특히, 임베디드 Linux 같은 환경처럼 제한된 메모리를 가진 시스템의 경우 싱글 튼를 사용하면 메모리 절약이 가능합니다.참고 사이트:https://stackoverflow.com/questions/13796164/when-is-the-singleton-pattern-important싱글톤 패턴은 언제 중요한가요?코딩에는 Singleton이라는 이름의 Pattern이 존재하며 클래스의 인스턴스화를 하나의 객체로만 제한합니다. 하지만 Singleton을 사용하는 이유는 무엇입니까?만약 Singleton을 인스턴스화 할 수 있다면… stackoverflow.com3. 마감객체지향언어로쓰인코드를분석해보면디자인패턴이적용된것을자주볼수있는데요,면접에서본인이알고있는디자인패턴에대해서물어보면서설명을해보라고하는경우가있습니다. 싱글톤 이외에도 다양한 디자인 패턴이 있으니 검색해보고 왜 이런 디자인 패턴이 만들어졌을까요? 라는 의문을 가지고 장단점에 대해서 생각해 보면 좋을 것 같습니다. 면접관들도 문제 해결을 위해 프로그래밍 디자인에 대해 고민한 경험이 있는 것을 좋아하는 것 같아요!이상으로 글을 마치겠습니다.

error: Content is protected !!