SlideShare a Scribd company logo
Design Patterns in
Automation
About
QA since 2019
From manual QA to automation QA
Athlete with 12 years of experience
Agenda
1. Що таке патерн
2. Навіщо знати патерни
3. Класифікація патернів
4. Огляд патернів
Що таке
Патерн?
Патерн проектування - це типовий спосіб
вирішення проблем при проектуванні
програм. Він не може бути просто
скопійований в програму, як готові функції
або бібліотеки. Це загальний принцип
вирішення проблеми, який потрібно
адаптувати до потреб конкретної
програми.
Патерни і алгоритми часто помилково
сприймаються як одне й те саме, тому що
обидва описують типові рішення для
відомих проблем. Але, якщо алгоритм - це
конкретний набір дій, то патерн - це більш
загальний опис рішення на високому рівні,
реалізація якого може відрізнятися в
різних програмах.
Навіщо знати
патерни?
Використання перевірених рішень може
заощадити багато часу, оскільки вам не
доведеться винаходити велосипеди знову і знову.
Хоча деякі рішення можуть бути очевидними, інші
можуть здивувати вас своєю ефективністю і
корисністю.
Використання уніфікованих рішень дозволяє
уникнути прорахунків при проектуванні, оскільки
всі можливі проблеми вже виявлені і вирішені.
Це сприяє стандартизації коду та полегшує
розуміння проекту всіма членами команди.
Використання загальної термінології паттернів
дозволяє програмістам швидше і ефективніше
спілкуватися та розуміти один одного. Замість
того, щоб витрачати час на пояснення свого
дизайну і класів, ви можете коротко назвати
паттерн, який використовується, і зосередитися
на його реалізації.
Класифікація патернів
Породжуючі патерни піклуються про гнучке створення об’єктів без внесення в програму
зайвих залежностей.
Структурні патерни показують різні способи побудови зв’язків між об’єктами.
Поведінкові патерни піклуються про ефективну комунікацію між об’єктами.
Decorator Facade Factory method Composite
Builder Singleton
Chain of
Responsibility
Одинак — це породжувальний патерн
проектування, який гарантує, що клас має
лише один екземпляр, та надає глобальну
точку доступу до нього.
Singleton
Коли в програмі повинен бути
єдиний екземпляр якого-небудь
класу, доступний усім клієнтам
(наприклад, спільний доступ до
бази даних з різних частин
програми).
Коли треба мати більше
контролю над глобальними
змінними.
Фабричний метод — це породжувальний
патерн проектування, який визначає
загальний інтерфейс для створення
об’єктів.
Factory method
Коли типи і залежності
об’єктів, з якими
повинен працювати
ваш код, невідомі
заздалегідь.
Коли ви хочете надати
користувачам
можливість
розширювати частини
вашого фреймворку чи
бібліотеки.
Коли ви хочете
зекономити системні
ресурси, повторно
використовуючи вже
створені об’єкти, замість
породження нових.
Будівельник — це породжувальний патерн
проектування, що дає змогу створювати
складні об’єкти крок за кроком.
Будівельник дає можливість
використовувати один і той самий код
будівництва для отримання різних
відображень об’єктів.
Builder
Коли код повинен створювати
різні уявлення якогось об’єкта
Коли потрібно збирати
складні об’єкти
Декоратор — це структурний патерн
проектування, що дає змогу динамічно
додавати об’єктам нову функціональність,
загортаючи їх у корисні «обгортки».
Decorator
Якщо потрібно додавати
об’єктам нові обов’язки «на
льоту», непомітно для коду,
який їх використовує.
Якщо не можна розширити
обов’язки об’єкта за допомогою
спадкування.
Фасад — це структурний патерн
проектування, який надає простий
інтерфейс до складної системи класів,
бібліотеки або фреймворку.
Facade
Якщо потрібно надати простий
або урізаний інтерфейс до
складної підсистеми.
Розкласти підсистему
на окремі рівні.
Компонувальник — це структурний
патерн проектування, що дає змогу
згрупувати декілька об’єктів у
деревоподібну структуру, а потім
працювати з нею так, ніби це одиничний
об’єкт.
Composite
Якщо потрібно представити
деревоподібну структуру
об’єктів.
Якщо клієнти повинні
однаково трактувати прості
та складові об’єкти.
Ланцюжок обов’язків — це поведінковий
патерн проектування, що дає змогу
передавати запити послідовно ланцюжком
обробників. Кожен наступний обробник
вирішує, чи може він обробити запит сам і
чи варто передавати запит далі
ланцюжком.
Chain of Responsibility
Якщо програма має
обробляти різноманітні
запити багатьма
способами, але
заздалегідь невідомо,
які конкретно запити
надходитимуть і які
обробники для них
знадобляться.
Якщо важливо, щоб
обробники
виконувалися один за
іншим у суворому
порядку.
Якщо набір об’єктів,
здатних обробити запит,
повинен задаватися
динамічно.
Яке відношення має фаза місяця до результатів автоматизованого тестування?
Чи є дослідження, які показують, що результати тестування можуть залежати від
фази місяця? І якщо так, то чому?
twitter.com/p2h_global instagram.com/p2h_space
ЮРІЙ СЕРДЮК «Патерни проектування в автоматизації. Практичний досвід з Python» Online QADay 2023

More Related Content

What's hot

Software testing and process
Software testing and processSoftware testing and process
Software testing and process
gouravkalbalia
 
Insprint automation, build the culture
Insprint automation, build the cultureInsprint automation, build the culture
Insprint automation, build the culture
ShekharRamphal
 
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil TayarCypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Applitools
 
КАТЕРИНА АБЗЯТОВА «ISTQB exam tips_ from A to Z» Online QADay 2022 #2
КАТЕРИНА АБЗЯТОВА «ISTQB exam tips_ from A to Z» Online QADay 2022 #2КАТЕРИНА АБЗЯТОВА «ISTQB exam tips_ from A to Z» Online QADay 2022 #2
КАТЕРИНА АБЗЯТОВА «ISTQB exam tips_ from A to Z» Online QADay 2022 #2
QADay
 
froglogic Squish (Qt edition)
froglogic Squish (Qt edition)froglogic Squish (Qt edition)
froglogic Squish (Qt edition)
Amanda Burma
 
Selenium
SeleniumSelenium
Selenium
mdfkhan625
 
ISTQB / ISEB Foundation Exam Practice - 6
ISTQB / ISEB Foundation Exam Practice - 6ISTQB / ISEB Foundation Exam Practice - 6
ISTQB / ISEB Foundation Exam Practice - 6
Yogindernath Gupta
 
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Edureka!
 
An Introduction to Test Driven Development
An Introduction to Test Driven Development An Introduction to Test Driven Development
An Introduction to Test Driven Development
CodeOps Technologies LLP
 
Test Mühendisliğine Giriş Eğitimi - Bölüm 1
Test Mühendisliğine Giriş Eğitimi - Bölüm 1Test Mühendisliğine Giriş Eğitimi - Bölüm 1
Test Mühendisliğine Giriş Eğitimi - Bölüm 1
Mesut Günes
 
Test Automation in Agile
Test Automation in AgileTest Automation in Agile
Test Automation in Agile
Agile Testing Alliance
 
Les 7 principes généraux des tests
Les 7 principes généraux des testsLes 7 principes généraux des tests
Les 7 principes généraux des tests
Jerry Gaetan MBANTA NYABEU
 
Ruby HTTP clients comparison
Ruby HTTP clients comparisonRuby HTTP clients comparison
Ruby HTTP clients comparisonHiroshi Nakamura
 
Présentation Agile Testing
Présentation Agile TestingPrésentation Agile Testing
Présentation Agile Testing
jubehr
 
Volkswagen | ECU Software Development with codeBeamer ALM: IT Aspects
Volkswagen | ECU Software Development with codeBeamer ALM: IT AspectsVolkswagen | ECU Software Development with codeBeamer ALM: IT Aspects
Volkswagen | ECU Software Development with codeBeamer ALM: IT Aspects
Intland Software GmbH
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
Sun Technlogies
 
АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?» Online QADay ...
АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?»  Online QADay ...АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?»  Online QADay ...
АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?» Online QADay ...
QADay
 
QA Process Overview
QA Process OverviewQA Process Overview
QA Process Overview
Deepak Rathod
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
AbdulImrankhan7
 
ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2Yogindernath Gupta
 

What's hot (20)

Software testing and process
Software testing and processSoftware testing and process
Software testing and process
 
Insprint automation, build the culture
Insprint automation, build the cultureInsprint automation, build the culture
Insprint automation, build the culture
 
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil TayarCypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
Cypress vs Selenium WebDriver: Better, Or Just Different? -- by Gil Tayar
 
КАТЕРИНА АБЗЯТОВА «ISTQB exam tips_ from A to Z» Online QADay 2022 #2
КАТЕРИНА АБЗЯТОВА «ISTQB exam tips_ from A to Z» Online QADay 2022 #2КАТЕРИНА АБЗЯТОВА «ISTQB exam tips_ from A to Z» Online QADay 2022 #2
КАТЕРИНА АБЗЯТОВА «ISTQB exam tips_ from A to Z» Online QADay 2022 #2
 
