- 抽象工廠特性:
- 意義在於在工廠內,把產品抽象出來,交由實體工廠生產,產品可以由不同元件(object)所合成,客製化生產不同類別的產品,讓各個實體工廠可以去實作實際的生產細節
- 應用的OO精神 :多用合成(Composition),少用繼承(Inheritance)
- 這邊合成的意思是於Client端只會應用interface(例如:AbstractFactory)來生產各種產品,而不需要明白指定是哪種實體的產品(concrete product),也不需要知道AbstractFactory會怎麼合成產品的細節,AbstractFactory會封裝工廠的產品生產過程,Client 端只需要會使用抽象工廠即可,不需要去明白工廠製作細節
- 網路上各種例子表示抽像工廠和工廠方法的界定十分模糊,這裡的Abstract Factory的"Abstract"只是一個觀念,並非一定要用Java 或C#語言中的Abstract Class 修飾詞(modifier),有時候可以用Interface來實作,有時候會使用Abstract,因此符合上述概念,抽象工廠模式有相當大的實作彈性
2014年8月5日 星期二
抽象工廠模式(Abstract Factory)
2014年7月20日 星期日
簡單工廠模式(Simple Factory)
- 簡單工程模式又稱作靜態工廠方法(static Factory Method),這個模式的主要特色是把物件生產的細節封裝起來交給Factory生產,客戶端只需要傳遞生產參數給Factory的靜態方法,進而產生相對的物件,不需要處理製造細節
- 這個單一工廠可以完全負責產品的生產流程,不需要依賴其他工廠製造物件(否則就需要採取抽象工廠模式)
- 應用的物件導向守則:
- 物件要開放擴充新類別、關閉修改舊類別
- 將物件中不允許修改的部份給以封裝
- 需要被擴充的部份便開放複寫(override)
2011年9月4日 星期日
Nunit和Visual Stidio的比較
如果在開發 .NET專案的平台上,目前市面上最常見的單元測試工具就屬於Nunit和Visual Studio Testing tool 兩大陣營為主了,簡單分析一下兩者的特色和重點:
Visual Studio Testing tool:
Visual Studio Testing tool:
- 和.Net project 整合力強,提供的測試工具多元
- 商業軟體(微軟甚至把Testing tools和IDE的開發環境拆開來賣)
Nunit
- 免費的自由軟體
- 輕巧方面,並且彈性且延展度高(並不只限至於測試.NET的project,連C++和Java等都可測試)
訂閱:
文章 (Atom)