Рубрики
Без рубрики

Контрольный список проверки кода для начинающих Java

Контрольные списки всегда полезны! Они обеспечивают быструю проверку для обеспечения согласованности и полноты в c… С пометкой java, новички, производительность, качество кода.

Анализ кода и качество (Серия из 2 частей)

Контрольные списки всегда полезны! Они обеспечивают быструю проверку для обеспечения согласованности и полноты при эффективном и результативном выполнении задачи.

Здесь я объединил базовый контрольный список из 20 пунктов для начинающих Java для ознакомления с кодом. Это поможет им обеспечить качество и согласованность кода.

Без лишних слов… Давайте пройдем через это…

1. Нулевые проверки

Мы знаем Исключение NullPointerException является наиболее распространенным исключением в Java и может вызвать большие проблемы.

Поэтому, как правило, всегда выполняйте нулевую проверку переменной перед любой операцией.

2. Обработка исключений

Блок try-catch следует использовать для обработки исключений с надлежащей регистрацией в блоке catch .

Кроме того, убедитесь, что ресурсы правильно закрыты в блоке finally .

3. Отступы и форматирование кода

Для более чистого и читаемого кода тщательно используйте отступы кода (с помощью табуляции или пробелов чего угодно).

Это можно сделать автоматически с помощью встроенного редактора IDE. Например, используйте Ctrl-Shift-F в Eclipse. Аналогично Ctrl-Alt-L в IntelliJ.

Используйте правила форматирования Java!

4. Оптимизировать импорт

Всегда оптимизируйте импорт в классе Java.

5. Инструменты статического анализа Кода

Используйте статические инструменты проверки кода, такие как Sonar, PMD и FindBugs, для проверки кода.

6. Константы

  • Создайте постоянный файл для статических значений, которые необходимы в нескольких местах

  • Используйте значения, управляемые базой данных, для динамических значений

  • Используйте перечисления для группы констант

7. Соглашения об именовании

  • Всегда проверяйте, действительно ли имя переменной/метода/класса охватывает предмет

  • Имена пакетов должны быть во всех строчных регистрах, которые начинаются с перевернутого имени интернет-домена, за которым следует имя приложения. Например, организация/название компании/имя приложения

  • Названия классов должны начинаться с заглавных букв. Например, Животное , Работник и Пользователь

  • Имена переменных/методов должны быть в camelCase. Например список экземпляров животных , рассчитать Сумму , и

  • Вывод суммы() Старайтесь избегать сокращений в именах классов/методов/переменных. Предпочитаю код домена более

8. Не Все Однолинейные

Хорошо, чтобы код был чистым и читабельным. Так что лучше не всегда придерживаться однолинейности. Особенно, когда мы инициализируем и управляем переменной в одной строке.

Например, напишите:

out.write(attrs.get("offset") + "-" + Math.min(attrs.get("count"), attrs.get("offset") + attrs.get("max")) + " " + title + " " + attrs.get("count"));

как:

int start = attrs.get("offset")
int total = attrs.get("count"))
int end = Math.min(total, start + attrs.get("max"))
out.write(start + "-" + end + " " + title + " " + total)

9. Пробелы

Используйте пробелы для разделения объединенных операторов, чтобы сделать код более читабельным.

Например, напишите:

Integer.valueOf(params.offset?params.offset:attrs.offset)

как:

Integer.valueOf(params.offset ? params.offset : attrs.offset)

10. Пробелы Перед и после скобок

Как правило, мы не используем пробелы в скобках.

Например, напишите:

if ( params )
if ( total > 0 )
if ( end < begin )

как:

if (params)
if (total > 0)
if (end < begin)

11. Фигурные скобки

Используйте фигурные скобки также для однострочных символов.

Например, напишите:

if ( end < begin )
    end = begin

как:

if (end < begin) {
    end = begin
}

12. Комментарии

Всегда ставьте комментарии (если таковые имеются), определяющие цель.

Например, Javadoc в классе:

/**
 * General convenience tags for layout - header, body and footer
 * @author – Name
 * @dateCreated - Date
 */
class LayoutTagLib {
}

Javadoc о методе:

/**
 * Gets the user for specified code and role.
 * @param code :- The code, either username or email address
 * @param role :- The role identification e.g. A, B or C. Default is A.
 * @return the user or null if not found
 */
User findUser(String code, String role = "A")

Убедитесь, что код понятен, а комментарии действительно полезны в очень специфических случаях.

13. убирать

  • Удалите инструкции печати консоли (SOP), вместо этого используйте ведение журнала (никогда не регистрируйте личную информацию)

  • Удалить устаревшие комментарии

  • Используйте @устаревший аннотация к методу/переменной, если он не предназначен для использования в будущем или будет удален

  • Удалить жестко закодированные значения переменных

14. Бизнес-логика

Избегайте избыточного кода, используя повторно используемые компоненты, такие как утилиты и методы обслуживания.

15. Строковый конструктор или строковый буфер вместо строки

При выполнении большого количества операций над строкой используйте StringBuilder или StringBuffer

Например, Java создает новый объект String для каждой операции объединения. В этом случае лучше использовать Строковый буфер .

16. переключите регистр Поверх Нескольких if-else

Хорошей практикой является использование switch-case вместо нескольких условий if-else .

Это оптимизирует выполнение кода, а также делает код более чистым и читабельным.

17. Создание объектов в цикле

Обычно лучше создавать объект внутри цикла (если объект не требуется вне цикла). Java оптимизирует использование памяти для недолговечных объектов.

Например, напишите:

Person person;
for (int i=0; i

как:

for (int i=0; i

Кроме того, создавайте новый объект только в случае необходимости.

Например, напишите:

ArrayList personList = new ArrayList();
for (int i=0; i

как:

ArrayList personList = new ArrayList();
for (int i=0; i

18. Фиксация кода

  • Сгруппируйте файлы и зафиксируйте их вместе (не фиксируйте файлы в отдельных фиксациях)

  • Не вводите код, содержащий фактический пароль. Обязательно используйте системную/конфигурационную переменную для замены пароля

  • Сообщения о фиксации должны содержать информацию о задаче. Например, номер проблемы JIRA, содержательный комментарий к реализации кода

  • Фиксация .class файлов (из сборки , из , целевые каталоги), только в случае необходимости

19. Использование равно более ==

равно выполняет фактическое сравнение двух строк, в то время как ссылки на объекты.

20. Будьте Проще!

Поддерживайте простоту и читаемость кода.

Пожалуйста, дайте мне знать ваши мысли по этому поводу. Спасибо за чтение.

Анализ кода и качество (Серия из 2 частей)

Оригинал: “https://dev.to/smartyansh/code-review-checklist-for-java-beginners-181f”