Всем добрый день, собственно есть задача. Прочитать файл с определенными словами.
table
flat
building
Далее эти слова должны обрабатываться в другом классе. И после этого записываться в другой файл.
При этом если нет входного файла, то в выходной файл запись уведомление об ошибке.
Как вообще это красиво и правильно организовать. Делал изначально в одном методе и чтение и запись, но как отдельно обработать ошибку по одному и второму файлу.
Получается в методе read я читаю файл построчно и там же вызываю метод write?
Это почти асинхронная обработка данных. Один класс (назовем его драйвер) получает данные из внешнего источника, передает их второму (назовем его обработчик), который эти данные обрабатывает, затем драйвер получает ответ от обработчика с новыми данными и записывает их в файл.
Если делать просто, это будет два объекта в сильной зависимости друг от друга. Вы создаете оба этих объекта, передаете драйверу ссылку на обработчика, обработчику ссылку на драйвер и поехали:
драйвер.readData(). обработчик.handl(data), передавая ему полученные данные. Или у себя метод write(error), если с чтением пошло что-то не так. handl(data), и когда все готово вызывает у драйвера метод записи, передавая ему новые данные данные драйвер.write(newData). Написав эти четыре метода вы получите весь функционал. Это не очень красивое и правильное, но самое простое решение.
В идеале объекты должны мало что знать друг о друге и выполнять только свою работу, возможно в разных потоках. Но это потребует немного другого более сложного подхода.
Как развивать веб-проекты в 2026 году: технологии, контент E-E-A-T и факторы доверия
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники