Мы продолжаем знакомство с самым популярным и востребованным шаблоном проектирования: "Итератор". На этом уроке мы объединим два класса в один.
Дата отправки отчёта:
11 марта 2017 г.
Задание выполнено: за
20 мин.
Чему научился:
составил UML схему шаблона
Что было сложным:
Рассмотрим пример. Если вы хотите одновременно поддерживать четыре вида структур данных (массив, бинарное дерево, связанный список и хэш-таблица) и три алгоритма (сортировка, поиск и слияние), то традиционный подход потребует 12 вариантов конфигураций (четыре раза по три), в то время как данный шаблон требует лишь 7 (четыре плюс три).- не совсем понял сего изречения про данный шаблон
Комментарии:
составил UML схему шаблона для лучшего понимания сути, суть шаблона в обходе коллекции у которой инкапсулированы элементы. поэтому у нас иннер класс.Хотя все равно не совсем понятен простор для творчества с этим шаблоном.
Четыре итератора на перебор по структурам. И в каждом алгоритме можно просто использовать итератор, вне зависимости от того, в каком виде на самом деле хранятся записи.
Научился: при перемещении класса из отдельного файла внутрь другого класса не забывай удалить из сигнатуры перемещаемого класса модификатор доступа паблик - внутри класса он уже не нужен
Класс с модификатором доступа паблик в отдельном файле и класс внутри класса использующего это класс эквивалентны по доступности Трудности: Видеть снег и слякоть за окном наступающих сумерек в без малого четыре часа дня...
Научился: Объединить весь итератор в один* класс Теперь 2 минуты на урок?? С другой стороны, тут я даже настроится не успел, так что даже меньше дискомфорта, чем уроки по 5 минут =)