froglogic Squish (Qt edition)
froglogic Squish (Qt edition)froglogic Squish (Qt edition)
froglogic Squish (Qt edition)
 
Selenium
SeleniumSelenium
Selenium
 
ISTQB / ISEB Foundation Exam Practice - 6
ISTQB / ISEB Foundation Exam Practice - 6ISTQB / ISEB Foundation Exam Practice - 6
ISTQB / ISEB Foundation Exam Practice - 6
 
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...Career in Software Testing | Skills Required for Software Test Engineer | Edu...
Career in Software Testing | Skills Required for Software Test Engineer | Edu...
 
An Introduction to Test Driven Development
An Introduction to Test Driven Development An Introduction to Test Driven Development
An Introduction to Test Driven Development
 
Test Mühendisliğine Giriş Eğitimi - Bölüm 1
Test Mühendisliğine Giriş Eğitimi - Bölüm 1Test Mühendisliğine Giriş Eğitimi - Bölüm 1
Test Mühendisliğine Giriş Eğitimi - Bölüm 1
 
Test Automation in Agile
Test Automation in AgileTest Automation in Agile
Test Automation in Agile
 
Les 7 principes généraux des tests
Les 7 principes généraux des testsLes 7 principes généraux des tests
Les 7 principes généraux des tests
 
Ruby HTTP clients comparison
Ruby HTTP clients comparisonRuby HTTP clients comparison
Ruby HTTP clients comparison
 
Présentation Agile Testing
Présentation Agile TestingPrésentation Agile Testing
Présentation Agile Testing
 
Volkswagen | ECU Software Development with codeBeamer ALM: IT Aspects
Volkswagen | ECU Software Development with codeBeamer ALM: IT AspectsVolkswagen | ECU Software Development with codeBeamer ALM: IT Aspects
Volkswagen | ECU Software Development with codeBeamer ALM: IT Aspects
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
 
АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?» Online QADay ...
АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?»  Online QADay ...АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?»  Online QADay ...
АНТОН СЕРПУТЬКО « Якісний перфоманс сценарій в Jmeter, це як?» Online QADay ...
 
QA Process Overview
QA Process OverviewQA Process Overview
QA Process Overview
 
Automation Testing
Automation TestingAutomation Testing
Automation Testing
 
ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2ISTQB / ISEB Foundation Exam Practice - 2
ISTQB / ISEB Foundation Exam Practice - 2
 

Similar to ЮРІЙ СЕРДЮК «Патерни проектування в автоматизації. Практичний досвід з Python» Online QADay 2023

m-9-10.pptx
m-9-10.pptxm-9-10.pptx
m-9-10.pptx
AlexanderSmidt
 
Корнілов Андрій
Корнілов АндрійКорнілов Андрій
Корнілов Андрій
Oleg Nazarevych
 
Patterns.pptx
Patterns.pptxPatterns.pptx
Patterns.pptx
ssuser1ce94b
 
informatyka_9_klas_ryvkind_2022.pdf
informatyka_9_klas_ryvkind_2022.pdfinformatyka_9_klas_ryvkind_2022.pdf
informatyka_9_klas_ryvkind_2022.pdf
ssuser59c0a2
 
UX Дезайнер: Інструкція з користування
UX Дезайнер: Інструкція з користуванняUX Дезайнер: Інструкція з користування
UX Дезайнер: Інструкція з користування
Tanya Zavialova
 
природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...
Andrii Podanenko
 
Informatyka-9-klas-Ryvkind-2022 (1).pdf
Informatyka-9-klas-Ryvkind-2022 (1).pdfInformatyka-9-klas-Ryvkind-2022 (1).pdf
Informatyka-9-klas-Ryvkind-2022 (1).pdf
ssuser59c0a2
 
Less4
Less4Less4
Nikita Zahurdaiev: PMO Tools and Technologies (UA)
Nikita Zahurdaiev: PMO Tools and Technologies (UA)Nikita Zahurdaiev: PMO Tools and Technologies (UA)
Nikita Zahurdaiev: PMO Tools and Technologies (UA)
Lviv Startup Club
 
Введення в програмну інженерію
Введення в програмну інженеріюВведення в програмну інженерію
Введення в програмну інженерію
Oleg Nazarevych
 
Anna Podolynna, BAQ "How not to loose a QA focus and organize testing proces...
Anna Podolynna, BAQ  "How not to loose a QA focus and organize testing proces...Anna Podolynna, BAQ  "How not to loose a QA focus and organize testing proces...
Anna Podolynna, BAQ "How not to loose a QA focus and organize testing proces...
Dakiry
 
Вибір і експлуатація систем керування автоматизованим виробництвом
Вибір і експлуатація систем керування автоматизованим виробництвомВибір і експлуатація систем керування автоматизованим виробництвом
Вибір і експлуатація систем керування автоматизованим виробництвом
irko514
 
