Programming Languange/디자인 패턴 12

디자인 패턴 (Design Patterns) - 프로토타입 패턴

프로토타입 패턴은 비슷한 객체를 여러개 만들 때 객체의 생성이 비용이 많이 들거나 복잡할 때, 또는 새로 생성하는 것보다 복사해서 값 한두개만 바꾸는 것이 더 빠른 경우 사용한다. 객체를 생성하는 방법은 2가지이다. new를 사용해 새 객체를 만들거나 기존의 객체를 복사해 사용하면 된다. 프로토타입 패턴은 복사를 사용해 객체를 생성하는 방법이다. 복사를 통해 생성하면 초기화를 하지 않아도 된다. 기존 값까지 복사된다. 따라서 초기화 과정이 줄어 들고, 복잡한 객체를 더 쉽게 생성할 수 있다는 장점이 있다. 구현 Class의 복사는 2가지 종류가 있다. 먼저 Soft Copy는 복사를 해도 실제로 변수를 복사하지 않는다. 복제된 변수를 수정하면 원본도 함께 복사된다. Deep Copy는 물리적으로 변수를 ..

디자인 패턴 (Design Patterns) - Index

Index 생성 패턴 Prototype Pattern Singleton Pattern 구조 패턴 Adapter Pattern Decorator Pattern Facade Pattern 행동 패턴 Command Pattern Observer Pattern State Pattern Strategy Pattern Visitor Pattern 최적화 패턴 Object Pool 프로그래밍 방식은 절차 지향에서 객체 지향으로 변화했다. 그러나 객체 지향적인 코드를 짜기가 쉬운 것은 아니다. 객체 지향 프로그래밍은 다섯 가지 원칙(SOLID)을 지켜야 한다. 단일 책임 원칙 (Single Responsibility Principle, SRP) 객체는 오직 하나의 책임을 져야 한다. 개방-폐쇄 원칙 (Open-Clos..