-
Notifications
You must be signed in to change notification settings - Fork 7
Style guides
Commits should be written according to commit's template placed at the root of repository (.gitcommit file).
To use template, please, configure your local git configs. Execute this command at the root of the WMP repository:
git config commit.template .gitcommit
This will configure git to use current commit template.
Основные положения соответствуют следующему документу: https://google.github.io/styleguide/htmlcssguide.xml
Основные положения соответствуют следующему документу: https://github.com/Platypi/style_typescript
Основные положения соответствуют следующему документу: https://google.github.io/styleguide/javaguide.html
Но есть некоторые дополнительные требования.
В исходный код не нужно добавлять упоминаний о времени создания файла, авторе шедевра и любую другую информацию, не относящуюся к самому коду. Копирайты добавлять в шапку так же не нужно, так как файлы защищённые лицензией описаны в NOTICE.
Допустимая максимальная ширина строк -- 120 символов.
При переносе запятая или точка не переносятся.
Секции внутри класса располагаются в следующем порядке:
- Статические поля класса
- Нестатические поля класса
- Конструкторы
- Статические методы
- Нестатические методы
- Переопределённые методы типа hashCode(), toString(), equals() и т.п.
- Геттеры-сеттеры
- Функция main()
Поля и методы внутри каждой секции предпочтительно располагать в соответствии с их уровнем доступа в следующем порядке: public, protected, package, private. Модификатор доступа должен быть указан явно, в случае пакетного уровня доступа (то есть отсутствия модификатора) в комментарии явно должна быть указана причина его использования.
Члены класса разделяются одной пустой строкой. Перед первым членом класса добавляется строка, после последнего строки нет.
Общие правила соответствуют следующему документу: http://www.oracle.com/technetwork/java/codeconventions-135099.html
Существуют некоторые не вошедшие в документ случаи:
- Beans (бины) именуйте так же как переменные, то есть с начальной маленькой буквы, в CamelCase
Общие правила соответствуют следующему документу: http://www.oracle.com/technetwork/articles/java/index-137868.html