KyivUX Meetup 2 - Design Systems for White Label products Ignite.pdf
KyivUX Meetup 2 - Design Systems for White Label products Ignite.pdfKyivUX Meetup 2 - Design Systems for White Label products Ignite.pdf
KyivUX Meetup 2 - Design Systems for White Label products Ignite.pdf
Yuri Ternytsky
 
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
Drupaltour
 
Урок 65. Вибір теми проекту. Його планування. Добір ресурсів.
Урок 65. Вибір теми проекту. Його планування. Добір ресурсів.Урок 65. Вибір теми проекту. Його планування. Добір ресурсів.
Урок 65. Вибір теми проекту. Його планування. Добір ресурсів.
Василь Тереховський
 
10 клас иф технолог проф-ль завадський програм.
10 клас  иф технолог проф-ль завадський програм.10 клас  иф технолог проф-ль завадський програм.
10 клас иф технолог проф-ль завадський програм.af1311
 
10 клас инф технолог профиль завадський програм.
10 клас  инф технолог профиль завадський програм.10 клас  инф технолог профиль завадський програм.
10 клас инф технолог профиль завадський програм.af1311
 
основи програмування 1
основи програмування  1основи програмування  1
основи програмування 1
CDN_IF
 
"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets
Fwdays
 

Similar to ЮРІЙ СЕРДЮК «Патерни проектування в автоматизації. Практичний досвід з Python» Online QADay 2023 (20)

m-9-10.pptx
m-9-10.pptxm-9-10.pptx
m-9-10.pptx
 
Корнілов Андрій
Корнілов АндрійКорнілов Андрій
Корнілов Андрій
 
Patterns.pptx
Patterns.pptxPatterns.pptx
Patterns.pptx
 
informatyka_9_klas_ryvkind_2022.pdf
informatyka_9_klas_ryvkind_2022.pdfinformatyka_9_klas_ryvkind_2022.pdf
informatyka_9_klas_ryvkind_2022.pdf
 
UX Дезайнер: Інструкція з користування
UX Дезайнер: Інструкція з користуванняUX Дезайнер: Інструкція з користування
UX Дезайнер: Інструкція з користування
 
природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...природна і економна дорожня карта для переходу команди розробки на тест центр...
природна і економна дорожня карта для переходу команди розробки на тест центр...
 
Informatyka-9-klas-Ryvkind-2022 (1).pdf
Informatyka-9-klas-Ryvkind-2022 (1).pdfInformatyka-9-klas-Ryvkind-2022 (1).pdf
Informatyka-9-klas-Ryvkind-2022 (1).pdf
 
Less4
Less4Less4
Less4
 
Nikita Zahurdaiev: PMO Tools and Technologies (UA)
Nikita Zahurdaiev: PMO Tools and Technologies (UA)Nikita Zahurdaiev: PMO Tools and Technologies (UA)
Nikita Zahurdaiev: PMO Tools and Technologies (UA)
 
Введення в програмну інженерію
Введення в програмну інженеріюВведення в програмну інженерію
Введення в програмну інженерію
 
Anna Podolynna, BAQ "How not to loose a QA focus and organize testing proces...
Anna Podolynna, BAQ  "How not to loose a QA focus and organize testing proces...Anna Podolynna, BAQ  "How not to loose a QA focus and organize testing proces...
Anna Podolynna, BAQ "How not to loose a QA focus and organize testing proces...
 
Вибір і експлуатація систем керування автоматизованим виробництвом
Вибір і експлуатація систем керування автоматизованим виробництвомВибір і експлуатація систем керування автоматизованим виробництвом
Вибір і експлуатація систем керування автоматизованим виробництвом
 
cpp-2013 #3 OOP Basics
cpp-2013 #3 OOP Basicscpp-2013 #3 OOP Basics
cpp-2013 #3 OOP Basics
 
KyivUX Meetup 2 - Design Systems for White Label products Ignite.pdf
KyivUX Meetup 2 - Design Systems for White Label products Ignite.pdfKyivUX Meetup 2 - Design Systems for White Label products Ignite.pdf
KyivUX Meetup 2 - Design Systems for White Label products Ignite.pdf
 
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
DrupalTour. Zhytomyr — Drupal Optimization (Dmitry Kinakh, InternetDevels)
 
Урок 65. Вибір теми проекту. Його планування. Добір ресурсів.
Урок 65. Вибір теми проекту. Його планування. Добір ресурсів.Урок 65. Вибір теми проекту. Його планування. Добір ресурсів.
Урок 65. Вибір теми проекту. Його планування. Добір ресурсів.
 
