设计模式:建造者模式及其与工厂模式的区别

一、引 我们在设计实现某些需求的时候,会遇到这样的一种情况,即在实现一类组件,这类组件有固定的执行顺序和固定的执行方法,只是在执行方法中的业务逻辑根据不同的需求变化。就像是生产人偶,这些人偶有两脚、两手、头、身体,在生产过程中,这些部位是一定要的且生产这些部位的顺序一致,只不过头有大头和小头,身...

2019-01-15 11:04:05

阅读数 57

评论数 0

设计模式:外观模式

一、引 这次要讲的这个模式其实在我们日常编写代码的过程中非常常见,在面向对象编程中,我们几乎无时无刻不在用它,它就是外观模式。在进入讲解之前,我们先来了解一个设计原则,这就是迪米特法则。 迪米特法则,如果两个类不必彼此直接通信,那么这两个类就不应当发生直接的相互作用,如果其中的一个类需要调用另...

2019-01-15 10:00:14

阅读数 23

评论数 0

设计模式:模板方法模式

一、引 我们在日常的代码设计中,会遇到许多固定的逻辑操作,那么这个时候如果不进行一定的设计,就会出现冗余的逻辑重复,导致代码维护性不高,所以一般遇到这种情况,我们应该设法将这些固定的操作与可变的操作进行分离,每次修改只要变动可变操作即可。这就是这次要讲的模板方法模式。 二、问题 既然是模板方...

2019-01-15 09:37:41

阅读数 23

评论数 0

设计模式:原型模式

一、引 我们在日常的开发中,可能会遇到需要重复创建相同或者类似的对象,这个时候如果使用实例化(new),那么我们需要多少个对象,就需要实例化多少次,这不仅会导致代码重复的灾难,还难以对已实例化的对象进行修改,那么这个时候就需要一种设计思想,在需要对象的时候,尽量避免实例化,优化程序结构,且方便我...

2019-01-12 19:56:06

阅读数 36

评论数 0

问题杂谈:Idea正常启动Tomcat后,无法访问Tomcat的主页及其他资源--解决方法

一、引 我们在使用Idea开发Web项目的时候,需要配置服务器,相信使用过Idea的伙伴都经历过配置服务器的过程。但是,这篇博文并不是教你如何在Idea上配置服务器的,而是一个在Idea完全正常的运行项目时,却会碰到的一个意想不到的问题,虽然这个问题并不是每个人都会遇到,但相信遇到了的人,都有过...

2019-01-12 18:09:12

阅读数 66

评论数 1

问题杂谈:关于java.lang.NoClassDefFoundError和ClassNotFoundException的几种解决方法

一、引 开发中总会碰到一些问题,让人锤头顿足,即时花半天时间都还是没有解决。而接下来准备讲的java.lang.NoClassDefFoundError和ClassNotFoundException,就是属于让人咬牙切齿的问题之二。这两个问题乍一看好像都是指找不到某个类了,虽然出现这两种问题的部...

2019-01-09 19:56:27

阅读数 130

评论数 0

设计模式:工厂方法模式

一、引 工厂方法模式光从名字上就和简单工厂模式很相似,其实具体的含义和实现也很相似,只不过工厂方法模式将原本简单工厂模式中的工厂类进行了抽象,具体化了不同操作的工厂类。简单的说,就是依据封闭-开放原则,对简单工厂模式进行了修改。 二、问题 为了能够和简单工厂模式进行比较,这次的问题还是设计一...

2019-01-08 11:23:05

阅读数 30

评论数 0

设计模式:代理模式

一、理解 代理模式(Proxy),为其他对象提供一种代理以控制对这个对象的访问。从模式的命名我们就可以意识到,应该是通过一个类代替另一个类进行相关的操作,类似于使用者的意思。“你授权给我使用你的功能,我可以在这个地方代替你行事相应的功能”,值得注意的是,代理行使的功能其实就是功能所有者的功能。以...

2019-01-08 10:29:43

阅读数 26

评论数 0

设计模式:装饰模式

一、引 面向对象编程就是一个不断的抽象的过程,经过前面几个模式和原则的认识,相信会对面向对象有了进一步的理解,在编写代码中我会需要时刻提醒自己对需求进行合理的抽象。不同的模式是为了解决不同的情况,但终究是依靠面向对象编程中的几个特性封装、继承、多态,都是为了达到可维护、可扩展、可复用、灵活性好,...

2019-01-07 13:06:20

阅读数 24

评论数 0

设计模式:单一职责原则、开放-封闭原则以及依赖倒置原则

在设计代码中,我们有许多可以依照的设计模式,让我把整个项目的逻辑结构变得清晰易于维护。当然,在设计模式中我们不只有各种模式,还有许多设计的原则,虽然他们不是代码架构的模板,但是这些原则却时刻提醒我们提高代码质量和防止未来麻烦。这次我就将单一职责原则、开放-封闭原则以及依赖倒转原则进行解释。 一、...

