Запуск програми на виконання

Практикум№1.

Інтегроване середовище програмування Borland С++Builder. Технологія візуального проектування

Теоретичні відомості

Вступ

Серед користувачів персональних комп’ютерів на сьогоднішній день найбільш популярною є операційна система Windows. І, зрозуміло, що той, хто береться програмувати, хоче писати програми, які будуть працювати під Windows.

Розвиток обчислювальної техніки, потреба в ефективних засобах розробки програмного забезпечення призвели до появи на ринку цілого ряду систем програмування, що орієнтовані на так звану „швидку розробку”, серед яких особливо слід відмітити Microsoft Visual Basic та Borland Delphi. В основі систем швидкої розробки (RAD-систем, Rapid Application Development – середовище швидкої розробки додатків) лежить технологія візуального проектування і подійного програмування. Суть її полягає в тому, що середовище програмування бере на себе більшу частину роботи щодо генерації коду програми, залишаючи програмісту роботу щодо конструювання діалогових вікон та написання функцій обробки подій.

Успіх і популярність Delphi викликали бажання фірми Borland розповсюдити методи швидкої розробки на область професійного програмування, що й призвело до появи Borland C++ Builder.

C++ Builder – це середовище швидкої розробки, в якому в якості мови програмування використовується мова С++ Builder. На сьогоднішній день цей продукт є найбільш популярним для розробки проектів під Windows.

Початок роботи

Завантажується C++ Builder у звичайний спосіб, т. б. вибором з меню Borland C++ Builder 6 команди C++ Builder 6.

Вигляд екрану після завантаження C++ Builder дещо незвичний. Замість одного вікна на екрані з’являються п’ять:

· головне вікно C++ Builder 6;

· вікно стартової форми – Form1;

· вікно редактора властивостей об’єктів – Object Inspector;

· вікно перегляду списку об’єктів – Object TreeView;

· вікно редактора коду – Unit1.cpp.

Вікно редактору коду майже повністю закрите вікном стартової форми.

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

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

Панель інструментів вміщує кнопки, що відповідають певним командам меню, наприклад, командам Save, Run тощо.

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

Компоненти є основними елементами кожного Builder-додатка і, одночасно, основою бібліотеки візуальних компонентів (VCL) С++Builder. Піктограми стандартних компонентів розділені на групи відповідно функціям, які вони виконують. Кожна з цих груп піктограм розміщена на окремій сторінці палітри компонентів. Після запуску С++Builder активною є сторінка Standard.

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

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

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

Ще С++Builder забезпечує спрощений спосіб розміщення компонентів на формі. Якщо просто двічі клікнути на потрібній кнопці в палітрі компонентів, то компонент з’явиться на формі. При цьому він буде відцентрований горизонтально та вертикально. Такий компонент буде мати розмір за замовчуванням. Вікно Object TreeView містить ієрархічний список об’єктів, що є елементами проекту.

 

Для зміни значень властивостей об‘єктів, в тому числі і форми, використовується інспектор об‘єктів (Object Inspector).

У термінології візуального проектування об’єкти – це діалогові вікна та елементи управління (поля введення та виведення, командні кнопки, перемикачі тощо). А властивості об’єкта – це характеристики, які визначають вигляд, положення та поведінку об’єкта.

На укладці Properties в лівій колонці перераховані властивості вибраного об’єкта, а в правій - вказані їхні значення.

На укладці Events перелічені оброблювачі подій вибраного об’єкта.

Подія (Event) – це те, що відбувається під час роботи програми. В С++Builder кожній події надано ім’я. Наприклад, клік кнопкою миші – це подія OnClick, подвійний клік мишею – подія OnDblClick, натиснення клавіші клавіатури – подія OnPressKey.

Реакцією на подію має бути якась дія. Наприклад, натиснення на кнопку „Close” має призводити до виходу з додатка, а натиснення на кнопку „Обчислити” – до обчислення результату за певною формулою.

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

Отже, в лівій колонці укладки Events перераховано події, які може сприймати вибраний компонент. В правій колонці з’являється згенероване С++Builder ім’я функції обробки відповідної події.

С++Builder надає функції обробки події ім’я, що складається з двох частин. Перша частина ідентифікує форму, що містить об’єкт компонент, для якого створена функція обробки події. Друга частина імені ідентифікує сам об’єкт та подію. Наприклад:

  void __fastcall TForm1::Button1Click(Tobject *Sender) void __fastcall TMainForm::FormCreate(TObject *Sender)

Вікно редактора коду (Unit1.cpp) розділене на дві частини. У правій частині слід набирати програмний код. Проте, навіть на початку роботи над новим проектом ця частина вікна редактора коду не порожня. Вона вже містить шаблон програми C++ Builder.

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

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

У процесі набирання тексту програми зручно користуватися шаблонами коду ( + ).

В процесі розробки додатка часто виникає необхідність перемикання між вікном редактора коду та вікном форми. Зробити це можна за допомогою командної кнопки Toogle Form/Unit, яка знаходиться на панелі інструментів View. Якщо проект складається з кількох модулів чи форм, то вибрати потрібний модуль чи форму можна за допомогою командних кнопок View Unit та View Form на панелі інструментів View.

Файли проекту

C++ Builder, як і інші сучасні компілятори, мислить в термінах проектів при створенні програм. Проект складається з одного чи кількох вихідних файлів, а також з цілого ряду додаткових файлів ресурсів. Результатом створення програми є виконуваний .exe-файл. Одже, проект C++ Builder – це набір файлів:

· ( .bpr ) файл опису проекту Builder

· ( .cpp ) вихідний файл з кодом кожного модуля плюс один файл проекту

· ( .dfm ) файл опису форми та всіх її компонентів

· ( .h ) заголовний файл

· ( .res ) компільований двійковий файл ресурсів

· ( .obj ) двійковий об’єктний файл

· ( .tds ) файл містить отладочную інформацію (Turbo Debugger Symbol)

Файли з розширенням, що починається з тильди (~), є резервними копіями. Можна спокійно їх знищувати у будь-який час.

Всі файли, що створює C++ Builder для проекту, можна розділити на дві категорії: файли, на основі яких будується проект, та файли, що створюються під час компіляції та компоновки проекту. Перші п’ять типів файлів створюються після першого збереження проекту. Файли формату obj створюються при компіляції пакету. Отже, якщо ви вирішили перенести ваш проект на інший комп’ютер, вам необхідно буде переписати лише ті файли, які C++ Builder використовує для побудови додатка. Файли з розширеннями .cpp, .h, .dfm та .bpr складають мінімальний набір. Решту файлів C++ Builder створить заново під час побудови програми.

Збереження проекту

Для того, щоб зберегти проект, необхідно в меню File вибрати команду Save Project As. Спочатку зберігається вихідний файл модуля (за замовчуванням Unit1.cpp), а потім – файл проекту (за замовчуванням Project1.bpr).

Зверніть увагу, що імена файлу модуля (.cpp) та файлу проекту (.bpr) повинні бути різними, оскільки C++ Builder у момент збереження файлу проекту створює однойменний cpp-файл (файл головного модуля). Крім того, слід зауважити, що ім’я згенерованого компілятором виконуваного файлу (*.exe) співпадає з ім’ям проекту.

Компіляція

Процес перетворення вихідної програми у виконувану складається з двох частин: саме компіляції та компоновки. На етапі компіляції виконується переведення вихідної програми в деяке внутрішнє подання. На етапі компоновки виконується складання побудова програми.

Запуск програми на виконання

Запуск програми на виконання виконується за допомогою команди Run (Пуск) головного меню C++ Builder, кнопки Run панелі інструментів чи клавішею F9.