应变而优

803

如何写好一个API?

优秀 的 API即好记住又明确,促进代码可读性、准确性和高效性,帮助开发者走向成功

我称这些设计方向为“第一阶层”,因为它们是类库开发者需要关注的第一件事情。你可能不得不舍弃其中一部分并作出权衡,但至少它们在你脑海中游走过。

但是,只要你还未将此“流浪者”发送至火星,你的代码一直都有可能发生变化,API使用者的代码也是如此。

我认识的一些优秀API开发者不会停留在像可读性这样的“第一阶层”方向上,他们将尽可能多的努力奉献给我称为“第二阶层”的API设计:使用此API的代码如何随着时间的推移而发展

微小的需求变化可以使最优雅的代码分崩离析。

优秀 的 API 会准备好这些。它们预计到你会想要移动一些代码、复制粘贴一些部分、重命名、将特殊情况提取成可复用帮助程序、将抽象展开回特定的情景、hack一下、优化瓶颈、放弃一部分然后重新开始、犯了一个错误、在起因和影响之间游走、修复bug、审查修复代码。

优秀 的APIs不仅使你走向成功,还能助你 停留 在那。

它们应变而优。

翻译原文Optimized for Change(2018-12-12)