好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

newland.js的Ioc实现

newland.js的Ioc实现

concat( files ), function (){

          //取得放在前面的拦截器

          var   intercepters = [].splice.call(arguments, 0, inter.length);

          //取得放在后面的控制器

          var   controllers = arguments;

          //进行控制反转,构建我们所需要的控制器子类与它的实例

          files.forEach( function (el, i){

              //mac下的路径为     app/controllers/doc_controller.js

              //window下的路径为  app\\controllers\\doc_controller.js

              var   match = el.replace(/\\/g, "/" ).match(rcname);

              var   controller = controllers[i];

              controller.inherit =  $.base_controller

              var   klass = $.factory(controller);

              $.controllers[ match[1] ] = new   klass;

          });

          resource_ready( intercepters )

      });

  });


需要说明一下的是,newland.js分成两大块,app目录下的模块是用户自建的文件或系统指令下建立的模块(下称app模块),system目录下的模块则是辅助app模块运行用的。需要用户动手的app模块越简单就越好!任何复杂的类最好不要用,就算用都交由框架去处理,去new 实例;任何复杂的功能都做用钩子的形式,或通俗地说,是回调函数的形式,交由框架去调度;所有不确定的功能都做成自定义事件形式,由框架或框架的另外加载的模块去fire。诸如此类,所有耦合就松绑了,得以最大限度地适应需求的变化。

 

 

标签:  javascript

作者: Leo_wl

    

出处: http://www.cnblogs.com/Leo_wl/

    

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。

版权信息

查看更多关于newland.js的Ioc实现的详细内容...

  阅读:39次