对外接口的

 

(1)、接口的异常处理:对外暴露的接口,都是采用远程调用的方式访问,建议都不要显式地抛出异常 ,其原因有主要有两点 :

 

(2)、关于参数校验:远程接口传入的参数,尽量都要进行校验 ,这样一方面可以避免发生各种由于参数不合法而引起的运行时异常,同时还可以给调用者以明确的提示。但是,如何校验参数,其实也还是有些要注意的。在项目里发现一些实现里使用断言机制校验参数,结果运行时参数不合格就直接返回了 IllegalArgumentException

 

(3)、返回结果:在 相关API 项目里目前大都用 XXXResult 名称格式的类来包装错误标识值和结果信息,都是非常好的模式。但是对于 Rest 风格的接口,结果发现返回的 XML 结果几乎没有统一的规范 , 如果有使用过支付宝接口的开发者应该注意到,支付宝接口的返回结果就定义的非常规范和统一,包括错误表示、结果信息、请求参数、签名机制等都有详细的定义,同时每个接口返回的 XML

 

(4)、关于性能:目前,大多数 API 项目 都是采用某种支持 框架来对外暴露接口 。其实,每种框架都有其适用性和局限性,怎么合理应用框架真的很重要的,在优化的过程,就发现接口实现实际上耗用的时间非常少,大部分时间都去构造接口实现对象去了。对于性能优化,其实有很多思想和模式可讨论,主要想说的几点就是:关键是要发现瓶颈 ,把代码逻辑分解开来,跟踪每段代码的执行,查看堆栈都是不错的手段;其次是可以根据业务情况,进行业务上的优化也非常不错

 

注:该文章于08年12月在公司内部分享的,希望给大家有所帮助。