毫无疑问,肯定有不少人用正确的方式开发了很多API,否则现在的市场上就不会有这么多非常有用的软件产品。但设计原则、设计API的技巧及要点,通常都是在开发过程中下意识积累而得,而这一过程往往并不具有借鉴意义。很多设计师往往没有知其所以然就做一些API设计上的决策。结果就是在不停地尝试,犯错,再尝试再犯错,周而复始才逐渐在其潜意识中形成了设计API的相关知识,耽误了很多时间。这一过程中会产生很多指导人们正常做事的技巧,虽然这种过程非常有用,但因为它自身存在的问题,导致其产生的大量技巧非常分散,不易收集和管理。首当其冲的问题就是,这些技巧都有其特定的背景和作用域。很多人都知道,有大量的技巧,对于某一个项目或者是特定的人群是非常有效的,但只要换个团队或者换个项目,就完全不能用了。 其次,因为各人的思路都不相同,所以知识的传递就变得非常困难。在解决某个特定问题的时候,你觉得使用Java类要比使用Java接口更为合适,但一旦换了一个问题,这种解决方案可能就完全不合适了。即使你尝试去说服别人接受这种方案,但如果没有充足的理由去解释,你只能使用以往自己成功的案例来说服他人来采用该方案。肯定有人会赞同该方案,也有人会反对,但这都不是知识传承的本意。 凭感觉的NetBeans API设计中 必须承认我们在开发NetBeans项目的过程中也经历过这个阶段。在设计API时,我们会觉得某种设计可行,而另一种设计不可行,这种判断完全是凭感觉来做出的,而不是自底向上有坚实的基础的。这就是说,进行设计时,我们没有严格的推理和分析,只是凭着一种感觉,依靠我们的潜意识来设计API。想将知识传授给其他人的时候,就会因为他们根本没有类似于我们的经验,也就很难说服他们接受我们的知识。这迫使我们深入思考这一现象,考虑建立可度量的标准,用来帮助大家设计优秀的API。这本书就是深入思考后的结晶。我们确信,我们所积累的经验已经清楚地揭示了我们决策时的逻辑思路。现在我们把这些决策时的逻辑清晰地整理出来,传授给每一个愿意倾听的人。 阅读本书的人,首要关注的问题莫过于以下两个:为什么创造API?API到底是什么东西?本书会就这些问题展开详细的讨论。 即使不读、不理解甚至不同意本书中给出的建议,软件产品从业人员只要理解书中的基本需求和思路就会从中受益。这有助于更好地认识和理解API设计及其复杂性。当开发团队中的所有成员都可以自行设计API时,成员间的沟通就会非常简单,决策也不再需要多余的解释,因为他们拥有相同的知识,并在此基础上进行思考。这样做的最大好处,是可以提高开发人员间的合作效率,以及开发团队及其合作伙伴间的合作效率,从而保证了软件产品的高质量。 这本书尽力想帮助每个人都解决一些问题。它尽力为每一位读者解释API设计的基本动机,并为开发人员提供了例子和很多技巧,它叙述了良好架构的方方面面,不管是谁来设计API,都可以使用书中给出的那些可度量的原则来评估API的质量。 如果你还在怀疑是否应该阅读本书,那么给你一个最简捷的回答:“你要读这本书。”
软件框架设计的艺术——学习编写API
书名: 软件框架设计的艺术
作者: [捷克] Jaroslav Tulach
出版社: 人民邮电出版社
原作名: Practical API Design: Confessions of a Java Framework Architect
译者: 王磊 | 朱兴
出版年: 2011-3
页数: 388
定价: 75.00元
装帧: 平装
丛书: 图灵程序设计丛书
ISBN: 9787115248497