• 项目设计之---------- 设计模式的应用(模式的集合,不像之前每个模式分开写了)


    考虑到每个模式写一篇文章太零碎,现在写在一起好了

    1、观察者模式的应用

    一个观察者模式,该模式要求用户改变自己的配置的时候,相应的监听者更新、保存数据等
    ConfigChangeListener是观察者父类,其子类是具体观察者,ConfgChangeSubject是抽象通知者,ConnonSiteConfigPanel是具体通知者

    2、建造者模式的应用:

    建造模式的指挥者,而网站操作抽象类是建造者父类,具体实现类是具体建造者,而对网站(Site)类的操作则是最终需要的产品

    3、桥接模式

    桥接模式,处理网站操作类与配置这两个纬度的变化,之前本来打算用继承,但考虑到优先要考虑聚合/组合,还是用了桥接模式

    4、命令模式:

    用命令模式处理任务的分配,方便放到队列,取消和重做等。任务是命令,而网站操作者是真正的任务执行者,TaskDispatchable则是任务的管理者即命令管理者,它会增加或去除任务,分配任务,把任务(命令)分配到具体的网站操作类去执行

    5、享元模式

     用享元模式解决创建海量对象问题,网站操作类与网站类是内部状态,而网站帐号(SiteAccount)是外部状态SiteOperaterFactory是工厂 、SiteOperaterAbstract是接口 SiteOperaterAbstract具体类是实现类 

    当然,一个工程并不是越多模式应用越好,应用太多的模式会使得工程复杂难读,所以量情况而定,小的项目就不要搞得太复杂。这里推荐一个框架spring

    由于用spring管理类与类的依赖关系,因此省去了很多模式的应用,比如操作网站的子类可以用简单工厂+反射、dao与service之间的关系使用抽象工厂模式管理以方便数据库的切换。spring本来就是个巨大的工厂。

    觉得我一定有理解得不对的地方,望高手斧正,如果有不详细的地方也可以指出

  • 相关阅读:
    JAVA WEB开发环境与搭建
    计科院静态网页
    Python操作MySQL数据库的三种方法
    Appium环境搭建
    webstorm 默认代码格式化更改,webstorm设置prettier规则
    appium自动化环境搭建
    从事算法设计应当熟悉的资源
    redhat6如何配置本地yum源
    Windows命令查看活动连接及根据PID查看运行程序的路径、程序名等
    Tomcat与JavaWeb技术详解
  • 原文地址:https://www.cnblogs.com/langtianya/p/3813095.html
Copyright © 2020-2023  润新知