1 / 8

Дослідження Впровадження Шаблонів проектування у розробку програмного забезпечення

Дослідження Впровадження Шаблонів проектування у розробку програмного забезпечення. Виконав: ст. гр. 1ПІ-13м Гречко Андрій Геннадійович. Метою роботи є підвищення ефективності створення програмних застосувань шляхом активного впровадження патерних технологій.

gwen
Download Presentation

Дослідження Впровадження Шаблонів проектування у розробку програмного забезпечення

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Дослідження Впровадження Шаблонів проектування у розробку програмного забезпечення Виконав: ст. гр. 1ПІ-13м Гречко Андрій Геннадійович

  2. Метою роботи є підвищення ефективності створення програмних застосувань шляхом активного впровадження патерних технологій. Об’єктом дослідження постають процеси автоматизованого проектування програмних продуктів. Під предметом дослідження розуміємо шаблони проектування програмного забезпечення.

  3. Аналіз структури шаблонів проектування У загальному випадку патерн складається з чотирьох базових елементів: 1. Ім’я: узагальнює проблеми проектування, і наявні шляхи пошуку розв’язків та їх наслідки. Привласнення патернам імен забезпечує реалізацію принципів абстрактного програмування та складання каталогу розроблених шаблонів. 2. Завдання: визначає коло охоплених задач, включає перелік умов застосування шаблонів. 3. Рішення: включає опис елементів дизайну, функцій шаблонів та відносин між ними. 4. Результати: визначають наслідки застосування шаблону, переваги, недоліки та перспективи використання патерну в процесі розробки власного програмного продукту.

  4. Аналіз перспектив використання шаблонів проектування Наявні шаблони проектування можна класифікувати на структурні; породжуючі; поведінкові. Серед структурних шаблонів розглянемо шаблон проектування Фасад, який надає уніфікований інтерфейс високого рівня та спрощує подальше використання підсистем системи, та забезпечує низькорівневий доступ до класів підсистеми. Рисунок 1 - Діаграма класів шаблону проектування Фасад

  5. Породжуючі шаблони проектування абстрагують процеси ініціювання, забезпечують незалежність систем від способу створення, композиції та ідентифікації об’єктів. Для прикладу розглянемо шаблон проектування Одинак (Singleton), який відноситься до складу твірних шаблонів. Даний шаблон гарантує для класу наявність одного екземпляру і забезпечує глобальну точку доступу до нього. Створений екземпляр розширюється шляхом успадкування функцій та дозволяє клієнтам процювати зі своїм функціоналом, не змінюючи власний код. Рисунок 2 - Діаграма класів шаблону проектування Одинак

  6. Поведінкові шаблони проектування визначають алгоритми та способи реалізації взаємодії різних об’єктів і класів. Їх використовуют з метою забезпечення гнучкості програмного застосунку. Розглянемо шаблон Стратегія (Strategy), призначений для ідентифікації сімейства алгоритмів, інкапсуляції їх властивостей та забезпечення можливості їх взаємозамінності. Головним завданням шаблону є вибір оптимального алгоритиму роботи об’єкта за типом клієнта чи типом оброблюваних даних. Задачі, для яких рекомендовано вибору алгоритмів поведінки кожного екземпляру класу та об’єктів на стадії виконання. Інтерфейс шаблону дозволяє інкапсулювати в собі набір алгоритмів і опрацьовувати їх у закритому для клієнтів режимі. Рисунок 3 - Діаграма класів шаблону проектування Стратегія

  7. Результати аналізу перспектив використання розглянутих шаблонів

  8. Дякую за увагу!

More Related