gboiko / composer

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

#Composer Composer it's a simple js code snippets to structure code in Module and Class for convenient use, not more!

##Module Module is a global object, that responsable for like Module objects creation.

Module("TestModule",["Class","jquery"],function(Class,$){
 //any code goes here    
})();

You can just create a module without name and dependency (in this case module will be assigned auto name):

Module(function(){
 //any code goes here    
});

Module.get_name('module_1')();

Module have few helpers for more convenient use:

###Module.define(name,dependency,module) Define module:

Module.define("TestModule",["Class","jquery"],function(Class,$){
  //code goes here
});

Define and create module:

Module.define("TestModule",["Class","jquery"],function(Class,$){
  //code goes here
})();

###Module.create(name,dependency,module) Define and create module instantly:

Module.create("TestModule",["Class","jquery"],function(Class,$){
  //code goes here
});

###Module.get_module(name) Get module by name:

Module.get_module("TestModule")();

##Class Class is a global object, that responsable for like Class objects creation.

var TestClass = Class("TestClass",{
  init: function () {
    //contructor
  },
  get_name: function () {
    
  }
});
new TestClass();

Class supports js inheritance

var Base = Class('Base',{
    init: function (name) {
        this.name = name;
        return this;
    },
    get_name: function () {
        return this.name;
    },
    get_name_twice: function () {
        return this.name+'_'+this.name;
    }
});

var Sub = Class('Sub',Base,{
    init: function (name) {
        this.name = name;
        return this;
    },
    get_name_twice: function () {
        this.name = 'sub_super';
        return this._super();
    }
});

var base = new Base('base_1'),
    sub = new Sub('sub_1');

base.get_name();
// base_1
sub.get_name();
// sub_1
sub.get_name_twice();
// sub_super_sub_super

Also Class have a helper get_class to get Class by name: ###Class.get_class(name) Get class by name:

var TestClass = Class.get_class("TestClass");
new TestClass();

About


Languages

Language:JavaScript 100.0%