10 клас иф технолог проф-ль завадський програм.
10 клас  иф технолог проф-ль завадський програм.10 клас  иф технолог проф-ль завадський програм.
10 клас иф технолог проф-ль завадський програм.
 
10 клас инф технолог профиль завадський програм.
10 клас  инф технолог профиль завадський програм.10 клас  инф технолог профиль завадський програм.
10 клас инф технолог профиль завадський програм.
 
основи програмування 1
основи програмування  1основи програмування  1
основи програмування 1
 
"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets"What is a RAG system and how to build it",Dmytro Spodarets
"What is a RAG system and how to build it",Dmytro Spodarets
 

More from QADay

ОЛЕКСА МАЩИЦЬ «Пора валити! Або коли компанія тобі більше не друг»
ОЛЕКСА МАЩИЦЬ  «Пора валити! Або коли компанія тобі більше не друг»ОЛЕКСА МАЩИЦЬ  «Пора валити! Або коли компанія тобі більше не друг»
ОЛЕКСА МАЩИЦЬ «Пора валити! Або коли компанія тобі більше не друг»
QADay
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
QADay
 
РАМЕЛЛА БАСЕНКО «Огляд підходів та моделей покращення процесів Improvement ...
РАМЕЛЛА БАСЕНКО  «Огляд підходів та моделей покращення процесів Improvement ...РАМЕЛЛА БАСЕНКО  «Огляд підходів та моделей покращення процесів Improvement ...
РАМЕЛЛА БАСЕНКО «Огляд підходів та моделей покращення процесів Improvement ...
QADay
 
ОЛЬГА РАДЧЕНКО «Інтелектуальні навички тестувальника»
ОЛЬГА РАДЧЕНКО  «Інтелектуальні навички тестувальника»ОЛЬГА РАДЧЕНКО  «Інтелектуальні навички тестувальника»
ОЛЬГА РАДЧЕНКО «Інтелектуальні навички тестувальника»
QADay
 
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...
КАТЕРИНА АБЗЯТОВА  «Ефективне планування тестування  ключові аспекти та практ...КАТЕРИНА АБЗЯТОВА  «Ефективне планування тестування  ключові аспекти та практ...
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...
QADay
 
РІНА УЖЕВКО «Управління командою тестування»
РІНА УЖЕВКО  «Управління командою тестування»РІНА УЖЕВКО  «Управління командою тестування»
РІНА УЖЕВКО «Управління командою тестування»
QADay
 
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
QADay
 
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
QADay
 
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
QADay
 
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
QADay
 
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
QADay
 
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
QADay
 
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
QADay
 
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
QADay
 
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
QADay
 
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
QADay
 
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
QADay
 
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
QADay
 
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
QADay
 
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
QADay
 

More from QADay (20)

ОЛЕКСА МАЩИЦЬ «Пора валити! Або коли компанія тобі більше не друг»
ОЛЕКСА МАЩИЦЬ  «Пора валити! Або коли компанія тобі більше не друг»ОЛЕКСА МАЩИЦЬ  «Пора валити! Або коли компанія тобі більше не друг»
ОЛЕКСА МАЩИЦЬ «Пора валити! Або коли компанія тобі більше не друг»
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
 
РАМЕЛЛА БАСЕНКО «Огляд підходів та моделей покращення процесів Improvement ...
РАМЕЛЛА БАСЕНКО  «Огляд підходів та моделей покращення процесів Improvement ...РАМЕЛЛА БАСЕНКО  «Огляд підходів та моделей покращення процесів Improvement ...
РАМЕЛЛА БАСЕНКО «Огляд підходів та моделей покращення процесів Improvement ...
 
ОЛЬГА РАДЧЕНКО «Інтелектуальні навички тестувальника»
ОЛЬГА РАДЧЕНКО  «Інтелектуальні навички тестувальника»ОЛЬГА РАДЧЕНКО  «Інтелектуальні навички тестувальника»
ОЛЬГА РАДЧЕНКО «Інтелектуальні навички тестувальника»
 
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...
КАТЕРИНА АБЗЯТОВА  «Ефективне планування тестування  ключові аспекти та практ...КАТЕРИНА АБЗЯТОВА  «Ефективне планування тестування  ключові аспекти та практ...
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...
 
