项目设计之---------- 设计模式的应用(模式的集合,不像之前每个模式分开写了)
考虑到每个模式写一篇文章太零碎,现在写在一起好了
1、观察者模式的应用
一个观察者模式,该模式要求用户改变自己的配置的时候,相应的监听者更新、保存数据等
ConfigChangeListener是观察者父类,其子类是具体观察者,ConfgChangeSubject是抽象通知者,ConnonSiteConfigPanel是具体通知者
2、建造者模式的应用:
建造模式的指挥者,而网站操作抽象类是建造者父类,具体实现类是具体建造者,而对网站(Site)类的操作则是最终需要的产品
3、桥接模式
桥接模式,处理网站操作类与配置这两个纬度的变化,之前本来打算用继承,但考虑到优先要考虑聚合/组合,还是用了桥接模式
4、命令模式:
用命令模式处理任务的分配,方便放到队列,取消和重做等。任务是命令,而网站操作者是真正的任务执行者,TaskDispatchable则是任务的管理者即命令管理者,它会增加或去除任务,分配任务,把任务(命令)分配到具体的网站操作类去执行
5、享元模式
用享元模式解决创建海量对象问题,网站操作类与网站类是内部状态,而网站帐号(SiteAccount)是外部状态SiteOperaterFactory是工厂 、SiteOperaterAbstract是接口 SiteOperaterAbstract具体类是实现类
当然,一个工程并不是越多模式应用越好,应用太多的模式会使得工程复杂难读,所以量情况而定,小的项目就不要搞得太复杂。这里推荐一个框架spring
由于用spring管理类与类的依赖关系,因此省去了很多模式的应用,比如操作网站的子类可以用简单工厂+反射、dao与service之间的关系使用抽象工厂模式管理以方便数据库的切换。spring本来就是个巨大的工厂。
觉得我一定有理解得不对的地方,望高手斧正,如果有不详细的地方也可以指出
相关文章
- 知识图谱在产业分析领域的应用
- PHPUnit 在phpstrom中composer项目的应用配置
- 一个大数据应用是如何炼成的?
- 微信小程序ssm装潢应用系统 +后台管理系统|前后分离VUE
- Servlet第五篇【介绍会话技术、Cookie的API、详解、应用】
- Flask之多应用部署示例代码
- 在 Web 项目中应用 Apache Shiro
- 大数据和物联网:在制造业、医疗保健和智慧城市的成功应用
- 联想集团与博康开启战略合作 大数据分析助力公安行业应用
- Vue + ElementUI的电商管理系统实例31 项目上线-使用pm2管理应用
- 关于举办 2015年 Autodesk 助力云应用项目开发活动通知
- Java正则表达式的应用
- Element中树形控件在项目中的实际应用
- 工业智能网关BL110应用之63:如何实现智能楼宇控制BACnet 接入金鸽Modbus云平台
- 工业智能网关BL110应用之五十三: 实现西门子S7-200 PLC接入OPC UA 云平台
- Android 自己项目下的配置抓包。配合Charles 仅仅针对当前应用
- 柳暗花明又一村 WiFi新应用实现3D物体成像
- Vue + WebApi 小项目:构造自己的在线 Markdown 笔记本应用
- Linux中ifreq 结构体分析和使用 及其在项目中的简单应用
- 客快物流大数据项目(十一):Docker应用部署
- 字典树的基础,以及在实际项目中对于敏感词的替换的应用
- 【Redis】Redis在实际项目中的应用
- Linux中ifreq 结构体分析和使用 及其在项目中的简单应用