在进行模块化开发的过程中,有哪些基本的代码结构(不是框架的)。 之前提过一个关于封装的问题。 这封装和模块之间有哪些异同呢?
有些语无伦次了,轻喷^_^!
拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...
在某天抽風把 commonJS 的風格完美搞到瀏覽器端之前,我一直這樣寫:
var Module1 = (function() { /* something */ }()); var Module2 = (function() { /* something else */ // Module1.doSomething(); }());
當然自製框架畢竟無法用到所有場合
在 codetank 遊戲中,我一般這樣寫:
var Utils = Utils(); Robot = new J.Class({extend: tank.Robot}, (function(TANK) { return { run: function() { Utils.doSomething(); }, }; }(tank))); function Utils() { return { doSomething: function() { /* nothing:) */ }, }; }
然後你只要自動把「Utils()」腦補成「require('Utils')」即可
Utils()
require('Utils')
配合自製的代碼高亮+配色方案效果還是不錯的
可以参考webpack的输出,足够精简examples
模块化编程 by阮一峰链接
其实自己实现require也很简单的,在windows下写个require方法和一个registerRequire方法,require方法的视线仿照lua的模式就可以了,然后具体每一个js文件最后的返回值通过registerRequire方法注册就好了,很简单的,完全没必要用什么框架,如果你再用coffee来写,那简直完美
在某天抽風把 commonJS 的風格完美搞到瀏覽器端之前,我一直這樣寫:
當然自製框架畢竟無法用到所有場合
在 codetank 遊戲中,我一般這樣寫:
然後你只要自動把「
Utils()
」腦補成「require('Utils')
」即可配合自製的代碼高亮+配色方案效果還是不錯的
可以参考webpack的输出,足够精简
examples
模块化编程 by阮一峰
链接
其实自己实现require也很简单的,在windows下写个require方法和一个registerRequire方法,require方法的视线仿照lua的模式就可以了,然后具体每一个js文件最后的返回值通过registerRequire方法注册就好了,很简单的,完全没必要用什么框架,如果你再用coffee来写,那简直完美