В стартапе «ФайлоСмехоТрон», возникла потребность в создании консольного нового файлового менеджера. Команда разработчиков выделила три ключевых модуля: работа с консолью, обработка команд и взаимодействие с файловой системой.
Вам бы очень хотелось получить позицию в этой компании. Задачу передали вам в качестве тестового задания.
Создание консольного файлового менеджера.
<aside> 1️⃣ Проработка архитектуры приложения
</aside>
Для полноценной работы приложения необходимы:
Необходимо создать эти классы, расположить их в соответствующих пакетах.
💡 К примеру, класс работы с консолью может называться Console, а класс работы файловой системой может называться
FileSystemService
.
Пример предполагаемой работы приложения отражен на диаграмме ниже, однако, вы можете обоснованно выбрать свой вариант архитектуры.
P.S.
ComandExecutor
необходим для определения того, какой методFileSystemService
вызывать при определённой команде. Существует он для того, чтобы ответственность за это не перекладывать на Console.
https://lh7-us.googleusercontent.com/E5vEHHWafca8BMEgzTgrOQgsoMGjV1-KJd2tKFoHUmEQhBhz7IAjAL4sUejdol1IbRJzD7l24DSyTv1B0FaA7YPHKPNxCTIaCs2jOLVhdIaUQOsEl2c28QYLXA7424lKx6Hpc5fnywEhRRh2v3GhOtg
<aside> 2️⃣ Разработка полнофункционального модуля по работе с консолью
</aside>