劝退指南
注意
SLIGHTNING 非常不建议新手使用 SCW,SCW 存在诸多的问题,尤其是对新手而言。
一、复杂
- SCW 具有复杂的 API,各种功能都要手动配置,很难在短时间内快速掌握,用起来也很麻烦。
- SCW 需要使用 webpack 进行打包,webpack 配置非常复杂。
二、臃肿
1.代码体积大
此处“代码体积”指的是经打包后的控件代码的大小。
SCW 代码大概有 100-200kb(具体取决于使用了多少功能),对于一些本身就复杂的控件(如:源码云功能)而言,SCW 在其中的占比可能并不是很大,但是,对于一些简单控件,SCW 几乎占据了控件的全部体积。
2.速度缓慢
(1)打包速度缓慢
Webpack 是一个很慢的打包工具,冷启动一般需要 10 秒左右的时间,代码多的话的可能需要几分钟,增量更新也需要至少需要 100 毫秒。也就是说,当你开始开发时,你需要花 10 秒左右的时间等待 webpack 启动完成,才能得到可以导入到 CoCo 中的控件,之后对代码的修改,需要等待至少 100 毫秒才能得到更新过的控件。
(2)运行速度缓慢
SCW 中大量使用 Proxy 来动态改变对象行为,这些都会造成额外的性能开销。
三、无用
很多 SCW 的解决方案都有简单的替代方案,很多控件也不需要工程化开发,引入 SCW 只会引入额外的复杂度。
四、离谱 BUG
在使用 SCW 时,你可能会遇到各种离谱 BUG,有些 BUG 网上根本搜不到解决方案,你可能需要阅读 webpack 和 SCW 的代码才能解决 BUG。
五、仍然想要使用 SCW?
如果以上问题并不能打消你使用 SCW 的念头,欢迎你使用 SCW。