最近一直在看JS的模块化编程的东西,对一些模式,写法也都有了一定的了解,但是最困扰我的是如何将模块分类,也就是说在我写代码的过程中,我怎么样确定这段代码是属于哪一个模块。
黄舟2017-04-10 14:26:19
这和你项目的技术选型有关……如果项目用了backbone/angular/knockout 等之类的框架,那么理解框架的思路,沿着框架的思路划分模块就好。
当然你也可以不用,就用普通的jQ乃至jQ都不用,那就需要你对整体架构有个总体的设计。比如你的数据源来自接口API的Ajax请求,还是CGI直接吐在html里,怎么封装起来。比如你的页面DOM怎么划分,怎么把逻辑和DOM绑定,是否需要类似widget/小组件的概念等等
如果你还是感觉没有思路,或者面对的是已经有的一堆代码,也可以用野战军式的作风,比如:先每个页面/主要逻辑划分一个模块,其他不管全都写进去,然后慢慢发现有重复代码,或是有需要公用的部分,慢慢重构整理出模块来。
关于写代码,不要妄想着一次把事情做对做完美,先做做看,边做边改进才是正道。踩过各种坑的先人会告诉你这样做那样做比较好,但如果你根本不往前走,不往前看,那这些建议就都只是空谈
怪我咯2017-04-10 14:26:19
捷径:https://github.com/component/ component未必适合你得项目,但你可以多看看里面的组件,再思考为什么那么做。