2019-01-06 16:23:12

阅读数 53

评论数 0

设计模式:策略模式

策略模式定义了算法家族,分别封装起来,让它们之间可以相互替换,此模式让算法的变化,不会影响到使用算法的客户。策略模式是一种定义一系列算法的方法,从概念来看,所有这些算法完成的都是相同的工作,只是实现不同,它可以以相同的方式调用所有的算法,减少各种算法类与使用算法类之间的耦合。 一、引 我们必须...

2019-01-05 11:44:41

阅读数 98

评论数 0

问题杂谈:教你读懂UML图

UML图可以说是每个编程人员必须知道的知识,关于UML了相关知识可以专门开设课程进行学习,知识体系在软件工程中很重要,特别是设计到专业的团队开发时,这些东西显得尤为重要。我在这里只是介绍UML图中的基础概念,让你可以快速的看懂一张UML图,而不必啃UML的知识体系。 首先我网上找到了一张比较好的...

2019-01-04 13:53:23

阅读数 54

评论数 0

设计模式:简单工厂模式

原本自己开发了各种web、移动应用,还开源了几个项目,觉得自己能力不错了,可最近在研究Android源码的时候才发现,自己某些方面的缺失。而这种缺失就是设计模式。起初对于各种设计模式都有过了解,但也只是略知大概的概念皮毛,所以在看源码的时候发现,就像是在看天书一般,令人难受,所以现在打算重头对各种...

2019-01-04 12:30:58

阅读数 33

评论数 0

Android开发:APP桌面只显示默认机器人图标的几个解决方法

在我们进行Android APP的过程中,对于设置桌面图标应该早就信手拈来了吧,我们只要在AndroidMinifest.xml中的application中设置android:icon=""或者android:roundIcon="&q...

2018-11-27 20:18:32

阅读数 548

评论数 0

Android开发:APP引导页启动页小Demo(实例)

从之前入门Android,一步一步的走到现在,过程真的难于言表,只有经历过的人才知道吧,理解初学Android时痛苦,所以现在在Android上略窥门径的时候,回过头来写一些小Demo,希望能够帮助到需要的人,后面有空会经常写一些实例Demo。 废话不多说,这次讲解APP的引导页启动页,我使用在...

2018-11-03 00:23:28

阅读数 483

评论数 0

Django开发:ERRORS: ?: (staticfiles.E001) The STATICFILES_DIRS setting is not a tuple or list.

在使用Django进行开发时,碰到了一个比较隐蔽的问题,其实是一个很简单的问题,但是却很容易忽略,所以用再次作为一个提醒之用。 具体报错信息如下: ERRORS: ?: (staticfiles.E001) The STATICFILES_DIRS setting is not a tuple...

2018-10-29 23:59:53

阅读数 196

评论数 0

Android开发:android动画应用之objectAnimator(附实例)

在android学习中,我们需要掌握动画的知识,这样可以为我们的应用添加足够华丽灵动的操作体验,接下来我通过实例讲解ObjectAnimator实现动画效果,ObjectAnimator是ValueAnimator的子类。其功能更加强大了,可以对一个对象的属性进行动画操作。在Activity中用j...

2018-10-23 22:30:29

阅读数 56

评论数 0

Android开发:ViewPager实现屏幕滑动,及定义切换动画(实例)

在两个完整的界面之间进行切换是非常常见的效果,Android提供的ViewPager使我们实现起来非常的便捷,在这里,我将讲解如何用ViewPager实现切换,以及如何自定义切换的动画效果。 一、实现屏幕切换 其实非常简单,实际上我们只需要四个文件即可实现效果,首先创建一个Fragment所使...

2018-10-22 23:57:52

阅读数 49

评论数 0

Android开发:View间渐变动画(实例)

  渐变动画(也叫消失)通常指渐渐的淡出某个UI组件,同时同步地淡入另一个。当App想切换内容或View的情况下,这种动画很有用。渐变简短不易察觉,同时又提供从一个界面到下一个之间流畅的转换。如果在需要转换的时候没有使用任何动画效果,这会使得转换看上去感到生硬而仓促。在这里我详细的讲解具体实现,...

2018-10-22 19:50:45

阅读数 29

评论数 0

Django开发:PyCharm平台下的Django简易教程

在讲解开始之前,先保证你的PC安装了Python和Django,安装Django可以使用命令pip3 install django,将自动安装最新的Django版本,具体教程网上很多,自己查,这里就不多说了,本人在写这篇博客的时候,安装的Django版本是2.1.1,已经安装Django的,可以查...

2018-10-05 17:10:14

阅读数 105

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