Спецификация предназначена для прикладных разработчиков и разработчиков компонентов и классов Prognoz Platform 8 на JavaScript.
Список статей:
Кроме описанных в статьях особенностей, также существует ряд общих требований к разработке:
Все классы, свойства и методы должны иметь комментарий и контекстную документацию, из которой без дополнительных пояснений должно быть понятно назначение этого класса, свойства или метода.
Все классы, свойства, методы и переменные должны иметь осмысленные названия.
Отсутствие высокой связности и низкой (неплотной) увязки.
Число строк в методе не должно превышать 1-2 экранов, кроме тех случаев, когда это оправдано и содержит комментарии.
Глобальные переменные не должны использоваться.
Запрет на использование излишне запутанного кода, с множественными перекрестными ссылками между объектами.
Должен использоваться объектно-ориентированный стиль программирования (то есть, с использованием наследования, инкапсуляции и полиморфизма) без перекосов в процедурный, функциональный и так далее.
Наследование в иерархиях классов должно быть оптимальным, чтобы обеспечить максимальную расширяемость функциональности классов без переработки структуры классов.
Обобщенное программирование (шаблоны, параметризованные функции, классы и тому подобное) должны использоваться в максимальной степени, но не избыточно (не должно затруднять понимание и модификацию кода, расширение функциональности классов и методов).
Запрет на использование подхода «Copy/Paste». Не рекомендуется целиком копировать другие участки кода.
Запрет на использование длинных конструкций вида:
for (var i = 0; i < 10; i++)
a().b().c().d().e().f().g(i);
Необходимо делать так:
var f = a().b().c().d().e().f();
for (var i = 0; i < 10; i++)
f.g(i);
Должны использоваться эффективные алгоритмы и структуры данных.
Не должны использоваться неоптимальные циклы и циклы с глубокой вложенностью.
В качестве отступов должны использоваться символы табуляции, вложенные блоки должны отделяться от объемлющих одним символом табуляции.
Длина строки не должна превышать 90 символов.
Открывающая и закрывающая фигурные скобки во вложенных блоках должны находиться в отдельных строках в одной горизонтальной позиции с текстом объемлющего блока, содержимое вложенного блока должно быть отделено одним символом табуляции.