Курс обучения программированию на Java | Сайт проекта

< Курс обучения программированию на Java >

Вернуться к содержанию курса

Вернуться к описанию правил выполнения практических заданий

Типичные ошибки при выполнении практических работ

Общие рекомендации

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

Измерять продуктивность программирования подсчетом строк кода — это так же, как оценивать постройку самолета по его весу.
Bill Gates

Если вы решили задачу с использованием собственноручно придуманного сложного алгоритма, это хуже, чем если бы вы использовали общепринятый для решения подобных задач стандартный подход или алгоритм.

Всегда пишите код так, будто сопровождать его будет склонный к насилию психопат, который знает, где вы живете.
Martin Golding

Ваш код должен быть понятен проверяющему с первого взгляда. Должна быть сразу понятна его логика, его структура, предназначение переменных, классов и методов.
Попробуйте написать код и отложить его на 5 дней, если после этого вы сможете при открытии любой строчки кода сразу сказать, что именно в ней происходит - значит код хорошо организован с точки зрения архитектуры.

Лучшие программисты не чуть-чуть лучше хороших. Они на порядок лучше по любым меркам: концептуальное мышление, скорость, изобретательность и способность находить решения.
Randall E. Stross

Список частых ошибок по оформлению и структуре кода

if (...) {
    //...
} else {
    //...
}
// Вместо
boolean isActive = ...;
return isActive == true;

// Используйте
boolean isActive = ...;
return isActive;
// Вместо
if (...) doSomething();

// Используйте
if (...) {
    doSomething();
}
// Вместо
int result = weight + height;
return result;

// Используйте
return weight + height;
// Вместо
if (result != null) {
    if (result == 5) {
        return true;
    } else {
        return false;
    }
} else {
    return false;
}

// Используйте
if (result == null) {
    return false;
}

if (result == 5) {
    return true;
}
return false;

// Идеально
return result == 5;
// Вместо
public List<User> getUserByName(String name) {
    // не нашли пользователей с данным именем
    return null;
}

// Используйте
public List<User> getUserByName(String name) {
    // не нашли пользователей с данным именем
    return Collections.emptyList() 
    // Либо return new ArrayList<User>();
}
// Вместо
List<Users> users = getUserByName("Petr");
for (int i = 0; i < users.size(); i++) {
    System.out.println(users.get(i));
}

// Используйте
for (User user : users)
    System.out.println(user);
}

// Идеально
users.foreach(System.out::println);

Я сделал всё задание в одной ветке, как мне теперь кинуть pull request?

Для работы с git тут используется GitKraken

Для начала запуште всё что вы сделали в вашей ветке. Затем сделайте checkout на самый первый комит который вы сделали в вашей ветке

learn

Далее создайте ветку от этого комита и запуште её

learn

Ну и в конце создайте pull request из основной ветки в ветку которую вы только что создали.

learn