Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ООП.doc
Скачиваний:
9
Добавлен:
19.09.2019
Размер:
4.01 Mб
Скачать

24. Різновид діаграм реалізації. Що спільного і в чому різниця в uml діаграмах компонентів та розгортання?

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

Діаграма розгортання (deployment diagram)

Фізичне представлення програмної системи не може бути повним, якщо відсутня інформація про те, на якій платформі і на яких обчислювальних засобах вона реалізована. першою з діаграм фізичного уявлення є діаграма компонентів. Другою формою фізичного представлення програмної системи є діаграма розгортання. Вона застосовується для представлення загальної конфігурації і топології розподіленої програмної системи і містить розподіл компонентів по окремих вузлах системи.

Діаграма розгортання призначена для візуалізації елементів і компонентів програми, що існують лише на етапі її виконання (runtime). При цьому представляються тільки компоненти-екземпляри програми, що є здійснимими файлами або динамічними бібліотеками.

Така діаграма показує конфігурацію вузлів, де здійснюється обробка інформації, і те, які компоненти розміщені на кожному вузлі.

Діаграми розгортання використовуються для моделювання статичного виду системи з точки зору розгортання.В основному під цим розуміється моделювання топології апаратних засобів, на яких виконується система. По суті, діаграми розгортання - це просто діаграми класів, зосереджені на системних вузлах.

25. Що таке системи програмування, які складові системи програмування, дайте їх визначення та стислу характеристику? Що спільне і в чому полягає різниця між транслятором, компілятором та інтерпретатором. Коротко опишіть процес створення виконуваного файлу.

Системою програмування будемо називати комплекс програмних засобів, призначених для кодування, тестування й налагодження програмного забезпечення.

Такі комплекси, як правило, включають наступні програмні модулі.

  •    Текстові редактори, що служать для створення текстів вихідних програм.

  •    Компілятори, призначені для перекладу вихідного тексту вхідною мовою в мову машинних кодів.

  •   Компонувальки, що дозволяють поєднувати кілька об'єктних модулів, породжуваних компілятором, в одну програму.

  •    Бібліотеки прикладних програм, що містять у собі найбільше часто використовувані підпрограми у вигляді готових об'єктних модулів.

  •    Завантажники, що забезпечують підготовку готової програми до виконання.

  • Налагоджувальники, що виконують програму в заданому режимі (наприклад, покроковому) з метою пошуку, виявлення й локалізації помилок.

 Помітимо, що будь-яка система програмування може працювати тільки у відповідної ОС, під якою вона й створена, однак при цьому вона може дозволяти розробляти програмне забезпечення й під інші ОС.

Редактор тексту - це програма для уведення й модифікації тексту.

Транслятори призначені для перетворення програм, написаних на мовах програмування, у програми машинною мовою. Програма, підготовлена на якій-небудь мові програмування, називається вихідним модулем. Як вхідна інформація транслятори застосовують вихідні модулі й формують у результаті своєї роботи об'єктні модулі, що є вхідною інформацією для редактора зв'язків

 Транслятори діляться на два класи: компілятори й інтерпретатори. Компілятори переводять весь вихідний модуль на машинну мову. Інтерпретатор послідовно переводить на машинну мову й виконають оператори вихідного модуля

Компілятор – це транслятор, що здійснює переклад вихідної програми в еквівалентну їй об'єктну програму мовою машинних команд або мові асемблера.

Тяким образом, компілятор відрізняється від транслятора тим, що його результуюча програма написана обов'язково мовою машинних команд або мові асемблера. Результуюча програма транслятора в загальному випадку може бути написана на будь-якій мові (наприклад, транслятор з мови Pascal на мову З).

Таким чином, компілятори - це вид трансляторів.

Нагадаємо також, що існує ще принципово відмінне поняття «інтерпретатор».

Компонувальк, або редактор зв'язків - системна обробна програма, що редагує й поєднує об'єктні (раніше відтрансльовані) модулі в єдині завантажувальні, готові до виконання програмні модулі. Завантажувальний модуль може бути поміщений ОС в основну пам'ять і виконаний.

Налагоджувальник дозволяє управляти процесом виконання програми, є інструментом для пошуку й виправлення помилок у програмі. Базовий набір функцій налагоджувальника включає:

  •   покрокове виконання програми (режим трасування) з відображенням результатів,

  •   зупинка в заздалегідь певних крапках,

  •   можливість зупинки в деякому місці програми при виконанні деякої умови;

  •   зображення й зміна значень змінних.

 Завантажник - системна обробна програма, що поєднує основні функції редактори зв'язків і програми вибірки в одному пункті завдання. Завантажник поміщає перебувають у його вхідному наборі даних об'єктні й завантажувальні модулі в оперативну пам'ять, поєднує їх у єдину програму, коректує переміщувані адресні константи з урахуванням фактичної адреси завантаження й передає керування в крапку входу створеної програми.

 Розвиток інтегрованих середовищ розробки ПО привело до появи розвинених засобів інтерфейсу користувача, спочатку текстових, а потім і графічних.

Першим удалим середовищем називають інтегроване середовище програмування Turbo Pascal.

Подальший розвиток засобів розробки пов'язане з поширенням розвинених засобів графічного інтерфейсу користувача. До складу засобів розробки ПО спочатку минулому включені бібліотеки, що підтримують розвитий графічний інтерфейс користувача й взаємодія з функціями API операційних систем. Пізніше були включені додаткові засоби, призначені для розробки зовнішнього вигляду інтерфейсних модулів (системи візуального програмування).

Для опису графічних елементів програм потрібні були відповідні мови. На їхній основі зложилося поняття «ресурсів» прикладних програм.

Ресурсами прикладної програми називають безліч даних, що забезпечують зовнішній вигляд інтерфейсу користувача цієї програми й не зв'язаних прямо з логікою виконання програми (наприклад, тексти повідомлень програми, колірна гама елементів інтерфейсу, напису на кнопках, заголовки вікон і т.п.).

Для формування структури ресурсів у свою чергу знадобилися редактори ресурсів, а потім і компілятори ресурсів. Ресурси, отримані з виходу компілятора ресурсів, сталі оброблятися компоновщиками й завантажниками.

Весь цей комплекс програмно-технічних засобів у цей час становить поняття «система програмування».

Структуру сучасної системи програмування можна представити у вигляді наступної схеми.

 

 Прикладами сучасних систем програмування є

Системи програмування Turbo Pascal, Borland Pascal, Borland Delphi, Borland C++ Builder,

Microsoft Visual Basic, Microsoft Visual C++. Новітніми системами програмування є система, побудована на базі мови С# і системи, орієнтовані на концепцію .NET.