为什么每个库都需要一个真实项目

许多库作者都会犯一个错误。他们认为仅有示例就足够了。

示例是不够的。

示例证明功能可行。真实项目证明库是好用的。这是两回事。

我构建过很多演示应用。我构建过示例网站、API 和组件。在演示中,一切看起来都很完美。演示展示的是理想路径。它们展示的是理想的工作流。

演示是受控环境。架构简单。需求可预测。

真实项目则完全不同。

当你为一个真实项目使用某个库时,规则就变了。你不再是在做演示,而是在解决问题。

真实项目会带来:

  • 紧迫的截止日期
  • 不断变化的需求
  • 复杂的布局
  • 边缘情况
  • 人为错误

这正是库展现其真正实力(或弱点)的地方。库是在压力之下,而非在演示中显露真身。

真实项目会暴露你的假设。一个想法在纸面上可能看起来很优雅。在开发过程中可能也行得通。但现实会接踵而至。

工作流感觉很别扭。配置感觉很重复。API 感觉很不自然。你的设计并没有错,只是它还没有经受过现实的考验。

作者能做的最好的事情就是成为自己软件的用户。不要只构建演示。用你的工具去构建网站、应用程序和业务。依赖它们。

当你依赖自己的软件时,你的视角会发生转变。你不再像作者那样思考,而是开始像用户那样思考。

用户关心的是:

  • 摩擦感
  • 清晰度
  • 完成工作

构建真实的东西会改变你的问题。你不再问“我们应该添加什么功能?”,而是问:

  • 为什么这个工作流感觉很别扭?
  • 为什么我在重复同样的操作?
  • 为什么这花了这么长时间?

解决这些问题比任何头脑风暴会议都能创造出更好的软件。

每个库都需要一个真实项目。这个项目不是为了营销。它是一个试验场。它迫使库去解决真实的问题。它能在你的用户发现弱点之前,先找出它们。

目标不是证明你的库是完美的。目标是为你的库创造一个改进的途径。

来源:https://dev.to/stinklewinks/why-every-library-needs-a-real-project-1ae7