본문 바로가기

C# 디자인패턴16

03# 추상 팩토리(Abstract Factory) 패턴 Creational Patterns static void Main(string[] args) { //BuilderExample(); FactoryExample(); //Console.WriteLine("Hello World!"); Console.ReadKey(); } static void FactoryExample() { ContinentFactory africa = new AfricaFactory(); AnimalWorld world = new AnimalWorld(africa); world.RunFoodChain(); ContinentFactory america = new AmericaFactory(); world = new AnimalWorld(america); world.RunFoodChain(); } main.cs using Sy.. 2019. 5. 22.
02# Builder 패턴 Creational Patterns using System; using DesignPatterns.Patterns.Builder; namespace DesignPatterns { class Program { static void Main(string[] args) { BuilderExample(); //Console.WriteLine("Hello World!"); } static void BuilderExample() { //Director 생성, Builder 데이터 입력자. Director director = new Director(); Builder b1 = new ConcreteBuilder1(); Builder b2 = new ConcreteBuilder2(); //Product 데이터 입력 director.Construct(b1.. 2019. 5. 22.
01# 싱글턴(Singleton) 패턴 한가지 인스턴스로 저장소로 사용하거나 할 때 사용하는 싱글톤 패턴입니다.싱글톤 사용 시, 자바에서는 직렬화할 때 문제점이 있었는데, 아마 C#도 같은 문제점이 있을 거라고 예상해봅니다.스레드 환경에서는 어떤 점유율이 높은 스레드가 후 작업을 해야 하는데 선 작업을 할 지 모르므로 적절한 제어 없이는 사용 하지 않는 것을 추천합니다. 123456789101112131415161718192021222324252627282930313233343536using System;using System.Collections.Generic;using System.Text; class Program{ static void Main(string[] args) { Singleton count1 = Singleton.GetIn.. 2016. 4. 18.
00# 추상 팩토리(Abstract Factory) 패턴 2012년 6월 쯤, 디자인패턴에 관심이 생겼을 때 C#으로 구현된 코드를 찾아보기가 쉽지 않아 개념적인 것을 보고 혼자 구현해봤던추상 팩토리입니다. 1234567891011121314151617using System;using System.Collections.Generic;using System.Text; class AbstractFactory{ static void Main(string[] args) { Restaurant restaurant1 = new Restaurant(CookType.Korea); Console.WriteLine(restaurant1.Cooking()); Restaurant restaurant2 = new Restaurant(CookType.Japen); Console.Wri.. 2016. 4. 18.