For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
软件开发设计模式是每一位软件开发程序员都需要熟练掌握的一个编程技术,下面我们就通过案例分析来简单了解一下,软件开发设计模式类型与应用分析。
一、单例模式
保证一个类仅有一个实例,并提供一个该实例的全局访问点
在软件系统中,经常有这样一些特殊的类,必须保证他们在系统中只存在一个实例,才能确保它们的逻辑正确性,以及良好的效率
应用场景:
DBPool、读取配置文件
单例模式分类:
1、懒汉式--需要使用单例的时候,才进行初始化
2、饿汉式--未调用单例的时候,已经进行初始化
二、工厂模式
定义一个用于创建对象的接口,让子类决定实例化哪一个类。
FactoryMethod使得一个类的实例化延迟(目的:解耦,手段:虚函数)到子类
在软件系统中,经常面临着创建对象的工作;由于需求的变化,需要创建的对象的具体类型经常变化
使用工厂模式提供一种“封装机制”来避免客户程序和这种“具体对象创建工作”的紧耦合来解决这个问题
应用场景:
数据导出,导出为Excel,文本,XML
支付接口,可能对应不同的支付网关
三、发布订阅模式与观察者模式
观察者模式里,只有两个角色——观察者+被观察者
发布订阅模式里——观察者+中间经纪人+被观察者
观察者模式中的推模型和拉模型:
推模型:
目标对象主动向观察者推送目标的详细信息,不管观察者是否需要,推送的信息通常是目标对象的全部或部分数据,相当于广播通信。
拉模型:
目标对象在通知观察者的时候,只传递少量的信息。如果观察者需要更具体的信息,由观察者主动到目标对象中获取,相当于是观察者从目标对象中拉数据。一般这种模型的实现中,会把目标对象通过update方法传递给观察者,这样在观察者需要获取数据的时候,就可以通过这个引用来获取了。
应用场景:
公众号通知,淘宝通知,知乎通知,微信通知等等。
【免责声明】本文系本网编辑部分转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。如涉及作品内容、版权和其它问题,请在30日内与管理员联系,我们会予以更改或删除相关文章,以保证您的权益!更多内容请加danei0707学习了解。欢迎关注“达内在线”参与分销,赚更多好礼。