好的API设计
这篇文章从一次实际的中间件重构经历出发,探讨了“什么样的API才算是好API”。作者指出,API一旦发布便难以更改,因此在设计之初就需格外审慎。 文章清晰地界定了API不仅限于函数或接口,还包括调用方式、约定与依赖等。其核心部分总结了优秀API应具备的六大特点:易于学习、无文档也易用、不易误用(降低使用者心智负担)、使使用者的代码更易维护、能完备且正交地满足需求,以及易于扩展。 针对如何实现,文章提炼出八条精炼的设计原则:功能单一、体量尽可能小、减少外部依赖、设计不被实现细节所影响、谨慎暴露接口、采用自描述的命名、配套完善的文档,并始终考虑性能。文末附有多个跨语言的参考资料来源,为这些原则提供了扎实的理论依据。 整篇文章没有空谈理论,而是从“发布即定型”的现实约束出发,将API设计拟人化,强调其“秉性”的稳定。它为开发者提供了一份清晰可操作的自查清单,提醒我们在敲下第一行实现代码前,先思考如何设计一个“好相处”的接口。