三叔2016-11-11 14:23:48
我觉得有规范的技术造轮子的价值很高。
AMD
CMD
promises/A+
基于规范去实现。而且规范应该都有test,也可以很好的评价自己的实现是否完善,准确。
理解了规范,你学习的成本也会很低。
假设你理解了promises/A+规范,学习任何一个基于该规范实现promise库都几乎不需要成本。遇到的问题也很容易解决。
欧阳克2016-11-11 14:22:39
你只要去实现那些每年被重新实现过一遍的轮子就行了。
UI 轮子
轮播、Tab、懒加载……
照着饿了么UI库、Bootstrap 挨个实现就好。
做这种轮子比较考验 CSS 功力,你需要用尽量少的代码适应尽量多的场景。
流行 UI 模式的实现
瀑布流、视差滚动、fullpage等。
原理简单又炫酷,何乐不为。
DOM 操作的轮子
实现得最好的当然就是 jQuery。由于 jQ 这么流行,所以你实现的结果很可能跟 jQ 的 API 一模一样。
因此现在很少有人造这个轮子,但是在十年前,大家都是在早 DOM 轮子。
这要求你对 DOM 和 API 设计有很多经验。
至于 Virtual DOM,你可以在某种程度上认为是一种 DOM API 的封装,不过它的难点其实不在这里。
JS 缺失的标准库的实现
Date 很烂,所以有了 Moment
Array 很烂,所以有了 Underscore Lodash
JS 没有加载器,所以有了 require.js 等
JS 自定义事件不好用,所以你可以自己造一个
有的浏览器不支持 ES5,所以有了 es5shim。
移动设备需要滑动事件,你来造一个轮子吧。
模板引擎……就一个正则替换还好意思叫引擎,实现这种轮子的第一要务是如何给出漂亮的 debug 信息,至于渲染速度的,我认为只能排在第二位。
框架轮子
MVC 可以造轮子,虽然不流行了,但对老项目很有用。
MVVM 在不考虑 IE 的前提下造一个轮子也绝非难事。
FLUX 单向数据流的轮子就更好造了。
工程化轮子
现在搞前端不会工程化怎么行。
基于 Gulp 做一套自动化构建尽显逼格。
所以你看,前端搞了这么多年,只不过就是每年把上面轮子重新造一遍而已