Читати книгу - "Занурення в патерни проектування, Олександр Швець"
Шрифт:
Інтервал:
Додати в закладку:
Клієнт створюватиме об’єкти відвідувачів, а потім передаватиме їх елементам через метод прийняття.
Переваги та недоліки Спрощує додавання операцій, працюючих зі складними структурами об’єктів. Об’єднує споріднені операції в одному класі. Відвідувач може накопичувати стан при обході структури елементів. Патерн невиправданий, якщо ієрархія елементів часто змінюється. Може призвести до порушення інкапсуляції елементів. Відносини з іншими патернамиВідвідувач можна розглядати як розширений аналог Команди, що здатен працювати відразу з декількома видами одержувачів.
Ви можете виконати якусь дію над усім деревом Компонувальника за допомогою Відвідувача.
Відвідувач можна використовувати спільно з Ітератором. Ітератор відповідатиме за обхід структури даних, а Відвідувач — за виконання дій над кожним її компонентом.
Вітаю! Ви дісталися закінчення!Але у світі існує безліч інших патернів. Сподіваюся, ця книга стане вашою точкою старту в подальшому оволодінні патернами та розвитку надзвичайних здібностей у проектуванні програм.
Ось декілька ідей для наступних кроків, якщо ви ще не визначилися з тим, що робитимете далі:
Не забувайте, що разом з цією книгою поставляється архів з реальними прикладами коду різними мовами програмування.
Прочитайте книгу Джошуа Керієвські Рефакторинг з використанням патернів проектування.
Не розбираєтесь у рефакторингу? У мене є хороші матеріали для вас на Refactoring.Guru.
Роздрукуйте шпаргалки по патернах та прикріпіть їх десь на видному місці.
Залиште відгук про цю книгу. Мені було б дуже цікаво почути вашу думку, навіть якщо це критика
#112915 1. Занурення в Патерни:https://refactoring.guru/uk/design-patterns/book 2. Занурення в Рефакторинг:
https://refactoring.guru/uk/refactoring/course 3. A Pattern Language: Towns, Buildings, Construction: https://refactoring.guru/uk/pattern-language-book 4. Design Patterns: Elements of Reusable Object-Oriented Software: https://refactoring.guru/uk/gof-book 5. Erich Gamma on Flexibility and Reuse: https://refactoring.guru/gamma-interview 6. Agile Software Development, Principles, Patterns, and Practices: https://refactoring.guru/uk/principles-book 7.
Принцип названо на честь Барбари Лісков, котра вперше сформулювала його у 1987 році у роботі Data abstraction and hierarchy: https://refactoring.guru/liskov/dah
8. Gang of Four / «Банда чотирьох». Автори книги Design Patterns: Elements of Reusable Object-Oriented Software https://refactoring.guru/uk/gof-book. 9. Композиція — це більш суворий варіант агрегації, при якому компоненти не можуть існувати без контейнера. 10. Назва прийшла з боксу і означає вагову категорію до 50 кг. 11. Скінченний автомат: https://refactoring.guru/uk/fsmУвага!
Сайт зберігає кукі вашого браузера. Ви зможете в будь-який момент зробити закладку та продовжити читання книги «Занурення в патерни проектування, Олександр Швець», після закриття браузера.