详情183 +
44 81+79 50
镇江Java工程师培训,镇江上元零基础学Java 1、面向接口编程: "面向接口编程"是面向对象设计的第一个基本原则;它的含义是:使用接口和同类型的组件通讯,即,对于所有完成相同功能的组件,应该抽象出一个接口,它们都实现该接口;具体到JAVA中,可以是接口(interface),或者是抽象类(abstract class),所有完成相同功能的组件都实现该接口,或者从该抽象类继承。我们的客户代码只应该和该接口通讯,这样,当我们需要用其它组件完成任务时,只需要替换该接口的实现,而我们代码的其它部分不需要改变!当现有的组件不能满足要求时,我们可以创建新的组件,实现该接口或者直接对现有的组件进行扩展,由子类去完成扩展的功能。
2、对象组合优先考虑,少用类继承: "优先使用对象组合,而不是类继承"是面向对象设计的第二个原则,这并不是说继承不重要,而是因为每个学习OOP的人都知道面向对象的基本特性之一就是继承,以至于继承已经被滥用了,而对象组合技术往往被忽视了;继承和组合各有优缺点;类继承是在编译时刻静态定义的,且可直接使用,类继承可以较方便地改变父类的实现。但是类继承也有一些不足之处。首先,因为继承在编译时刻就定义了,所以无法在运行时刻改变从父类继承的实现。
对象组合是通过获得对其他对象的引用而在运行时刻动态定义的;由于组合要求对象具有良好定义的接口,而且,对象只能通过接口访问,所以我们并不破坏封装性;只要类型一致,运行时刻还可以用一个对象来替代另一个对象;更进一步,因为对象的实现是基于接口写的,所以实现上存在较少的依赖关系。 优先使用对象组合有助于你保持每个类被封装,并且只集中完成单个任务。这样类和类继承层次会保持较小规模,并且不太可能增长为不可控制的庞然大物(这正是滥用继承的后果);另一方面,基于对象组合的设计会有更多的对象(但只有较少的类),且系统的行为将依赖于对象间的关系而不是被定义在某个类中。
3、规范代码书写: (1)、将可变的部分和不可变的部分分离 "将可变的部分和不可变的部分分离"是面向对象设计的第三个原则;如果使用继承的复用技术,我们可以在抽象基类中定义好不可变的部分,而由其子类去具体实现可变的部分,不可变的部分不需要重复定义,而且便于维护;如果使用对象组合的复用技术,我们可以定义好不可变的部分,而可变的部分可以由不同的组件实现,根据需要在运行时动态配置;这样我们就有更多的时间关注可变的部分。
(2)、减少方法的长度 一般我们的方法应该只有尽量少的几行,太长的方法会难以理解,而且如果方法太长,则应该重新设计。方法写的标准我们可以总结为以下原则:
☆ 三十秒原则:如果另一个程序员无法在三十秒之内了解你的函数做了什么(What),如何做(How)以及为什么要这样做(Why),那就说明你的代码是难以维护的,必须得到提高;
☆ 一屏原则:如果一个函数的代码长度超过一个屏幕,那么或许这个函数太长了,应该拆分成更小的子函数;
☆ 一行代码尽量简短,并且保证一行代码只做一件事:那种看似技巧性的冗长代码只会增加代码维护的难度。
(3)、少用case / if语句 要尽量避免在代码中出现判断语句;
(4)、减少参数个数 有大量参数需要传递的方法,阅读性很差,我们可以将所有参数封装到一个对象中来完成对象的传递,这也有利于错误跟踪。
联系我时,请说是在优谱分类网上看到的,谢谢!