为什么每个库都需要一个真实项目
许多库作者都会犯一个错误。他们认为仅有示例就足够了。
示例是不够的。
示例证明功能可行。真实项目证明库是好用的。这是两回事。
我构建过很多演示应用。我构建过示例网站、API 和组件。在演示中,一切看起来都很完美。演示展示的是理想路径。它们展示的是理想的工作流。
演示是受控环境。架构简单。需求可预测。
真实项目则完全不同。
当你为一个真实项目使用某个库时,规则就变了。你不再是在做演示,而是在解决问题。
真实项目会带来:
- 紧迫的截止日期
- 不断变化的需求
- 复杂的布局
- 边缘情况
- 人为错误
这正是库展现其真正实力(或弱点)的地方。库是在压力之下,而非在演示中显露真身。
真实项目会暴露你的假设。一个想法在纸面上可能看起来很优雅。在开发过程中可能也行得通。但现实会接踵而至。
工作流感觉很别扭。配置感觉很重复。API 感觉很不自然。你的设计并没有错,只是它还没有经受过现实的考验。
作者能做的最好的事情就是成为自己软件的用户。不要只构建演示。用你的工具去构建网站、应用程序和业务。依赖它们。
当你依赖自己的软件时,你的视角会发生转变。你不再像作者那样思考,而是开始像用户那样思考。
用户关心的是:
- 摩擦感
- 清晰度
- 完成工作
构建真实的东西会改变你的问题。你不再问“我们应该添加什么功能?”,而是问:
- 为什么这个工作流感觉很别扭?
- 为什么我在重复同样的操作?
- 为什么这花了这么长时间?
解决这些问题比任何头脑风暴会议都能创造出更好的软件。
每个库都需要一个真实项目。这个项目不是为了营销。它是一个试验场。它迫使库去解决真实的问题。它能在你的用户发现弱点之前,先找出它们。
目标不是证明你的库是完美的。目标是为你的库创造一个改进的途径。
来源:https://dev.to/stinklewinks/why-every-library-needs-a-real-project-1ae7