Правила форматирования кода в Java (ч. 5.2)
Вторая часть статьи, посвященной форматированию кода в Java. Из нее вы узнаете, как форматировать классы, методы и массивы.
2.5. Правила для методов
1) Если имя метода состоит из более, чем одного слова, то для именования используется camelCase
неправильно:
правильно:
2) Имя метода должно начинаться с глагола и состоять из одного или более слов. Но бывают исключения. А в тех случаях, когда контекст программы или класса очевидно указывает, что делает метод, то его имя может состоять из существительного. Такой подход часто используют для математических вычислений или каких-то устоявшихся операций, где использование простых и понятных имен для методов не приводит к неоднозначности или путанице
неправильно:
правильно:
3) Классическое именование boolean-методов происходит по схеме:
is/has/can/should + прил. (сущ.) + сущ. (опционально) + глагол (опционально). Но встречаются и другие схемы
неправильно:
правильно:
4) Имена методов всегда должны начинаться с маленькой буквы
неправильно:
правильно:
5) Между именем метода и круглой скобкой ( пробел не ставится
неправильно:
правильно:
6) Размещайте { на той же строке, что и конструкция к которой она принадлежит
неправильно (так форматируют в C# и C++):
правильно:
7) После объявления метода пустая строка не ставится
неправильно:
я это называю программерской клаустрофобией. Ей страдают по началу все новички. В интернете полно примеров, где пустая строка ставится. Но не делайте так. Нет никаких правил или обоснований это делать
правильно:
8) Отделяйте реализацию методов друг от друга пустой строкой
неправильно:
правильно:
9) Используйте this в методах только при конфликте имен. Если конфликта нет, писать this избыточно
избыточно:
правильно:
10) При именовании геттера для boolean-поля вместо get используйте is
правильно:
11) После запятой, используемой для перечисления аргументов метода, требуется пробел
неправильно:
правильно:
2.6. Правила для классов
1) После package и import требуется пустая строка
неправильно:
правильно:
2) Имена классов должны начинаться с большой буквы
неправильно:
правильно:
3) Если имя класса состоит из более, чем одного слова, то для именования используется CamelCase
неправильно:
правильно:
4) Имя класса должно начинаться с существительного и может состоять из одного или более слов. Оно также может начинаться с прилагательного, но за ним обязательно должно следовать существительное. При этом имя класса не должно содержать глагол
неправильно:
правильно:
5) Между именем класса и { необходим пробел
неправильно:
правильно:
6) Между объявлением класса и объявлением полей требуется пустая строка
неправильно:
public class Resume {
private String uuid;
private String fullName;
...
}
правильно:
public class Resume {
private String uuid;
private String fullName;
...
}
7) Поля следует размещать только в начале класса (перед конструкторами)
неправильно:
правильно:
8) В одной строке объявляйте за раз только одну переменную
неправильно:
правильно:
9) Не используйте в именах полей и методов имя класса, в котором они размещаются, т. к. и так понятно, что все, что в нем находится, относится к данному классу
неправильно:
правильно:
10) Между блоком полей и конструктором необходима пустая строка
неправильно:
правильно:
11) Конструкторы следует размещать после блока с полями
неправильно:
правильно:
12) Между именем конструктора и ( пробел не ставится
неправильно:
правильно:
13) Конструкторы следует размещать в порядке, зависящем от принимаемых ими числа аргументов: от меньшего к большему
неправильно:
правильно:
14) Перенесенные на новую строку аргументы конструктора необходимо смещать вправо на 8 пробелов относительно первой строки. При этом старайтесь, чтобы на каждой строке было примерно равное количество аргументов
неправильно:
правильно:
15) Группируйте геттеры и сеттеры по именам переменных, для которых они созданы. При этом не «приклеивайте» их друг к другу
неправильно:
правильно:
16) Размещайте геттеры и сеттеры в порядке следования полей, к которым они относятся
неправильно:
правильно:
17) Если геттеры (сеттеры) не используются, то в классе их можно не писать
18) Приватные методы размещайте в конце класса по мере их вызова из публичных методов. Располагать приватные методы среди публичных допускается только в случае, если они используются только в данном методе. В этом случае размещайте методы в классе тоже в порядке их вызовов. Код должен читаться сверху вниз, как текст в книге
неправильно:
правильно:
19) В начале и в конце класса не должно быть пустых строк
неправильно:
правильно:
20) Порядок объявления членов класса
2.7. Правила для массивов
1) При создании переменной для хранения ссылки на массив и самого массива, размещайте [] в Java-стиле, а не в Си или С++, а также не ставьте лишних пробелов
неправильно:
правильно:
2) Не используйте множественное число в имени сеттера и передаваемого в него аргумента для работы с массивом (если метод за один раз принимает одно значение, а не массив целиком)
неправильно:
правильно:
3) Используйте this в методах для работы с массивами только при конфликте имен. Если конфликта нет, писать this избыточно
неправильно:
правильно:
Заключение
В данной статье была представлена очень важная информация для начинающих программистов, которую многие недооценивают. А зря, т. к. форматирование кода можно сравнить с правилами правописания в литературе: любой текст, каким бы гениальным он не был, без должного оформления будет выглядеть небрежно и плохо читаемым. Так же качество и читабельность кода во многом зависят от его оформления.
Автор: Чимаев Максим
Друзья, если вам понравилась статья, и вы изучаете Java, то приглашаем вас на курс для начинающих с нуля StartJava. Под руководством ментора Максима вы сможете с самых азов освоить язык Java. Курс очень насыщенный и постоянно развивается. Более сотни положительных отзывов.
Контакты:
Вот бы в js ваниле навести порядок )
Может, кто-то возьмется за это непростое дело).