Библиотека knigago >> Компьютеры и Интернет >> Учебники и самоучители по компьютеру >> Ruby. Объектно-ориентированное проектирование


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 1814, книга: Плетение
автор: Николай (Волтор) Волков

"Плетение" - это захватывающий и интригующий фэнтези-роман, который погружает читателя в мир, где магия находит воплощение в нитях и тканях. Главная героиня книги, Саша, обладает уникальным даром - она может плести нити, которые обладают магической силой. Когда ее деревню атакуют темные силы, Саше приходится вступить на путь опасного приключения, чтобы спасти свой дом и родных. По мере того, как Саша углубляется в мир магии, она открывает для себя различные аспекты плетения. Она...

СЛУЧАЙНАЯ КНИГА

Дубль. Елена Артье
- Дубль

Жанр: Современные любовные романы

Год издания: 2022

Серия: Марс и Ко

Сэнди Метц - Ruby. Объектно-ориентированное проектирование

Ruby. Объектно-ориентированное проектирование
Книга - Ruby. Объектно-ориентированное проектирование.  Сэнди Метц  - прочитать полностью в библиотеке КнигаГо
Название:
Ruby. Объектно-ориентированное проектирование
Сэнди Метц

Жанр:

Учебники и самоучители по компьютеру, Современные российские издания, Литература ХXI века (эпоха Глобализации экономики), Объектно-ориентированное программирование, Ruby

Изадано в серии:

неизвестно

Издательство:

Питер

Год издания:

ISBN:

978-5-496-02437-2

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Ruby. Объектно-ориентированное проектирование"

Мировой бестселлер по программированию на языке Ruby. Книга уже стала классической — с ювелирной точностью она описывает огранку профессионального кода на Ruby. Внимательно изучив это незаменимое руководство, вы сможете: • Понять, как писать на Ruby качественный код в духе ООП • Решать, что должно входить в состав класса Ruby • Не допускать тесной связи между объектами в тех случаях, когда требуется разграничить функциональность • Определять гибкие интерфейсы между объектами • Освоить утиную типизацию • Эффективно задействовать наследование, композицию и полиморфизм • Разрабатывать экономные тесты • Доводить до совершенства любой legacy-код Ruby

Читаем онлайн "Ruby. Объектно-ориентированное проектирование". [Страница - 2]

39

Оглавление     7
Глава 2. Проектирование классов с единственной обязанностью........................... 41
Что должно принадлежать классу............................................................................ 42
Группировка методов в классы.......................................................................... 42
Организация кода для легкого внесения изменений......................................... 42
Создание классов с единственной обязанностью................................................... 43
Почему именно единственная обязанность............................................................. 48
Определение наличия у класса единственной обязанности.............................. 49
Когда следует принимать проектировочные решения....................................... 50
Создание кода, легко принимающего изменения.................................................... 52
Полагайтесь на поведение, а не на данные........................................................ 52
Повсеместное внедрение единственной обязанности...................................... 57
И наконец, реальное колесо.............................................................................. 61
Выводы................................................................................................................... 63
Глава 3. Управление зависимостями...................................................................... 64
Основные сведения о зависимостях........................................................................ 65
Выявление зависимостей................................................................................. 66
Связи между объектами — Coupling Between Objects (CBO).............................. 67
Другие зависимости......................................................................................... 68
Создание кода со слабой связью............................................................................ 69
Внедренные зависимости................................................................................. 69
Изоляция зависимостей.................................................................................... 72
Устранение зависимостей от порядка следования аргументов.......................... 76
Управление направлением зависимостей............................................................... 83
Разворот в обратном направлении.................................................................... 83
Выбор направления.......................................................................................... 84
Определение конкретности и абстрактности..................................................... 85
Выводы................................................................................................................... 89
Глава 4. Создание гибких интерфейсов.................................................................. 90
Основные сведения об интерфейсах....................................................................... 91
Определение интерфейсов..................................................................................... 93
Открытые интерфейсы...................................................................................... 94
Закрытые интерфейсы...................................................................................... 94
Обязанности, зависимости и интерфейсы........................................................ 94
Поиск открытого интерфейса.................................................................................. 95
Пример приложения: компания, занимающаяся велотуризмом........................ 95
Формирование намерения................................................................................ 96

8

Оглавление
Диаграммы последовательности...................................................................... 97
Нужно не говорить «как», а спрашивать «что»...................................................102
Поиск контекста независимости......................................................................105
Доверие, оказываемое другим объектам.........................................................108
Сообщения для обнаружения потребности в новых объектах...........................109
Создание приложения, основанного на сообщениях........................................112

Написание кода с отличным интерфейсом.............................................................112
Создавайте четко выраженные интерфейсы....................................................113
Уважайте чужие открытые интерфейсы............................................................115
Будьте осмотрительны при наличии зависимости
от закрытых интерфейсов.................................................................................116
Минимизация контекста...................................................................................116
Закон Деметры......................................................................................................117
Определение закона........................................................................................117
Последствия нарушений..................................................................................117
Как обойтись без нарушений............................................................................119
Прислушиваясь к закону Деметры....................................................................120
Выводы..................................................................................................................121
Глава 5. Снижение затрат за счет неявной типизации...........................................122
Основные сведения о неявной типизации..............................................................123
Упущение из виду возможностей применения неявной типизации...................124
Усугубление проблемы....................................................................................125
Скрытые возможности неявной --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.