본문 바로가기
반응형

까망 동네/디자인 패턴25

[프로그래밍] 디자인 패턴 필요성 간단한 예제로 디자인 패턴 필요성을 알아보고자 한다. 📌 디자인 패턴(Design Pattern)이란? 💻 디자인 패턴(Design Pattern)이란? 👨‍💻 디자인 패턴(Design Pattern)이란? • SW 개발 방법 중에서도 구조적인 문제 해결에 목적을 둔다. • 알고리즘과 같이 특정 문제를 해결하는 Logic 형태보다는 특정 상황에 적용할 수 있 zoosso.tistory.com 예제 코드 배열[]에서 find()로 특정 원소를 찾을 수 있다. #include #include using namespace std; int* find(int* first, int* last, int v) { while (first != last && *first != v) { ++first; } return fi.. 2022. 8. 29.
MVC 패턴이란? MVC 패턴이란? • Model - View - Controller 구조를 말한다. • Model: 데이터나 Business Logic 내포 (= 데이터 제어) • View: 사용자에게 보여지는 인터페이스 • Controller: View ↔ Model 사이 요청/응답 관리 • 하나의 Model로 여러 형태 View를 보여줄 수 있다. → 1:多 구조로 Model을 재활용 (실서비스는 View 변화가 많은 편) ex) 하나의 raw 데이터로 표, 원형 차트, 막대 그래프 등을 표현 • 이전에는 View가 Model을 의존해야 했지만 Controller로 View-Model 의존성을 낮추는 구조이다. = 각 View 요청은 Controller 동작에 영향을 주어서 안된다. • Controller 역할? →.. 2022. 8. 28.
팩토리 메서드 패턴 (Factory Method) 🎈 팩토리 메서드 패턴(Factory Method Pattern) • 객체 생성 시 확장을 쉽게 하기 위한 설계 방법 강력한 결합 관계는 코드의 수정•변경을 어렵게 한다. • 객체 생성 동작을 별도 클래스로 분리하여 처리 또는 별도의 메서드를 호출하여 객체 생성 동작을 처리 • 객체 생성 처리를 하위(Sub) 클래스로 분리하여 캡슐화하는 패턴 • 새로운 객체를 추가할 때 기존 일반 함수 코드 분석 없이 (새로운 하위 클래스 정의) + (Factory 클래스 멤버 함수 추가) 하여 확장 가능 • 일반 클래스가 생성자 호출로 직접 객체 생성하지 않고 Factory(공장)에 위임하는 방식 • 조건에 따라 객체를 다르게 생성하고자 할 때 유용 • 생성 패턴에 해당된다. 💻 디자인 패턴(Design Pattern.. 2022. 7. 19.
상태 패턴 (State Pattern) 상태(State) 패턴이란? • 객체 내부 상태에 맞춰 스스로 행동을 변경하는 패턴 • 객체는 마치 자신의 클래스를 바꾸는 것처럼 보인다. • if-else와 같은 분기문으로 상태전이 하는 것을 해소한다. 기존 설계 가독성이 충분하다면 굳이 State 패턴을 적용할 필요 없다. • 각 상태에 해당하는 클래스를 설계한다. 상태를 취급하는 만큼 클래스 개수가 증가한다. • 디자인 패턴(Design Pattern) 중 행위패턴에 속한다. 💻 디자인 패턴(Design Pattern)이란? 👨‍💻 디자인 패턴(Design Pattern)이란? • SW 개발 방법 중에서도 구조적인 문제 해결에 목적을 둔다. • 알고리즘과 같이 특정 문제를 해결하는 Logic 형태보다는 특정 상황에 적용할 수 있 zoosso.tis.. 2022. 5. 27.
💻 디자인 패턴(Design Pattern)이란? 👨‍💻 디자인 패턴(Design Pattern)이란? • SW 개발 방법 중에서도 구조적인 문제 해결에 목적을 둔다. • 알고리즘과 같이 특정 문제를 해결하는 Logic 형태보다는 특정 상황에 적용할 수 있는 방법론 • 자주 반복되는 문제에 해결책 → 재사용과 팀원과의 의사소통 • 23가지 디자인 패턴이 존재한다. • 연관되는 개념으로는 SOLID 원칙과 클린 코드(Clean Code) 등이 있다. • 「Gof (Gang of Four) 디자인 패턴」 으로 알려져 있다. → Erich Gamma / Richard Helm / Ralph Johnson / John Vissides 👨‍💻 디자인 패턴 종류 디자인 패턴은 목적에 따라 3가지로 구분할 수 있다. • 생성 패턴 (Creational Pattern.. 2022. 3. 30.
반응형