РІНА УЖЕВКО «Управління командою тестування»
РІНА УЖЕВКО  «Управління командою тестування»РІНА УЖЕВКО  «Управління командою тестування»
РІНА УЖЕВКО «Управління командою тестування»
 
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
Досвід здачі іспиту ISTQB Expert level: подробиці, перепідготовка, актуальніс...
 
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
АРТЕМ ГРИГОРЕНКО «Покращення процесів найму»
 
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
КАТЕРИНА ЖУПАН «Mobile Testing based on “ISTQB Mobile Application – Syllabus»
 
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
МОРРІС-ВСЕСЛАВ ШОСТАК «Роль QA в індустрії програмного та апаратного забезпеч...
 
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
ОКСАНА ГОРОЩУК «Improving Quality Through Root Cause Analysis»
 
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
ПАВЛО САФОНОВ «Як оцінити ефективність автоматизації»
 
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
ГАННА КІЛІМОВА & СВІТЛАНА ЯКОВЛЄВА «ADA testing – те, що дуже на часі»
 
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
СЕРГІЙ БРИТ «Як запускати тести з Playwright Java написані на Selenide. Не пе...
 
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
БОГДАН САВЧУК «IoT testing: Manual, Automation and Cyber Security techniques»
 
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
ЕЛЬМІР ІСКАНДЕРОВ «Bulletproof Your Software: The Magic of Security Autotests»
 
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
ІННА ДВОЙНІКОВА «Як вийти на Upwork та розширити горизонти QA»
 
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
КАТЕРИНА АБЗЯТОВА «Point of Growth: Transforming Challenges into Skill-Buildi...
 
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
НАТАЛІЯ ТРОЙНІЧ «Редизайн всього продукту, коли на проекті залишилось два ман...
 
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
РІНА УЖЕВКО «Вплив архітектури на стратегію тестування»
 

Recently uploaded

Симон Петлюра – видатний борець за незалежність
Симон Петлюра – видатний борець за незалежністьСимон Петлюра – видатний борець за незалежність
Симон Петлюра – видатний борець за незалежність
Vinnytsia Regional Universal Scientific Library named after Valentin Otamanovsky
 
Віртуальна виставка «Допомога НАТО Україні»
Віртуальна виставка «Допомога НАТО Україні»Віртуальна виставка «Допомога НАТО Україні»
Віртуальна виставка «Допомога НАТО Україні»
Vinnytsia Regional Universal Scientific Library named after Valentin Otamanovsky
 
«Слова і кулі». Письменники, що захищають Україну. Єлизавета Жарікова
«Слова і кулі». Письменники, що захищають Україну. Єлизавета Жарікова«Слова і кулі». Письменники, що захищають Україну. Єлизавета Жарікова
«Слова і кулі». Письменники, що захищають Україну. Єлизавета Жарікова
estet13
 
POPOVICH_Nina_PORTFOLIO_librarianCRE.pdf
POPOVICH_Nina_PORTFOLIO_librarianCRE.pdfPOPOVICH_Nina_PORTFOLIO_librarianCRE.pdf
POPOVICH_Nina_PORTFOLIO_librarianCRE.pdf
Olga Kudriavtseva
 
29.05.2024.docx29.05.2024.docx29.05.2024.docx
29.05.2024.docx29.05.2024.docx29.05.2024.docx29.05.2024.docx29.05.2024.docx29.05.2024.docx
29.05.2024.docx29.05.2024.docx29.05.2024.docx
Репетитор Історія України
 
Підсумки, перспективи роботи профспільнот педагогів ЗДО (2).pdf
Підсумки, перспективи роботи профспільнот педагогів ЗДО (2).pdfПідсумки, перспективи роботи профспільнот педагогів ЗДО (2).pdf
Підсумки, перспективи роботи профспільнот педагогів ЗДО (2).pdf
ssuser7541ef1
 
KUDRIAVTSEVA_Olha_PORTFOLIO_librarian.pdf
KUDRIAVTSEVA_Olha_PORTFOLIO_librarian.pdfKUDRIAVTSEVA_Olha_PORTFOLIO_librarian.pdf
KUDRIAVTSEVA_Olha_PORTFOLIO_librarian.pdf
Olga Kudriavtseva
 
Презентація-Поняття-про-глобальні-проблеми-людства.-Роль-світової-громадськос...
Презентація-Поняття-про-глобальні-проблеми-людства.-Роль-світової-громадськос...Презентація-Поняття-про-глобальні-проблеми-людства.-Роль-світової-громадськос...
Презентація-Поняття-про-глобальні-проблеми-людства.-Роль-світової-громадськос...
santomihail264
 
Сучасний підхід до підвищення продуктивності сільськогосподарских рослин
Сучасний підхід до підвищення продуктивності сільськогосподарских рослинСучасний підхід до підвищення продуктивності сільськогосподарских рослин
Сучасний підхід до підвищення продуктивності сільськогосподарских рослин
tetiana1958
 
