На этом уроке мы перенесём проверку аргументов командной строки в отдельную функцию. Попутно исправим некоторые недочёты и ошибки.
Обоснуйте своими словами, почему мы решили не создавать отдельный класс для проверки аргументов?
Дата отправки отчёта:
12 октября 2018 г.
Задание выполнено: за
33 мин.
Чему научился:
Не представляю как могут сработать несколько if'ов. Если в первом (args[0].equals("-scan") == true), то как он в тоже самое время может быть в другом if-стейтмент (args[0].equals("-file") == true)? По-этому оставил просто if без else. В случае использования фасада достаточно было 2 клика, что бы вынести проверку аргументов в отдельный метод. Не надо было c fr мучаться. Все было уже инкапсулировано. Удобно.
Научился: Парсинг аргументов выделять в отдельную функцию. И нашла такую интересную функцию как String.startsWith.
И еще маленькую ошибку нашла.
Создала GiftsReaderString(s), записала что сумка принимает машинки, а потом пересоздала GiftsReader и получилось, что сумка стала фрукты опять принимать. Ну и пришлось мне еще пару часов выделить на улучшение кода. Теперь я могу доложить предметы копированием из одной сумки в другую. Потом пробежалась по коду и добавила немного логов: close() вполне себе override, все отлично. А вот когда gre сумку успел создать Трудности: Заменить join на цикл for рука не поднялась. Наверно потому, что маленькому контроллеру между внешним источником данных и внутренним удобнее быть рядом с точкой входа в программу. Вот, если бы мы текст вводили на пол-страницы, то делегировали бы его разбор новому классу.