18 - 《约束与开放》
发布于 2021年12月24日
SEE Conf 分享的其中一部分底稿。
社区同学经常一方面抱怨 Umi 太黑盒,一方面又抱怨这么多选择,我应该选哪个;蚂蚁内部同学经常抱怨内置方案我不喜欢,能否换一个?
之所以有这个问题,归根结底还是场景不同。是个人还是团队,是同一个团队还是不同团队。团队需要一致性。到达终点的路很多,但这些路在一个团队内却不应该放开让大家选。
所以「社区要开放,团队要约束」。然后约束要有度。约束越多,越一致。但又不能把路堵死,堵久了容易固步自封。
蚂蚁内部有 50 条「强约束」规则集,目的除了方案和编码一致性,还可以提升安全性、规避常见错误、提升可维护性等。为了让这些规则不像 eslint 可以在本地轻易跳过,采取了服务器下发的方式。
举一些规则的例子。比如不能使用除 dva、