LOBANOVA_Tetiana_PORTFOLIO_Librarian.pdf
LOBANOVA_Tetiana_PORTFOLIO_Librarian.pdfLOBANOVA_Tetiana_PORTFOLIO_Librarian.pdf
LOBANOVA_Tetiana_PORTFOLIO_Librarian.pdf
Olga Kudriavtseva
 
Важливість впровадження стандарту ISO/IEC 17025:2019 у процес державних випро...
Важливість впровадження стандарту ISO/IEC 17025:2019 у процес державних випро...Важливість впровадження стандарту ISO/IEC 17025:2019 у процес державних випро...
Важливість впровадження стандарту ISO/IEC 17025:2019 у процес державних випро...
tetiana1958
 

Recently uploaded (11)

Симон Петлюра – видатний борець за незалежність
Симон Петлюра – видатний борець за незалежністьСимон Петлюра – видатний борець за незалежність
Симон Петлюра – видатний борець за незалежність
 
Віртуальна виставка «Допомога НАТО Україні»
Віртуальна виставка «Допомога НАТО Україні»Віртуальна виставка «Допомога НАТО Україні»
Віртуальна виставка «Допомога НАТО Україні»
 
«Слова і кулі». Письменники, що захищають Україну. Єлизавета Жарікова
«Слова і кулі». Письменники, що захищають Україну. Єлизавета Жарікова«Слова і кулі». Письменники, що захищають Україну. Єлизавета Жарікова
«Слова і кулі». Письменники, що захищають Україну. Єлизавета Жарікова
 
POPOVICH_Nina_PORTFOLIO_librarianCRE.pdf
POPOVICH_Nina_PORTFOLIO_librarianCRE.pdfPOPOVICH_Nina_PORTFOLIO_librarianCRE.pdf
POPOVICH_Nina_PORTFOLIO_librarianCRE.pdf
 
29.05.2024.docx29.05.2024.docx29.05.2024.docx
29.05.2024.docx29.05.2024.docx29.05.2024.docx29.05.2024.docx29.05.2024.docx29.05.2024.docx
29.05.2024.docx29.05.2024.docx29.05.2024.docx
 
Підсумки, перспективи роботи профспільнот педагогів ЗДО (2).pdf
Підсумки, перспективи роботи профспільнот педагогів ЗДО (2).pdfПідсумки, перспективи роботи профспільнот педагогів ЗДО (2).pdf
Підсумки, перспективи роботи профспільнот педагогів ЗДО (2).pdf
 
KUDRIAVTSEVA_Olha_PORTFOLIO_librarian.pdf
KUDRIAVTSEVA_Olha_PORTFOLIO_librarian.pdfKUDRIAVTSEVA_Olha_PORTFOLIO_librarian.pdf
KUDRIAVTSEVA_Olha_PORTFOLIO_librarian.pdf
 
Презентація-Поняття-про-глобальні-проблеми-людства.-Роль-світової-громадськос...
Презентація-Поняття-про-глобальні-проблеми-людства.-Роль-світової-громадськос...Презентація-Поняття-про-глобальні-проблеми-людства.-Роль-світової-громадськос...
Презентація-Поняття-про-глобальні-проблеми-людства.-Роль-світової-громадськос...
 
Сучасний підхід до підвищення продуктивності сільськогосподарских рослин
Сучасний підхід до підвищення продуктивності сільськогосподарских рослинСучасний підхід до підвищення продуктивності сільськогосподарских рослин
Сучасний підхід до підвищення продуктивності сільськогосподарских рослин
 
LOBANOVA_Tetiana_PORTFOLIO_Librarian.pdf
LOBANOVA_Tetiana_PORTFOLIO_Librarian.pdfLOBANOVA_Tetiana_PORTFOLIO_Librarian.pdf
LOBANOVA_Tetiana_PORTFOLIO_Librarian.pdf
 
Важливість впровадження стандарту ISO/IEC 17025:2019 у процес державних випро...
Важливість впровадження стандарту ISO/IEC 17025:2019 у процес державних випро...Важливість впровадження стандарту ISO/IEC 17025:2019 у процес державних випро...
Важливість впровадження стандарту ISO/IEC 17025:2019 у процес державних випро...
 

