×
Ви дійсно бажаєте відкрити доступ до тестування за курсом Паттерни проектування у Java на 40 днів?
ВІДЕОУРОК № 20. Паттерн Observer
Розбір поняття «паттерн проектування» та розгляд історії виникнення такого явища у програмуванні як паттерн проектування. Розгляд моментів, у яких паттерни проектування допомагають вирішити проблеми, що часто виникають перед розробниками, а також розгляд моментів недоречного використання паттернів проектування, що призводить до зворотного ефекту. Розгляд поняття «антипаттерну», як явища, що виникло внаслідок оман розробників та регулярного недоречного застосування паттернів проектування.
Визначення такого паттерну проектування, як Builder. Розгляд варіанти його виникнення та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розбір переваг та недоліків цього паттерну проектування. Розгляд структури паттерну проектування Builder та визначення зв'язків та взаємодії між об'єктами. Розбір невеликої програми, в якій реалізовано паттерн Builder, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна BuilderІ насамкінець, розгляд варіантів взаємовідносин між паттерном Builder та іншими паттернами проектування, а також відмінностей між паттерном Builder та схожими паттернами проектування.
Визначення такого паттерну проектування, як Factory Method та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Factory Method та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Factory Method та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізований паттерн Factory Method, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна Factory Method. І наприкінці розгляд варіантів взаємовідносин між паттерном Factory Method та іншими паттернами проектування, а також відмінностей між паттерном Factory Method та схожими паттернами проектування.
Визначення такого паттерну проектування, як Abstract Factory та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Abstract Factory та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Abstract Factory та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Abstract Factory, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких ґрунтується на використанні паттерну Abstract Factory. І насамкінець, розгляд варіантів взаємин між паттерном Abstract Factory та іншими паттернами проектування, а також відмінностей між паттерном Abstract Factory та схожими паттернами проектування.
Визначення такого паттерну проектування, як Prototype та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерна проектування Prototype та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Prototype та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізований паттерн Prototype, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких заснована на використанні паттерна Prototype. І наприкінці, розгляд варіантів взаємовідносин між паттерном Prototype та іншими паттернами проектування, а також відмінностей між паттерном Prototype та схожими паттернами проектування.
Визначення такого паттерну проектування, як Singleton та розгляд варіанта його виникнення та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Singleton та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування патерну Singleton та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізований паттерн Singleton, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких ґрунтується на використанні паттерну Singleton. І наприкінці, розгляд варіантів взаємовідносин між паттерном Prototype та іншими паттернами проектування, а також відмінностей між паттерном Singleton та схожими паттернами проектування.
Визначення такого паттерна проектування, як Adapter та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Adapter та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Adapter та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Adapter, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна Adapter. І наприкінці розгляд варіантів взаємовідносин між паттерном Singleton та іншими патернами проектування, а також відмінностей між паттерном Singleton та схожими паттернами проектування.
Визначення такого паттерну проектування, як Bridge та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Bridge та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Bridge та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Bridge, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких ґрунтується на використанні паттерну Bridge. І наприкінці, розгляд варіантів взаємовідносин між паттерном Bridge та іншими паттернами проектування, а також відмінностей між паттерном Bridge та схожими паттернами проектування.
Визначення такого паттерну проектування, як Composite та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Composite та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Composite та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Composite, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерну Composite. І в кінці.
Визначення такого паттерна проектування, як Decorator та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерна проектування Decorator та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерна Decorator та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього патерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Decorator, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна DecoratorІ наприкінці, розгляд варіантів взаємовідносин між паттерном Composite та іншими паттернами проектування, а також відмінностей між паттерном Composite та схожими паттернами проектування.
Визначення такого паттерну проектування, як Facade та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Facade та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Facade та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Facade, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерну Facade. І насамкінець, розгляд варіантів взаємовідносин між паттерном Facade та іншими паттернами проектування, а також відмінностей між паттерном Facade та схожими паттернами проектування.
Визначення такого паттерну проектування, як Flyweight та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Flyweight та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування патерну Flyweight та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізований паттерн Flyweight, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких ґрунтується на використанні паттерну Flyweight. І наприкінці розгляд варіантів взаємин між паттерном Flyweight та іншими паттернами проектування, а також відмінностей між паттерном Flyweight та схожими паттернами проектування.
Визначення такого паттерну проектування, як Proxy та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Proxy та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Proxy та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Proxy, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких заснована на використанні паттерну Proxy. І насамкінець, розгляд варіантів взаємовідносин між паттерном Proxy та іншими паттернами проектування, а також відмінностей між паттерном Proxy та схожими паттернами проектування.
Визначення такого паттерну проектування, як Chain of Responsibility та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Chain of Responsibility та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Chain of Responsibility та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Chain of Responsibility, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких ґрунтується на використанні паттерну Chain of Responsibility. І насамкінець, розгляд варіантів взаємовідносин між паттерном Chain of Responsibility та іншими паттернами проектування, а також відмінностей між паттерном Chain of Responsibility та схожими паттернами проектування.
Визначення такого паттерну проектування, як Command та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерна проектування Command та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Command та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Command, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна Command. І наприкінці, розгляд варіантів взаємовідносин між паттерном Command та іншими паттернами проектування, а також відмінностей між паттерном Command та схожими паттернами проектування.
Визначення такого паттерна проектування, як Interpreter та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Interpreter та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Interpreter та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Interpreter, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна Interpreter. І насамкінець, розгляд варіантів взаємовідносин між паттерном Interpreter та іншими паттернами проектування, а також відмінностей між паттерном Proxy та схожими паттернами проектування.
Визначення такого паттерну проектування, як Iterator та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерна проектування Iterator та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Iterator та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Iterator, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна Iterator. І насамкінець, розгляд варіантів взаємовідносин між паттерном Iterator та іншими паттернами проектування, а також відмінностей між паттерном Proxy та схожими паттернами проектування.
Визначення такого паттерну проектування, як Mediator та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Mediator та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Mediator та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізований паттерн Mediator, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна Mediator. І насамкінець, розгляд варіантів взаємовідносин між паттерном Proxy та іншими паттернами проектування, а також відмінностей між паттерном Mediator та схожими паттернами проектування.
Визначення такого паттерну проектування, як Memento та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерна проектування Memento та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерна Memento та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Memento, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна Memento. І насамкінець, розгляд варіантів взаємовідносин між паттерном Proxy та іншими паттернами проектування, а також відмінностей між паттерном Memento та схожими паттернами проектування.
Визначення такого паттерну проектування, як Observer та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерна проектування Observer та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Observer та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізований паттерн Observer, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких ґрунтується на використанні паттерну Observer. І насамкінець, розгляд варіантів взаємовідносин між паттерном Proxy та іншими паттернами проектування, а також відмінностей між паттерном Observer та схожими паттернами проектування.
Визначення такого паттерну проектування, як State та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці додатка з можливим прикладом із життя. Розгляд структури паттерну проектування State та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну State та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбирає невелику програму, в якій реалізовано паттерн State, а також перевірку роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна State. І насамкінець, розгляд варіантів взаємовідносин між паттерном Proxy та іншими паттернами проектування, а також відмінностей між паттерном State та схожими паттернами проектування.
Визначення такого паттерну проектування, як Strategy та розгляд варіанта його виникнення та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Strategy та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Strategy та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізовано паттерн Strategy, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких ґрунтується на використанні патттерну Strategy. І насамкінець, розгляд варіантів взаємовідносин між паттерном Proxy та іншими паттернами проектування, а також відмінностей між паттерном Strategy та схожими паттернами проектування.
Визначення такого паттерна проектування, як Template Method та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Template Method та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Template Method та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього паттерну проектування. Розбір невеликої програми, в якій реалізований паттерн Template Method, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерна Template Method. І насамкінець, розгляд варіантів взаємовідносин між паттерном Template Method та іншими паттернами проектування, а також відмінностей між паттерном Proxy та схожими паттернами проектування.
Визначення такого паттерну проектування, як Visitor та розгляд варіанта його виникнення, та застосування в умовній ситуації при розробці програми з можливим прикладом із життя. Розгляд структури паттерну проектування Visitor та визначення зв'язків та взаємодії між об'єктами. Розгляд областей застосування паттерну Visitor та проблем проектування, які він здатний вирішити. Розбір переваг та недоліків цього патерну проектування. Розбір невеликої програми, в якій реалізовано, а також перевірка роботи цієї програми та розбір результатів її виконання. Перелік бібліотек Java, бізнес логіка яких полягає в використанні паттерну Visitor. І насамкінець, розгляд варіантів взаємовідносин між паттерном Visitor та іншими паттернами проектування, а також відмінностей між паттерном Proxy та схожими паттернами проектування.