ProgrammingMethods
CompositMusicFiles: Визначити класи для представлення ієрархічно організованої інформації та її складових елементів з відповідною інформацією, специфічною для кожного рівня (наприклад, колекція музичних файлів, згрупованих за жанрами-виконавцями-альбомами). Реалізувати механізм клонування таких об'єктів з параметром глибини (глибина обмежена).
Decorator1: Визначити класи для представлення елементів та для динамічної зміни відображення елементу (приведення до верхнього регістру, підкреслення, додавання в кінці символу нової строки тощо) в текстовому редакторі. Продемонструвати динамічну зміну представлення елементу з використанням декількох додаткових ефектів.
State1: Визначити клас для представлення мережевого з'єднання за протоколом TCP. Реалізувати зміну поведінки в залежності від стану з'єднання (LISTENING, ESTABLISHED, CLOSED) без використання громіздких умовних операторів.