ЮРІЙ СЕРДЮК «Патерни проектування в автоматизації. Практичний досвід з Python» Online QADay 2023

  • 1.
  • 3. About QA since 2019 From manual QA to automation QA Athlete with 12 years of experience
  • 4. Agenda 1. Що таке патерн 2. Навіщо знати патерни 3. Класифікація патернів 4. Огляд патернів
  • 5. Що таке Патерн? Патерн проектування - це типовий спосіб вирішення проблем при проектуванні програм. Він не може бути просто скопійований в програму, як готові функції або бібліотеки. Це загальний принцип вирішення проблеми, який потрібно адаптувати до потреб конкретної програми. Патерни і алгоритми часто помилково сприймаються як одне й те саме, тому що обидва описують типові рішення для відомих проблем. Але, якщо алгоритм - це конкретний набір дій, то патерн - це більш загальний опис рішення на високому рівні, реалізація якого може відрізнятися в різних програмах.
  • 6. Навіщо знати патерни? Використання перевірених рішень може заощадити багато часу, оскільки вам не доведеться винаходити велосипеди знову і знову. Хоча деякі рішення можуть бути очевидними, інші можуть здивувати вас своєю ефективністю і корисністю. Використання уніфікованих рішень дозволяє уникнути прорахунків при проектуванні, оскільки всі можливі проблеми вже виявлені і вирішені. Це сприяє стандартизації коду та полегшує розуміння проекту всіма членами команди. Використання загальної термінології паттернів дозволяє програмістам швидше і ефективніше спілкуватися та розуміти один одного. Замість того, щоб витрачати час на пояснення свого дизайну і класів, ви можете коротко назвати паттерн, який використовується, і зосередитися на його реалізації.
  • 7. Класифікація патернів Породжуючі патерни піклуються про гнучке створення об’єктів без внесення в програму зайвих залежностей. Структурні патерни показують різні способи побудови зв’язків між об’єктами. Поведінкові патерни піклуються про ефективну комунікацію між об’єктами.
  • 8. Decorator Facade Factory method Composite Builder Singleton Chain of Responsibility
  • 9.
  • 10. Одинак — це породжувальний патерн проектування, який гарантує, що клас має лише один екземпляр, та надає глобальну точку доступу до нього. Singleton
  • 11. Коли в програмі повинен бути єдиний екземпляр якого-небудь класу, доступний усім клієнтам (наприклад, спільний доступ до бази даних з різних частин програми). Коли треба мати більше контролю над глобальними змінними.
  • 12.
  • 13. Фабричний метод — це породжувальний патерн проектування, який визначає загальний інтерфейс для створення об’єктів. Factory method
  • 14. Коли типи і залежності об’єктів, з якими повинен працювати ваш код, невідомі заздалегідь. Коли ви хочете надати користувачам можливість розширювати частини вашого фреймворку чи бібліотеки. Коли ви хочете зекономити системні ресурси, повторно використовуючи вже створені об’єкти, замість породження нових.
  • 15.
  • 16.
  • 17. Будівельник — це породжувальний патерн проектування, що дає змогу створювати складні об’єкти крок за кроком. Будівельник дає можливість використовувати один і той самий код будівництва для отримання різних відображень об’єктів. Builder
  • 18. Коли код повинен створювати різні уявлення якогось об’єкта Коли потрібно збирати складні об’єкти
  • 19.
  • 20. Декоратор — це структурний патерн проектування, що дає змогу динамічно додавати об’єктам нову функціональність, загортаючи їх у корисні «обгортки». Decorator
  • 21. Якщо потрібно додавати об’єктам нові обов’язки «на льоту», непомітно для коду, який їх використовує. Якщо не можна розширити обов’язки об’єкта за допомогою спадкування.
  • 22.
  • 23. Фасад — це структурний патерн проектування, який надає простий інтерфейс до складної системи класів, бібліотеки або фреймворку. Facade
  • 24. Якщо потрібно надати простий або урізаний інтерфейс до складної підсистеми. Розкласти підсистему на окремі рівні.
  • 25.
  • 26. Компонувальник — це структурний патерн проектування, що дає змогу згрупувати декілька об’єктів у деревоподібну структуру, а потім працювати з нею так, ніби це одиничний об’єкт. Composite
  • 27. Якщо потрібно представити деревоподібну структуру об’єктів. Якщо клієнти повинні однаково трактувати прості та складові об’єкти.
  • 28.
  • 29. Ланцюжок обов’язків — це поведінковий патерн проектування, що дає змогу передавати запити послідовно ланцюжком обробників. Кожен наступний обробник вирішує, чи може він обробити запит сам і чи варто передавати запит далі ланцюжком. Chain of Responsibility
  • 30. Якщо програма має обробляти різноманітні запити багатьма способами, але заздалегідь невідомо, які конкретно запити надходитимуть і які обробники для них знадобляться. Якщо важливо, щоб обробники виконувалися один за іншим у суворому порядку. Якщо набір об’єктів, здатних обробити запит, повинен задаватися динамічно.
  • 31.
  • 32. Яке відношення має фаза місяця до результатів автоматизованого тестування? Чи є дослідження, які показують, що результати тестування можуть залежати від фази місяця? І якщо так, то чому? twitter.com/p2h_global instagram.com/p2h_space