Skip to content

Conversation

@nikopolo
Copy link

Версия 1. "Консольное приложение"

} else {
System.out.println("Ошибка. Введите число.");
scanner.next();
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Лучше выносить большие блоки в отдельные методы или классы. Например, для обработки ввода количества людей создать метод void calcuLatePersons (или даже вынести логику в отдельный класс), в котором будет цикл и вся логика обработки ввода. то же касается метода по обработке ввода товаров и их стоимости. Это позволяет делать код более читабельным и аккуратным.
Вообще на тему того, как лучше организовать написание кода, могу посоветовать книгу Роберта Мартина "Чистый Код" .

while (true) {
if (scanner.hasNextInt()) {
numberOfPeople = scanner.nextInt();
if (numberOfPeople > 1) {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Лучше по возможности избегать большой вложенности if'ов, это затрудняет понимание логики программы. Впрочем, иногда бывают случаи, когда с вложенными ифами лучше, чем без них

calculator.setProducts(product);
calculator.setTotalPrice(price);
System.out.println("Товар успешно добавлен.");
System.out.println("Добавить ещё один товар?");

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Чтобы не писать лишний код можно объединять два println в один

@@ -0,0 +1,78 @@
import java.util.Scanner;

public class Assistant {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants