摘要: 视频链接:https://v.youku.com/v_show/id_XNDYzMTg4NjQ1Ng==.html 观察者模式 定义对象间的一种一对多依赖关系,使得每当一个对象状态发生改变时,其相关依赖对象皆得到通知并被自动更新。观察者模式又叫做发布-订阅(Publish/Subscribe)模式。 阅读全文
posted @ 2020-04-14 16:47 leo1111 阅读(150) 评论(0) 推荐(0) 编辑
摘要: 视频链接地址:https://v.youku.com/v_show/id_XNDYyMzA0MTI3Ng==.html 1、外观模式产生的原因: 在软件开发过程中,程序一般会越做越大,而这样系统中类及子系统之间的影响会使彼此间的关系变得错综复杂即过多的耦合,这就导致了随着系统中类或子系统发生变化,与 阅读全文
posted @ 2020-04-08 09:39 leo1111 阅读(205) 评论(0) 推荐(0) 编辑
摘要: PPT视频讲解链接:https://v.youku.com/v_show/id_XNDYwODU0Njg2NA==.html 1、单例模式的使用动机 在软件系统中,jingc 有这样一些特殊类,必须保证他们在系统中值存在一个实例,才能确保它们的逻辑正确性、以及良好的效率。 保证一个实例应该是设计者( 阅读全文
posted @ 2020-03-28 09:32 leo1111 阅读(133) 评论(0) 推荐(0) 编辑
摘要: 视频链接:https://v.youku.com/v_show/id_XNDYwNTk4OTA1Ng==.html 1、为什么需要开闭原则? 软件开发过程中最不稳定的因素 需求需求再软件开发过程中时时刻刻都在发生变化,如何灵活应对变化是软件结构设计中最重要也是最困难的一个问题。好的设计带来了极大了灵 阅读全文
posted @ 2020-03-26 14:48 leo1111 阅读(566) 评论(0) 推荐(0) 编辑
摘要: 1、什么是迪米特法则? 迪米特法则(Law of Demeter )又叫做最少知识原则,也就是说,一个对象应当对其他对象尽可能少的了解。不和陌生人说话。英文简写为: LoD。 2、迪米特法则模式的意义 迪米特法则的初衷在于降低类之间的耦合。由于每个类尽量减少对其他类的依赖,因此,很容易使得系统的功能 阅读全文
posted @ 2020-03-24 22:16 leo1111 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 问题描述:某软件公司欲开发一个数据格式转换工具,可以将不同数据源如txt文件、数据库、Excel表格中的数据转换成XML格式。为了让系统具有更好的扩展性,在未来支持新类型的数据源,开发人员使用工厂方法模式设计该转换工具的核心类,客户端只需使用工厂类即可获得具体的转换类对象,再调用其相应方法实现数据转 阅读全文
posted @ 2020-03-24 22:03 leo1111 阅读(210) 评论(0) 推荐(0) 编辑
摘要: 1、合成聚合原则定义 又叫做合成复用原则(Composite ReusePrinciple或CRP),尽量使用对象组合,而不是继承来达到复用的目的。就是在一个新的对象里面使用一些已有的对象,使之成为新对象的一部分;新对象通过向这些对象的委派达到复用已有功能的目的。简而言之,要尽量使用合成/聚合,尽量 阅读全文
posted @ 2020-03-21 11:16 leo1111 阅读(251) 评论(0) 推荐(0) 编辑
摘要: 1、依赖倒置原则的定义 高层模块不应该依赖低层模块,它们都应该依赖抽象。抽象不因该依赖于细节,细节应该依赖于抽象。 另一种定义方式:针对接口编程,不要针对实现编程。 2、什么是依赖? 例子:如果在 Class A 中,有 Class B 的实例,则称 Class A 对 Class B 有一个依赖。 阅读全文
posted @ 2020-03-18 10:44 leo1111 阅读(299) 评论(0) 推荐(0) 编辑
摘要: 1、依赖 依赖指的是类之间的调用关系,一个类调用了宁一个类的服务(方法)。 如果类A在它的方法中调用另一个类B的方法或属性,则类A依赖类B。 用带箭头的虚线表示依赖: Public class Person { public void buy(Car car) {.....} public void 阅读全文
posted @ 2020-03-14 12:34 leo1111 阅读(122) 评论(0) 推荐(0) 编辑
摘要: 一、软件系统的可维护性 软件开发是一个比较快速的过程,一般只需要半年时间。但是系统的维护却是一个长期的过程,需要很多年。并且在一个软件项目的周期内,花费在维护上面的钱,是花费在原始开发上面的钱的两倍。 作为一个开发人员必须要认识到,软件的维护就是软件的再生。一个好的软件设计,必须能够允许新的设计要求 阅读全文
posted @ 2020-03-14 11:40 leo1111 阅读(252) 评论(0) 推荐(0) 编辑