Смекни!
smekni.com

Мова програмування C та середовище розробки Microsoft Visual C (стр. 2 из 2)

5. ВБУДОВАНІ ЕЛЕМЕНТИ

Компілятор VisualC++ містить багато нових інструментальних засобів і поліпшених можливостей для створення Windows-додатків [1].

Додатки Windows прості у використанні, але створювати їх досить складно. Програмістам доводиться вивчати сотні різних API-функцій. Щоб полегшити їх роботу, фахівці Microsoft розробили бібліотеку MicrosoftFoundationClasses— MFC . Використовуючи готові класи C++, можна набагато швидше і простіше вирішувати багато задач. Бібліотека MFC істотно полегшує програмування в середовищі Windows. Ті, хто володіє достатнім досвідом програмування на C++, можуть допрацьовувати класи або створювати нові, похідні від існуючих. Класи бібліотеки MFC використовуються як для керування об'єктами Windows, так і для рішення певних загальносистемних задач. Наприклад, в бібліотеці є класи для керування файлами, рядками, часом, обробкою виключень і інші. По суті, в MFC представлені практично всі функції WindowsAPI. У бібліотеці є засобу обробки повідомлень, діагностики помилок і інші засоби, звичні для додатків Windows. MFC володіє наступними перевагами:

· Представлений набір функцій і класів відрізняється логічністю і повнотою. Бібліотека MFC відкриває доступ до всіх часто використовуваних функцій WindowsAPI, включаючи функції управління вікнами додатків, повідомленнями, елементами управління, меню, діалоговими вікнами, об'єктами GDI (GraphicsDeviceInterface— інтерфейс графічних пристроїв), такими як шрифти, кисті, пір'я і растрові зображення, функції роботи з документами тощо.

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

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

· MFC містить засоби автоматичного керування повідомленнями. Бібліотека MFC усуває необхідність в організації циклу обробки повідомлень — поширеного джерела помилок в Windows-додатках. У MFC передбачений автоматичний контроль за появою кожного повідомлення. Замість використовування стандартного блоку switch/case всі повідомлення Windows зв'язуються з функціями-членами, що виконують відповідну обробку.

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

· MFC має чіткий механізм обробки виняткових ситуацій. Бібліотека MFC була розроблена так, щоб тримати під контролем появу таких ситуацій. Це дозволяє об'єктам МFC відновлювати роботу після появи помилок типу "outofmemory" (брак пам'яті), неправильного вибору команд меню або проблем із завантаженням файлів або ресурсів.

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

· MFC може використовуватися спільно з підпрограмами, написаними на мові С. Важлтвою особливістю бібліотеки MFC є те, що вона може "співіснувати" з додатками, заснованими на WindowsAPI. У одній і тій же програмі програміст може використовувати класи MFC і викликати функції WindowsAPI. Така прозорість середовища досягається за рахунок узгодженості програмних позначень в двох архітектурах. Іншими словами, файли заголовків, типи і глобальні константи MFC не конфліктують з іменами з WindowsAPI. Ще одним ключовим моментом, що забезпечує таку взаємодію, є узгодженість механізмів управління пам'яттю.

· MFC може бути використана для створення програм, що працюють в середовищі MS-DOS. Бібліотека MFC була створена спеціально для розробки додатків в середовищі Windows. В той же час багато класів надають об'єкти, часто використовувані для введення/виведення файлів і маніпулювання рядковими даними. Такі класи загального призначення можуть застосовуватися в додатках як Windows, так і MS-DOS [3].

6. ЗАСОБИ ВІДЛАДКИ ПРОГРАМИ

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

Точки зупинки застосовуються в програмі при необхідності перервати її виконання в певних місцях. Значення використовування точок зупики полягає у тому, що відладчик не витрачає часу на покрокове виконання програми аж до вказаної точки, після досягнення якої переходить в покроковий режим. Точки зупики найпростіше розставляти за допомогою кнопки Breakpoint панелі інструментів Build. Для цього достатньо встановити курсор на потрібному рядку програми і натиснути кнопкою миші на вказаній кнопці. Якщо ж виділений рядок вже містить точку зупики, то вона буде видалена. При виборі команди Go програма виконуватиметься від поточного місцезнаходження курсора до найближчої точки зупики.

Коли розпочинається процес відладки, з'являється панель інструментів Debug. З безлічі представлених на ній кнопок найчастіше задіюються StepInto і StepOver. У обох випадках програма буде запущена на виконання в покроковому режимі, а в тексті програми виділяється той рядок, який зараз буде виконаний. Відмінності між командами StepInto і StepOver виявляються тільки тоді, коли в програмі зустрічається виклик функції. Якщо вибрати команду StepInto, то відладчик увійде до функції і почне виконувати крок за кроком всі її оператори. При виборі команди StepOver відладчик виконає функцію як єдине ціле і перейде до рядка, наступного за викликом функції. Цю команду зручно застосовувати в тих випадках, коли в програмі робиться звернення до стандартної функції або створеної вами підпрограми, яка вже була протестована [2, c.328].


ДЖЕРЕЛА ЛІТЕРАТУРИ

1. Хортон А., Visual C++ 2005: базовый курс. –С.Пб.: Диалектика, 2007. -1152 ст.

2. Грегори К., Использование Visual C++ 6. Специальное издание. –М.: Вильямс, 2000. -864ст.

3. Сергеев А.П., Терен А.Н., Программирование в Microsoft Visual C++ 2005. Самоучитель. –С.Пб.: Диалектика, 2006. -352 ст.

4. Солтер Н., Клепер Дж., C++ для профессионалов . –С.Пб.: Диалектика, 2006. -912 ст.

5. Шилдт Г. , C++: базовый курс, 3-е издание . –М.: Вильямс, 2005. -624 ст.

6. Шилдт Г. , Справочник программиста по C/C++, 3-е издание. –М.: Вильямс, 2003. -432 ст.