我被要求为在线商务系统(亚马逊,Play.com等)制作基本的设计模式,我选择专注于Facade模式,因为我觉得这种模式主要用于整个系统。这就是我到目前为止所做的:
系统操作:
订购产品
库存/可用性(检查产品库存)
身份验证(检查用户是否已登录/注册)
发货(发送产品名称/客户详情以便发货)
建议的“Facade Pattern”将由用户工作,只需要查看/知道order_product函数,因此其他组件是从这一个动作“触发”的。
我的问题是,对于这种类型的系统,这是一个好用的设计模式吗?此外,操作,任何人都可以想到购买产品可能需要的任何其他操作 - 这就是我能想到的所有内容。
希望有人可以提供帮助:)
答案 0 :(得分:0)
嗯,Facade通常只与提供大量遗留代码或库的简单接口相关。它很少用于创建新的基础代码,除非您考虑“您的类使用库列表和地图等类库”。
http://en.wikipedia.org/wiki/Facade_pattern
“Facade是一个为a提供简化界面的对象 更大的代码体,例如类库“
对于您描述的任务,您可能会使用诸如Mediator之类的模式(在某些情况下可被视为外观),模型/控制器/查看器,责任链(用于安全性),Memento(用于保存)以及可能构建器(用于以多种方式显示您的购买:HTML,PDF发票,电子邮件......)。