java编程指南之设计

1.优雅终将得到回报

   多花点时间对问题提出优雅的解决方案

2.能够运行,再求速度

   尽可能简化设计,先让系统运行起来,如果性能不够理想

,再借助性能分析工具

3.谨记‘分而治之’的原则

  如果问题过于复杂,先想一下基本操作,假定程序中有一小

段“神奇代码”能处理关键部分,那就把神奇代码作为一个对象,并包装起来。

4. 区分类的编写者和使用者。(客户端程序员)

   类的使用者不必知道类的底层的实现方式

5.编写类的时候,类名应非常的清晰,不写注释也能明了。

6.分析和设计必须使用系统中的类,他们的公共接口(尤其是与基类之间)的关系达到最少。

7.尽量让所有东西都自动化。

8.在编写类之前,先编写测试代码,以验证这个类是否设计完美。

9.引入间接概念层次更有意义。

   将常用的方法放在一个方法内部。

10.尽可能使类原子化

   如果类或系统的设计过于复杂,请将它设计成几个简单的类

   建议重新设计类的线索:

      1.有复杂的switch语句-------建议使用多态。

      2 有许多方法,各自处理类型极为不同的操作-------

考虑划分成不同的类。

      3.有许多成员变量,用来表示类型极为不同的属性。

 11.当心冗长的参数列表

       试讲方法放入更合适的类中

 12.不要一再重复

         如果某段代码不断出现在许多派生类中,考虑将其

放入基类中。

 13.小心switch语句或嵌套使用的if—else语句

        考虑使用继承或多态机制控制此代码

 14.从设计者的观点来看,找出变动的因素,并把它和不变的相隔离

        找出系统中可能会改变的因素,将他们封装在类中,这样就不会被迫重新设计系统。

 15.不要依靠子类化来设计系统。

 16. 使你的类符合逻辑。

        类和派生类之间保持(is-a)的关系,

        类和成员之间保持(has-a)的关系

 17.小心重载

        方法不应该把参数值作为执行代码的条件。

 18.使用异常体系

       最好使用从java标准异常体系中派生出来的具体类

 19.从客户端程序员和程序维护者的角度来进行思考,设计的类尽可能易于使用

 20.如果你用别扭的方式才能实现某个功能,请将此方法限制在类的内部

 21 如果你只能采用某种不可移植的方式才能实现某种功能

,请将其抽象成服务,并局限在某个类的内部。

 22.在原有基础上编写新类时,应先考虑整合

 23.使用设计模式来消除那些纯粹的“功能性代码”

 24.当认为自己已经获得了一个优秀的分析,设计和实现时,进行一次全面评审。


你可能感兴趣的:(java应用,编程,Java,设计模式)