На этом уровне мы познакомились с работой с потоками данных в памяти (ByteArrayInputStream, ByteArrayOutputStream) и паттерном Chain of responsibility/

Предлагаю обзорно посмотреть какие еще бывают паттерны:

Паттерны проектирования в Java [Часть 1]

Паттерны проектирования в Java [Часть 2]