Приложение выполнено в стиле ООП с использованием модели MVP.
- file_handler - отвечает за работу с файловой системой
- note - отвечает за работу с объектом Note (заметка), описывает поля класса, основные get и set функции
- note_book - отвечает за работу с листом из объектов Note и описывает основные функции для работы с листом
- service - является фасадом пакета model и отвечает за объединение работы всех модулей пакета model
- presenter - является промежуточным звеном между пакетами model и view
- view.commands - в пакете собраны модули, которые отвечают за хранение информации об определенной команде и настройку ее базового функционала. Все классы модулей унаследованы от класса Command, модуля command
- console_ui - модуль отвечает за взаимодействие с пользователем по средствам консоли. Предполагается использование мягкой связи, в более сложном варианте данного приложения
- main_menu - модуль отвечает за хранение команд и передачи их визуального отражения