<软件框架设计的艺术>读书(一)

一.书中概念及理念

 1.无绪

书中表明的意思是说,API使用者不用完全了解(或深入了解)API的内部实现就能使用.

读者注:不用完整了解也意味则功能要模块化!

2.API的范围

API的范围不仅仅指代码,还包括环境变量、文本信息、协议、国际化等等。

3.永远没有完美的版本

需求永无止境且随着时间的变化而变化、因而API没有完美。

4.API版本兼容

1)源代码兼容

可理解为IDE编程完毕无异常

2)二进制兼容

java解析为class后无异常

3)功能兼容

实际使用后无异常

5.版本升级需注意的问题

1)API增加类时,有可能导致旧API使用者本地的类同名导致bug。

该处应该建议用户引用使用精确引用而非*引用

2)API增加方法时,有可能导致新老版本解决不一致

例子:

旧API:

public void toString(Object o)

新API新增方法:

pubic void toString(StringBuffer s)

则会造成API升级的时候并无编译异常,但是若方法功能不一致则会使得API使用者的原代码调用toString(StringBuffer)的地方出错.

 

6.基本类型真实赋值的巧用

当一个类使用public statis final int version =1时,若其他类调用这个version则是将1赋值而非属性引用,因而当这个类将version该变值,则调用的类值并未改变.该方法可以很好地进行版本判断.

 

猜你喜欢

转载自wsckw5.iteye.com/blog/1923019
今日推荐