2021年12月1日

设计模式系列——设计原则之里氏替换原则

摘要: 什么是里氏替换原则? 我的理解是只要父类出现的地方,子类都可以出现,而且替换之后不会产生错误。 里氏替换原则有什么用? 1.让开闭原则的实现成为可能,(开闭原则是对扩展开放,对修改关闭); 比如,子类实例替换父类实例,可以很方便地扩展系统的功能,无须修改原有子类的代码,增加新的功能可以通过增加一个新 阅读全文

posted @ 2021-12-01 23:04 时间人生 阅读(22) 评论(0) 推荐(0)

2021年11月28日

设计模式系列——设计原则之迪米特法则

摘要: 什么是迪米特法则? 我的理解,就是让调用者所要知道的知识最少。 这就好比,我们发电子邮件,作为使用者,仅仅需要知道填写邮件内容,邮件标题和发给谁,点击发送,电子邮件就发出去了。 但电子邮件发送功能内部是如何实现的,作为使用者可以一无所知,仅需知道点击邮件发送,邮件便可完成发送。 这有什么用呢? 还是 阅读全文

posted @ 2021-11-28 17:07 时间人生 阅读(34) 评论(0) 推荐(0)

2021年11月21日

设计模式系列——设计原则之接口隔离原则

摘要: 接口隔离原则,这里面两个词,一个是接口,一个是隔离。 什么是接口呢? 接口可以分为两类,一类是实例接口,一类是类接口。 分别什么意思呢? 实例接口,指的是实例对象的类是一个接口,比如,Animal fish = new Animal(); fish是实例对象,而Animal则是实例接口。 类接口,指 阅读全文

posted @ 2021-11-21 23:21 时间人生 阅读(54) 评论(0) 推荐(0)

2021年8月8日

设计模式系列——设计原则之依赖倒转原则

摘要: 依赖倒转原则 依赖倒转原则是什么? 依赖倒转原则是设计模式中的一个原则。 那这个原则说的是什么呢? Robert C. Martin在他的著作《敏捷软件开发:原则、模式与实践》中有这样的两句描述 1.High-level modules should not depend onlow-level m 阅读全文

posted @ 2021-08-08 12:13 时间人生 阅读(96) 评论(0) 推荐(0)

2021年8月1日

设计模式系列——设计原则之开闭原则

摘要: 开闭原则 如果用一句话解释的话,我会说开闭原则的内容是,对扩展开放,对修改关闭。 什么意思? 有两层意思,第一层是设计时应该方便后续扩展,对原有代码修改屏蔽。第二层是新增功能时通过扩展来实现,而不是通过修改原有代码来实现。 为什么要遵守开闭原则呢? 这么做是为了能够以最小的代价完成一个功能。 这里的 阅读全文

posted @ 2021-08-01 18:37 时间人生 阅读(70) 评论(0) 推荐(0)

2021年6月2日

算法:分治法和动态规划法

摘要: 不知道你是怎么理解分治法和动态规划法的。 我原来一直以为,这是两种算法,但奇怪的是,这两种算法能够解决很多问题,比如,归并排序,0-1背包问题等等。 他们的算法明明不一样啊。 还有明明都是分治算法,为什么时间复杂度还不一样? 到底是哪里理解错了呢? 其实真正理解错误的是,分治法和动态规划法并不是算法 阅读全文

posted @ 2021-06-02 19:00 时间人生 阅读(564) 评论(0) 推荐(0)

2021年6月1日

算法计算时间复杂度(1):求递归式 f(n) = 2f(n/2) + n

摘要: 当 n = 1 时,f(n) = 1; 当 n > 1 时,f(n) = 2*f(n/2) + n ; 求f(n)的递归式 首先为什么要求递归式呢? 是因为在计算机中有些算法是使用递归方式实现,我们需要计算该递归方式的时间复杂度,来评定算法的优劣。 下面我们来求f(n)的递归式,什么是递归式呢?就是 阅读全文

posted @ 2021-06-01 02:19 时间人生 阅读(3146) 评论(0) 推荐(0)

2020年9月22日

学习《设计模式(Java版)》——代理模式20200921

摘要: 在经历过上一次创建型设计模式的翻车,总结经验,选择一个设计模式一个设计模式的写,并且不只是一次性写完而是选择知道一点就写一点。 这次开始说说代理模式。 代理模式有两种分别是:静态代理模式和动态代理模式 怎么理解呢? 静态代理模式可以理解为在代码还没有运行就能够看出谁代理谁。 动态代理模式可以理解为在 阅读全文

posted @ 2020-09-22 00:32 时间人生 阅读(61) 评论(0) 推荐(0)

2020年9月19日

学习《设计模式(Java版)》——创建型设计模式20200919

摘要: 本来在讲完设计模式的10个要素之后,应该讲一讲设计模式的六大原则。 但是在发现自己对于六大原则的理解不够(基本是抄书中原话),觉得这样没有自己的理解,所以选择学完所有的设计模式之后再来谈谈设计模式的六大原则。 设计模式23种 按照特点分为三类:创建型、结构型和行为型。 其中创建型有5种分别是:单例模 阅读全文

posted @ 2020-09-19 21:10 时间人生 阅读(89) 评论(0) 推荐(0)

2020年9月12日

学习《设计模式(Java版)》——设计模式的10个要素20200912

摘要: 为什么写博客呢? 是因为知道一个道理“输出可以倒逼输入”。具体是想要通过这种方式逼自己将设计模式完完整整的学一遍,而不是半途而废。因为在网上写博客即使没人看,自己也会觉得有大家在看着自己的所作所为,所以,这将成为我咬牙学完设计模式的动力。 当然写博客逼自己学完设计模式这只是其一,在写博客的过程中也可 阅读全文

posted @ 2020-09-12 11:07 时间人生 阅读(300) 评论(0) 推荐(0)

导航