忙活了大半年,终于把一个年久失修,bug众多,技术陈旧,难以维护的站给重构结束了,与其说是重构,不如说是重做,基本上就是推倒重来了.
先说背景:我们公司有个站是一个垂直财经门户站,流量还不错(牛市情况下),喜欢炒股的朋友应该知道这个站,不过这个站已经很老了,且总是出bug,故老板决定在股市疲软,网站流量不大的情况下进行重构,结果项目经理一看,技术太老了,重构难度太大了,直接推倒重来吧,于是就开始了重做网站.
先说下这次重做网站使用到的部分技术及开发中用到的工具(只说前端部分),这次重做是本着网站使用稳定,提高可维护性思想进行重做的,所以选用的技术不是最新,最潮的,而是相对稳定的.
旧网站 | 新网站 | |
css | 原生css | 用到了less预处理 |
网站图片 | 都是单张图片 | css sprite+iconfont |
内容结构 | 拼接字符串 | 模板 |
列表页优化 | 无 | 懒加载 |
cdn使用 | 无 | 一些库和框架使用了cdn |
后台管理页 | php的模板 | Angularjs |
模块化 | 无 | webpack |
版本控制 | 无 | git |
…… | …… | …… |
其实这样看看,网站也没有用到什么高级前沿技术,只不过之前网站太low了,所以感觉任何一点优化都是前进了一大步!
总结下这次重构的体会和感想吧,可能有些老生常谈,不过我觉得很重要:
1.编写可维护的代码的很重要,在这个基础上尽量编写复用性高的代码,所以这次我们采用了组件化开发.
2.团队沟通很重要,jquery的思想是Write Less, Do More,其实我觉得在团队化开发中应该是Say More,Write Less多一句沟通可能少写好多无用的代码.
3.大牛的文章以及经典的书上的建议不一定适用于每个项目,就像100年前的太祖放弃苏联权威人士的建议,自己提出的"农村保卫城市,武装夺取政权"方针最终带领中国人民走向胜利一样,有时候权威人士的建议固然对,但它不一定适合每个项目.
4.不要重复造轮子,有现成的直接拿来用.
5.前端真的发展好快,技术层出不穷,不加班学习真的跟不上了
---以上是一个前端菜鸟在做完一个网站重构项目后的感想