OOP(Object Oriented Programming)编程
被许多开发人员所敬畏的OOP编程 —— 无论你刚入门三个月还是工作好几年!它就像一个神秘的磁场,当你试图靠近的时候就会感受到“阻力”,今天我们来消弥这种“阻力”!解开OOP编程的面纱一探究竟。
一:玄乎乎的设计模式
It's just a kidding , so easy !
设计面向对象软件比较困难,而设计可复用的面向对象软件就更加困难,你必须抽象相关的概念,进而找到相关的对象,以适当的粒度组织他们,再定义类的接口和继承层次,建立对象之间的基本关系,让他们在一起很好的协调工作,你的设计应该针对手头的问题,不管你是在设计web框架还是在设计一个业务流程,同时,设计需要对将来的问题和需求也要有足够的通用性。
你或许对面向对象的设计抱有很高的期望度,比如一下子就会设计出结构良好,可复用,可读性高,可扩展的类结构,你也觉得你会避免重复劳动,比如重复设计或尽可能少的做重复设计,但是有一个令人低落的事实是:要一下子得到复用性和灵活性好的设计,即使不是不可能的至少也是非常困难的,一个设计在最终完成之前常常需要被复用好几次,而且每次都会有修改,比上一次更符合问题的场景。
也许你看完上面两段话会有一些难过,失落,沮丧的情绪,但是别担心,我们有更好的办法。:heart_eyes:,
有经验的面向对象设计者确实能做出良好的设计,而新手则无所适从,总是求助于以前非面向对象的技术,新手需要花费更多的时间领会良好的面向对象设计师怎么回事。有经验的设计者显然知道一些新手不知道的东西,那这些东西是什么呢?
内行的设计者都知道,不是解决所有问题都需要从头做起的,他们更愿意复用以前使用过的,被证明设计良好的设计方案,会一次又一次的用,你也会在各种系统中看到这些设计方案,我们将其称之为“ 设计模式 ”,这些模式被设计用来解决特定的问题,可以被反复的使用,每当你遇到适用的场景的时候就可以使用特定的模式,他们使得设计出来的对象和类之间更灵活,优雅,复用性好,一个熟悉这些设计上的模式的人不需要去提炼一种解决这个问题的新的模式,而是能够立即将其应用于设计的问题中,它和语言无关!给他一个合理的解释:设计模式就是解决一组特定的问题特定的设计方案的总称,他的目标是更灵活,可复用,可读性强,可维护性强, 所以设计模式的种类还会随着时间的推移可能越来越多! so cool :sunglasses:
二:设计模式大观园
接下来我们准备走马观花的看一看,瞧一瞧有哪些设计模式,至于他解决了什么问题,怎么解决的,孰优孰劣我们会在以后的文章中详细讲述。
1:创建型模式, ,, ,
2:结构型模式, ,,,,,
3:行为型模式,,,,,,,,,,
领取专属 10元无门槛券
私享最新 技术干货