netflix 模式创新_创新设计模式:工厂模式
netflix 模式創新
以前,我們對創建模式進行了介紹,并使用抽象工廠模式來創建對象族。
下一個模式是Factory模式 。 當涉及到Java時,工廠模式是最常用的模式之一。
那么工廠模式到底是什么呢? 工廠模式處理創建對象而不指定確切的類或將要創建的對象。
讓我們通過使用工廠模式解決憑證問題來付諸行動。
假設我們在應用程序中具有忠誠度功能,該功能會根據客戶的交易向客戶提供一些優惠券。
憑證需要憑證代碼,并且由于它將顯示在應用程序中,因此需要特殊格式的html消息。
第一步是創建憑證界面。
package com.gkatzioura.design.creational.factory;public interface Voucher {public String code();public String htmlMessage(); }目前,我們將提供兩種類型的憑證,但是,一旦業務人員提出了更多的想法,就可以輕松添加更多的憑證。
第一個是食品券。
package com.gkatzioura.design.creational.factory;import java.util.UUID;public class FoodVoucher implements Voucher {private UUID code;private static final String htmlMessage= "<html><body> <h1>Food Voucher</h1></body></html>";public FoodVoucher() {code = UUID.randomUUID();}public String code() {return code.toString();}public String htmlMessage() {return htmlMessage;} }第二個是衣服券。
package com.gkatzioura.design.creational.factory;import java.util.UUID;public class ClothesVoucher implements Voucher {private UUID code;private static final String htmlMessage = "<html><body> <h1>Clothes Voucher</h1></body></html>";public ClothesVoucher() {code = UUID.randomUUID();}public String code() {return code.toString();}public String htmlMessage() {return htmlMessage;} } 憑單將基于交易點系統創建。
如果交易點少于30個,則將創建食品券。 對于高于30的交易點,應創建服裝代金券。
因此,下一步是創建一種機制,該機制將基于交易點創建憑證。 最好的選擇是工廠模式。
通過選擇工廠模式進行總結
- 我們創建所需的憑證,而不會向客戶透露任何創建邏輯。
- 客戶端不必指定將要創建的對象的確切類。
您可以在github上找到源代碼。
在下一篇博客文章中,我們將介紹構建器模式 。
另外,我還編寫了備忘單,其中包含“創作設計模式”的摘要。
在鏈接中注冊以接收它。
翻譯自: https://www.javacodegeeks.com/2018/03/creational-design-patterns-factory-pattern.html
netflix 模式創新
總結
以上是生活随笔為你收集整理的netflix 模式创新_创新设计模式:工厂模式的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 设计模式 原型模式_创新设计模式:原型模
- 下一篇: OpenCore Legacy Patc