일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 디자인패턴 #
- builderPattern
- a
- 싱글톤
- 프로토타입 패턴
- 추상팩토리패턴
- 디자인패턴
- r
- designPattern
- El
- ㅓ
- 코틀린
- 추상 팩토리
- 빌터패턴
- 옵저버 패턴
- ㅋㅁ
- PrototypePattern
- Functional Programming
- Kotlin
- Observer Pattern
- Design Pattern
- F
- factory method
- 팩토리 메소드
- Singleton
- 함수형프로그래밍
- Abstract Factory
- Today
- Total
목록디자인패턴/생성패턴 (6)
오늘도 더 나은 코드를 작성하였습니까?
정의소프트웨어 디자인 패턴에서 싱글턴 패턴(Singleton pattern)을 따르는 클래스는, 생성자가 여러 차례 호출되더라도 실제로 생성되는 객체는 하나이고 최초 생성 이후에 호출된 생성자는 최초의 생성자가 생성한 객체를 리턴한다. 이와 같은 디자인 유형을 싱글턴 패턴이라고 한다. 주로 공통된 객체를 여러개 생성해서 사용하는 DBCP(DataBase Connection Pool)와 같은 상황에서 많이 사용된다. 어플리케이션 전반에 걸쳐 어디에서든 접근 가능하며, 유일한 객체를 필요로 할때 사용한다.1번 생성할때, 많은 비용이 소모되며, 앱의 여러군데에서 동일한 데이터에 접근을 할 필요성이 있다면, 싱글턴 패턴을 사용하면된다. 대표적으로 DataBase를 추상화하여 접근하는 객체를 싱글턴 패턴으로 만들..
SimpleFactory는 하나의 디자인 패턴이라 보기 힘들지만 자주 사용되고 중요하다. 객체를 만들어 반환하는 함수를 (생성자 대신) 제공하여 초기화 과정을 외부에서 보지 못하게 숨기고 반환 타입을 제어하는 방법. 객체를 사용하는 측에서 팩토리를 이용해서 필요한 원재료 및 생성하려는 객체를 주문하면 그것을 팩토리가 생성해서 제공하여 클라이언트 는 구체적인 객체 생성 로직을 알 필요가 없기 때문에 의존성을 낮아진다. fun main() { val iceCream: IceCream = IceCreamFactory.creator(CHOCOLATE) println(iceCream) } abstract class IceCream() class ChocoLateIceCream() : IceCream(){ over..