Skip to content

Пакет io: цепочка reader’ов

В стандартной библиотеке уже реализовано много программ чтения. Распространенной идиомой является использование reader’а в качестве источника другого reader’a. Эта цепочка reader’ов позволяет одному reader’у повторно использовать логику другого, как это сделано в следующем исходном фрагменте, который обновляет элемент alphaReader, чтобы принять его в io.Reader качестве источника. Это снижает сложность кода, перекладывая задачи управления потоком на корневого reader’а.

Пришло время поработать с кодом!

Еще одним преимуществом этого подхода является то, что alphaReader теперь возможно чтение из любой реализации reader’а. Например, следующий фрагмент кода показывает, как alphaReader можно объединить с os.File источником для фильтрации неалфавитных символов из файла.

Пришло время поработать с кодом!