Design Pattern_Skill_6_建造者模式(Builder Design Pattern)

最近在和同事合作過程,就時常會跟SD 合作。 SD主要工作會負責設計一些DB 的Schema , 撰寫系統預期流程和規格書、畫面操作互動 SD通常就會向我們這些PG規劃和分配任務、負責監工等等 SD通常會跟院內User 一起討論瞭解需求後 在經過自己的統整、文件撰寫來和PG溝通User需要的是捨麼請幫忙開發 PG可能在開發階段只負責程式撰寫工作而不會cover到系統設計規劃 這之間的關係就好比 找多個工人施工蓋房子和一個監工分配工作任務的工頭一樣 這裡以生產產品為例 一個產品從製造、加工都會有不同製程步驟 如下是要取得待在生產線上工作的特定認證(必須精熟和落實會這些工法) 1 2 3 4 5 6 7 8 public interface IBuilder { void BuildPartA (); void BuildPartB (); void BuildPartC (); } 一個產品中會區分不同的組件在製造生產(需透過不同組件組合而成) 不同產品會有需要對應生產不同的組件 1 2 3 4 5 6 7 8 9 10 11 12 13 14 public class Product { private List< object > lsParts = new List< object >(); public void Add ( string part) { this .lsParts.Add(part); } public string ListParts () { return "Product Parts:" + string .Join( "," , lsParts.ToArray()) + "\n" ; } } 負責在產線中製造、加工的作業工程人員 會實踐具體的特定產品規格生產工法流程 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36...