Ruby. Объектно-ориентированное проектирование [Сэнди Метц] (pdf) читать постранично, страница - 3
Книга в формате pdf! Изображения и текст могут не отображаться!
[Настройки текста] [Cбросить фильтры]
- 1
- 2
- 3
- 4
- 5
- . . .
- последняя (70) »
Как определить, где требуется наследование........................................................147
Начнем с конкретного класса...........................................................................147
Встраивание нескольких типов........................................................................149
Поиск встраиваемых типов..............................................................................152
Выбор наследования........................................................................................153
Прорисовка наследственных связей................................................................155
Ошибочное применение наследования..................................................................156
Поиск абстракции..................................................................................................158
Создание абстрактного родительского класса.................................................159
Перемещение вверх абстрактного поведения..................................................163
Отделение абстрактного от конкретного..........................................................166
Использование схемы шаблонного метода......................................................168
Реализация каждого шаблонного метода.........................................................170
Управление связанностью родительских классов и подклассов.............................172
Общие сведения о связанности.......................................................................173
Устранение связанности подклассов с использованием хук-сообщений..........177
Выводы..................................................................................................................182
Глава 7. Разделение ролевого поведения с помощью модулей.............................184
Основные сведения о ролях...................................................................................185
Поиск ролей.....................................................................................................185
Организация обязанностей..............................................................................187
Устранение ненужных зависимостей................................................................190
Выявление неявного типа, подходящего для планирования.............................190
Нужно позволить объектам говорить самим за себя.........................................191
Написание конкретного кода..................................................................................192
Извлечение абстракции.........................................................................................195
Поиск методов.......................................................................................................199
Грубое упрощение...........................................................................................199
Уточненное объяснение...................................................................................201
Почти полное объяснение................................................................................203
Наследование ролевого поведения..................................................................205
Написание наследуемого кода...............................................................................205
Выявление антишаблонов................................................................................205
10
Оглавление
Принуждение к абстракции..............................................................................206
Соблюдение контракта.....................................................................................207
Использование схемы шаблонного метода......................................................208
Превентивное отделение классов....................................................................208
Создание неглубоких иерархий........................................................................208
Выводы..................................................................................................................210
Глава 8. Объединение объектов путем составления композиции..........................211
Составление композиции Bicycle (велосипед) из Parts (частей).............................212
Обновление класса Bicycle...............................................................................212
Создание иерархии Parts.................................................................................214
Составление композиции для объекта Parts...........................................................217
Создание Part..................................................................................................217
Придание объекту Parts большей схожести с массивом...................................221
Изготовление Parts-объектов.................................................................................225
Создание модуля PartsFactory..........................................................................226
Применение PartsFactory.................................................................................228
Bicycle в виде композиции......................................................................................230
Выбор между наследованием и композицией........................................................234
Приемлемость наследования...........................................................................234
Приемлемость композиции..............................................................................237
Выбор характера отношений............................................................................239
Выводы..................................................................................................................242
Глава 9. Проектирование экономически эффективных тестов...............................243
Целенаправленное тестирование...........................................................................244
Осознание намерений......................................................................................245
Выявление предмета тестирования.................................................................247
Умение определять нужный момент для тестирования.....................................251
Умение проводить тестирование......................................................................253
Тестирование входящих сообщений.......................................................................255
Удаление неиспользуемых интерфейсов..........................................................257
Проверка открытого интерфейса.....................................................................258
Изоляция тестируемого объекта......................................................................260
Внедрение зависимостей с использованием
- 1
- 2
- 3
- 4
- 5
- . . .
- последняя (70) »
Последние комментарии
11 часов 34 минут назад
17 часов 56 минут назад
18 часов 4 минут назад
18 часов 32 минут назад
18 часов 36 минут назад
18 часов 37 минут назад