Рекомендуемый кодовый стандарт при разработке JS модулей.


Соглашение по именованию

0. Выделение слов - смена регистра символов (camel case), Табуляция - 3 знака, не пробелы.

1. Функции - конструкторы, работающие с оператором new именуются с большой буквы
function AbstractDriver () {
};

var Driver_1 = new AbstractDriver ();
2. Функции, и публичне функции - методы объекта с маленькой буквы
function updateRequest () {
};

function AbstractDriver () {

this.getData () {

};

};


var Driver_1 = new AbstractDriver ();

Driver_1.getData ();
3. Публичные, но временные или приватные функции - методы объекта, со знака нижнего подчеркивания и первой маленькой буквы
function AbstractDriver () {

this._getPassword () {

};


_prepare = function () {

}

_prepare (); // Приватный метод

};

var Driver_1 = new AbstractDriver ();

Driver_1._getPassword (); // Временный метод API
4. Имена свойств с маленькой буквы
var lastIndex = 0;

5. Константы - все знаки в верхнем регистре, выделение слов знаком нижнего подчеркивания
var EVENT_GENERATED_END = 0;

6. Входящие параметры функций, префикс in_, первый слог с маленькой буквы
function resizeProject (in_width, in_height) {

};
7. Выходящие параметры функций, префикс out_, первый слог с маленькой буквы
function checkConnection () {

return out_status;

};
8. Пространтсва имен, все знаки в верхнем регистре
KNX = {};
9. Расстановка пробелов:
- после ключевых слов, перед открывающимися скобками, перед фигурными скобками, после запятой
function name (in_arg1, in_arg_2) {

return out_arg;

};
10. Точка запятой: в конце строки, после закрывающей фигурной скобки

11. Документирование методов, конструкторов
/**

 * Purpose of the function - назначение метода

 *

 * @namespace Name of the namespace - имя пространтсва

 * @method / @onstructor Name of the function - имя метода или конструктора

 * @param  {Type} Description - входящие данные

 * @return {Type} Description - выходные данные

 */


/**

 * Create the data base of the app

 *

 * HDL

 * @method createDataBase

 * @param  {String} Path of the file

 * @return {Boolean} Success of the action

 */

function createDataBase (in_path) {

return out_result;

};

Эта статья была полезна для 2 людей. Эта статья помогла вам?

Сервис поддержки клиентов работает на платформе UserEcho