[20260107] 디자인

SmartBear·2026년 1월 7일

디자인 패턴

참고하면 좋은 사이트

Factory

참고 사이트 - 추상 팩토리
참고 사이트 - 팩토리 메서드

  • 객채 생성 로직을 클라이언트 코드와 분리하여 객체 생성을 관리하는 디자인 패턴.
  • 일종의 틀을 찍어낼 수 있는 공장을 만드는 것이다.
  • 틀에 여러가지 공통 속성에 대한 정의를 하고, 이것을 이용하여 상속 및 구현을 통해 세부 사항을 구현할 수 있게 한다.

Builder

참고 사이트

  • 복잡한 개체를 단계별로 생성할 수 있도록 하는 생산 디자인 패턴.

State

참고 사이트

  • State 를 Class 로 관리
  • State Pattern 상태를 관리.
    • 현재 상태
    • 상태 리스트
    • 상태 업데이트

Observer

옵저버 패턴은 여기에서 알아보았다.

중요한 점은..

어떤 디자인을 하던지간에, 디자인을 배웠다고 무조건 써야 한다거나, 써야만 좋은 코드다! 는 아니다.
본인이 제작하는 서비스내 코드의 상황에 맞춰 적절한 디자인을 확인하고, 해당 디자인을 참고하여 개발하는 것이 좋다.

참고

Method Chaining

아래 코드와 같이 Return type 을 내 class 로 하고 실제 return 은 this로 해주면 chaining 이 가능하다.

public class MyClass {
    public MyClass SetSomething01() {
        Console.WriteLine("Do Set Something 01");
        return this;
    }
    public MyClass SetSomething02() {
        Console.WriteLine("Do Set Something 02");
        return this;
    }
    public MyClass SetSomething03() {
        Console.WriteLine("Do Set Something 03");
        return this;
    }
}

public class Program {
    public static void Main(string[] args) {
        MyClass myClass = new();
        Console.WriteLine("======")
        myClass.SetSomething01().SetSomething02().SetSomething03();
        Console.WriteLine("======")
        myClass.SetSomething03().SetSomething01().SetSomething02();
    }
}
======
Do Set Something 01
Do Set Something 02
Do Set Something 03
======
Do Set Something 03
Do Set Something 01
Do Set Something 02
profile
Python Dev with Infra -> Game Programmer

0개의 댓글