Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л1.doc
Скачиваний:
23
Добавлен:
30.10.2018
Размер:
97.28 Кб
Скачать

2. Основи візуального програмування інтерфейсу

Скільки існує програмування, стільки існують в нім і тупикових ситуацій, в які воно постійно потрапляє і з яких, врешті - решт, відважно виходить. Однією із таких ситуацій або кризи не так давно був пов'язаний з розробкою графічного інтерфейсу користувача. Програмування уручну всяких звичних користувачеві вікон, кнопок, меню, обробка подій миші і клавіатури, включення в програми зображень і звуку вимагало все більше і більше часу програміста. У ряді випадків весь цей сервіс починав займати до 80-90% об'єму програмного коду. Причому вся ця праця нерідко пропадала майже даремно, оскільки досить часто мінявся загальноприйнятий стиль графічного інтерфейсу і все доводилося починати наново.

Вихід з цієї ситуації було знайдено завдяки двом підходам. Перший з них — стандартизація системних функцій і поява призначених для користувача інтерфейсів API. У них описані функції, змінні, константи, до яких розробник може звертатися зі своєї програми. Завдяки принципу приховування даних, призначена для користувача програма перестала залежати від реалізації тих або інших функцій. У результаті при зміні стилю графічного інтерфейсу (наприклад, при переході від Windows 3.x до Windows 95, або від Windows 98 до Windows XP) додатки змогли автоматично пристосовуватися до нової системи без якого-небудь перепрограмування. На цьому шляху створилися прекрасні умови для вирішення одного з найважливіших завдань вдосконалення техніки програмування — повторного використання коду. Одного разу розроблені вами форми, компоненти, функції могли бути згодом неодноразово використані вами або іншими програмістами для вирішення їх завдань. Кожен програміст дістав доступ до напрацювань інших програмістів і до величезних бібліотек, створених різними фірмами. Причому була забезпечена сумісність програмного забезпечення, розробленого на різних алгоритмічних мовах.

Другим революційним кроком, що кардинально полегшив життя програмістів, з'явилася поява візуального програмування, що виникло в Visual Basic і знайшло блискуче втілення в системах C++Builder і Delphi фірми Borland. Це з'явилося вирішальним кроком в розвитку так званої CASE- технології (Computer Aided Software Engineering — автоматизоване проектування програмного забезпечення).

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

Ви працюєте в Інтегрованому Середовищі Розробки (ІСР або Integrated development environment — IDE). Середовище надає вам форми (у програмі їх може бути декілька), на яких розміщуються компоненти. Звичайно це віконні форми, хоча вони можуть бути зроблені невидимими. На форму за допомогою миші переносяться і розміщуються піктограми компонентів, наявних в бібліотеках. За допомогою простих маніпуляцій ви можете змінювати розміри і розташування цих компонентів. При цьому ви весь час в процесі проектування бачите результат — зображення форми і розташованих на ній компонентів. Результати проектування ви бачите, навіть не компілюючи програму, негайно після виконання якоїсь операції за допомогою миші.

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

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

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

Типи об'єктів і, зокрема, компонентів бібліотек оформляються у вигляді класів. Класи — це типи, визначувані користувачем. У класах описуються властивості об'єкту, його методи і події, на які він може реагувати. Сучасні мови програмування передбачають тільки інструментарій створення класів. А самі класи створюються розробниками програмного забезпечення.

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

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

Завдяки візуальному об'єктно-орієнтованому програмуванню була створена технологія, що отримала назву швидка розробка додатків, по-англійськи RAD — Rapid Application Development. Ця технологія характерна для нового покоління систем програмування.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]