디자인 패턴 개념
반복적으로 나타나는 코드를 보고 디자인이라고 부른다
소프트웨어 개발에서 자주 발생하는 문제를 해결하기 위한 재사용 가능한 설계 솔루션이다.
class Program
{
// 팩토리 패턴 예시
public abstract class Ship
{
public abstract void Sail();
}
public class BattleCruiser : Ship
{
public override void Sail()
{
{
Console.WriteLine("Battlecruiser operational.");
}
}
}
public class DropShip : Ship
{
public override void Sail()
{
Console.WriteLine("In the pipe five be five.");
}
}
// 팩토리 패턴 예시
// 객체 생성을 서브 클래스에 ( 다른 클래스 ) 에 위임하여 확장 가능
// 객체 생성 코드를 단순화
// 용도 : 스폰 시스템 , 아이템 생성 , 탄환 발사
public class ShipFactory
{
public Ship CreateShip(string shipType, int x) // string 보다는 열거형 쓰는게 낫다
{
Ship ship = null;
switch (shipType)
{
case "BattleShip":
ship = new BattleCruiser();
break;
case "DropShip":
ship = new DropShip();
break;
default:
Console.WriteLine("잘못된 접근 방식");
break;
}
return ship;
}
}
static void Main(string[] args)
{
ShipFactory factory = new ShipFactory();
Ship ship = factory.CreateShip("BattleCruiser", 1);
ship?.Sail();
}
}


'📖TIL' 카테고리의 다른 글
| 250930 Console (0) | 2025.09.30 |
|---|---|
| 250930 메모리 revision (0) | 2025.09.30 |
| 250929 Revision (0) | 2025.09.29 |
| 250926 (0) | 2025.09.26 |
| 250926 알고리즘 (0) | 2025.09.26 |