Skip to content

Готов к критике, уже совсем запутался. Буду рад если подскажите куда …#1

Open
MaxMaceman wants to merge 2 commits intomainfrom
dev
Open

Готов к критике, уже совсем запутался. Буду рад если подскажите куда …#1
MaxMaceman wants to merge 2 commits intomainfrom
dev

Conversation

@MaxMaceman
Copy link
Copy Markdown
Owner

Готов к критике, уже совсем запутался. Буду рад если подскажите куда смотреть.

Comment thread src/main/kotlin/ArchiveMenu.kt Outdated
fun showMenu() {
while (true) {
println("\nАрхив: ${archive.name}")
println("0. Создать заметку")
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Может быть имеет смысл во всех местах начинать счёт с "1", а не "0"? Понятно что в программировании "0" является точкой отсчёта в списках и т.п., но программа в первую очередь для людей и привычнее информация воспринимается когда 1 это 1

Comment thread src/main/kotlin/ArchiveMenu.kt Outdated

val choice = notesApp.readInput("Выберите действие: ")

when {
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Этот весь блок с when в целом можно сделать чуть компактнее и понятнее, если мы choice добавим в условие when, например

when (choice) {
                null -> println("Ошибка: Вы должны ввести число.\n")
                0 -> notesApp.createArchive()
                in 1..notesApp.archives.size -> {
                    val selectedArchive = notesApp.archives[choice - 1]
                    ArchiveMenu(notesApp, selectedArchive).showMenu()
                }
                notesApp.archives.size + 1 -> notesApp.exit()
                else -> println("Ошибка: Выбраный пункт отсутсвует.\n")
            }

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

Comment thread src/main/kotlin/MainMenu.kt Outdated
printMenu()
val choice = notesApp.readInput("Выберите действие: ")

when {
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Тут с when аналогично тому, что написал выше

Comment thread src/main/kotlin/NotesApp.kt Outdated
println(note.content)
println("1. Вернуться")
val choice = readInput("Введите 1, чтобы вернуться: ")
if (choice == 1) return
Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Такую запись лучше сделать либо в 1 строку
if (choice == 1) return else println("Ошибка: Выбраный пункт отсутствует.\n")
либо полная запись с block body

if (choice == 1) {
            return
        } else {
            println("Ошибка: Выбраный пункт отсутствует.\n")
        }

Общее правило такое, что если мы не можем записать в 1 строку, то используем полную запись

Comment thread src/main/kotlin/ViewNoteMenu.kt Outdated
@@ -0,0 +1,129 @@
import java.util.Scanner
Copy link
Copy Markdown

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