关于API设计和简洁性

需要其他行为的用户可以剥离这些层并使用下面的层。 由于较低层的API更加灵活(因此不那么简单),因此她将不得不学习更多的知识。

但是,在这种情况下,需要确保的是各个软件层及其相互依赖性的清晰映射。 只要该框图清晰易懂,用户就可以为给定的功能选择希望操作的层。

6.了解您的用户

您可能已经注意到,上面提到的很多方法都提到了“迭代”或“大多数用户的要求”。 隔离开发模块确实很困难。

首先,我们由特定的一组用户开始,但用户配置文件却发生了变化。 它有助于与用户保持紧密联系,了解他们当前的问题,并且重要的是,可以关闭反馈循环并改进我们的API。

这在大多数开源项目中都是显而易见的,但在涉及多个中间支持层的其他项目中却成为障碍。

7.长寿

最后,既然我们在谈论迭代,那么向后兼容性又如何呢? 软件将继续发展,以一种或另一种方式影响API。

只要我们说明API更改的理由,用户通常就会了解API更改。 而且,如果这使90%的用户的生活变得轻松,则可以为您提供更多的功能。

但是,随着人们的投入生产,部分用户会遇到改变的阻力。 您必须硬着头皮,并保持与较旧的不太简单的API的向后兼容性。

但是,进化和简化的过程仍在继续,毕竟,将来我们将拥有比迄今为止更多的用户,不是吗?

8.模式

我以为我已经说完了,直到我发现我错过了这一点。 如果您住了这么长时间,可以为您提供一份奖金section

模式甚至在必须阅读整个细节之前就传达了信息。 锁定-解锁,打开-关闭,读写可以迅速将可能发生的情况传达给开发人员。

围绕完善的模式对API建模有助于用户快速关联并了解API打算做什么。

真正的危险不过是看起来像模式但不是真的的API。