반응형

2016/06/09 5

[설계 패턴 C#] 10. 퍼샤드 패턴

10. 퍼샤드 패턴"본문 내용"은 언제나 휴일 본 사이트에 있습니다.▶ Picture.cs namespace Facade { class Compensator //하위 계층 서비스 { public void Change(Picture picture, int tone, int brightness, int saturation) { picture.Change(tone, brightness, saturation); } } } ▶ PictureManager.cs namespace Facade { class SmartManager // 사용자가 하위 계층의 기능을 쉽게 사용할 수 있게 제공 { Compensator compensator = new Compensator(); //사진을 수정하는 개체 PictureMana..

[설계 패턴 C#] 9. 장식자 패턴

9. 장식자 패턴 "본문 내용"은 언제나 휴일 본 사이트에 있습니다.▶ Picture.cs namespace Decorator { interface IChange { void Change(Picture picture,int tone,int brightness,int saturation); } } ▶ ToneCompensator.cs namespace Decorator { class BrightnessCompensator:IChange { // IChange에서 약속한 사진을 수정하는 메서드 구현 public void Change(Picture picture, int tone, int brightness, int saturation) { picture.ChangeBrightness(brightness); ..

[설계 패턴 C#] 8. 복합체 패턴

8. 복합체 패턴 "본문 내용"은 언제나 휴일 본 사이트에 있습니다.▶ Tree.cs using System; using System.Collections.Generic; namespace Composite { class Category:Tree { List children = new List(); public Category(string name):base(name) { } public override void View() { Console.WriteLine("{0," + Size.ToString() + "}-C", Name); foreach(Tree child in children) { child.View(); } } public override void AddChild(Tree child) //Ca..

[설계 패턴 C#] 7. 가교 패턴

7. 가교 패턴 "본문 내용"은 언제나 휴일 본 사이트에 있습니다. ▶ IImageProcessing.cs namespace Bridge { class VRModule:IImageProcessing { public string ImageProcessing(string subject) //약속한 기능 구현 { return subject.Replace("떨림",""); } } ▶ PCModule.cs using System.Collections.Generic; namespace Bridge { abstract class Lens { const int min_focuslevel=1; const int max_focuslevel=3; public int FocusLevel { get; private set; }..

[설계 패턴 C#] 6. 적응자 패턴

6. 적응자 패턴 "본문 내용"은 언제나 휴일 본 사이트에 있습니다. *적응자 패턴 적용 전▶PImageProcessor.cs namespace BeforeAdapter { class Camera { PImageProcessor pi_processor; public Camera(PImageProcessor pi_processor) { this.pi_processor = pi_processor; } public string TakeAPicture(string subject) { pi_processor.Subject = subject; pi_processor.ImageProcessing(); return pi_processor.Picture; } } } ▶Program.cs namespace Adapter ..

반응형