- •Загальні рекомендації
- •. Огляд засобів розробки програм
- •1 Загальні поняття
- •2 Системи програмування
- •3 Технології програмування
- •3.1 Алгоритмічне (модульне) програмування
- •3.2 Структурне програмування
- •3.3 Подієво-орієнтоване програмування
- •3.4 Об'єктно-орієнтоване програмування
- •3.5 Візуальне програмування
- •Запитання для контролю та самоконтролю
- •. Основні поняття алгоритмізації
- •1. Поняття алгоритму. Властивості алгоритму
- •2. Способи подання (опису) алгоритму
- •3. Правила оформлення блок-схем алгоритмів
- •4. Базові алгоритмічні конструкції
- •Запитання для контролю та самоконтролю
- •. Етапи розв’язування прикладних задач
- •1. Постановка задачі
- •2. Побудова моделі
- •3. Розробка алгоритму
- •4. Вибір структур даних
- •5. Розробка програми
- •6. Тестування програми
- •7. Аналіз результатів роботи програми
- •8. Корисні технологічні правила програмування
- •Запитання для контролю та самоконтролю
- •V. Практикум з програмування. Turbo pascal
- •Робота з інтегрованим середовищем розробника
- •Запитання для контролю та самоконтролю
- •Тема №1 структура програми. Лінійна програма. Введення/виведення. Типи даних Теоретичні відомості
- •Var перелік імен змінних та їх типів;
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №2 програми розгалуженої структури Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №3 цикли з параметром Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №4 цикли з невідомим числом повторень Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №5 використання масивів Теоретичні відомості
- •Var Ім'я : array[поч_індекс . . Кін_індекс] of Тип_даних;
- •Var Ім'я:array[поч_індекс1..Кін_індекс1,
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема №6 символьний тип даних, рядки Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 7 використання допоміжних програм Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 8 використання множин Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 9 обробка записів Теоретичні відомості
- •Var Ім’я_запису : Ім’я_типу;
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Тема № 10 організація обробки файлів Теоретичні відомості
- •Приклад
- •Варіанти завдань
- •Запитання для контролю та самоконтролю
- •Рекомендована література
2 Системи програмування
У найзагальнішому випадку для створення програми на вибраній мові програмування потрібно мати нижчезазначені компоненти.
Текстовий редактор. Оскільки текст програми записується за допомогою ключових слів, що зазвичай походять від слів англійської мови, і набору стандартних символів для запису операцій, то формувати цей текст можна в будь-якому редакторі, одержуючи у результаті текстовий файл з початковим текстом програми. Краще використовувати спеціалізовані редактори, які орієнтовані на конкретну мову програмування і дозволяють в процесі введення тексту виділяти ключові слова та ідентифікатори різними кольорами і шрифтами. Такі редактори створені для популярних мов і додатково можуть автоматично перевіряти правильність синтаксису програми безпосередньо під час її введення.
Початковий текст за допомогою програми-компілятора перекладається в машинний код. Якщо виявлені синтаксичні помилки, то результуючий код створений не буде.
На цьому етапі вже можливо отримання готової програми, але найчастіше в ній не вистачає деяких компонентів, тому компілятор звичайно видає проміжний об'єктний код (двійковий файл).
Початковий текст великої програми полягає, як правило, з декількох модулів (файлів з початковими текстами), тому що зберігати всі тексти в одному файлі незручно - в них складно орієнтуватися. Ці модулі компілюються в окремі файли з об'єктним кодом, які потім треба об'єднати в одне ціле.
Крім того, до них треба додати машинний код підпрограм, що реалізують різні стандартні функції (наприклад, обчислюють математичні функції sin або ln). Такі функції містяться в бібліотеках, які поставляються разом з компілятором. Сгенерований код модулів і підключені до нього стандартні функції треба не просто об'єднати в одне ціле, а виконати таке об'єднання з урахуванням вимог операційної системи, тобто одержати на виході програму, що відповідає певному формату.
Об'єктний код обробляється спеціальною програмою - редактором зв'язків або складальником, який виконує скріплення об'єктних модулів і машинного коду стандартних функцій, знаходячи їх в бібліотеках, і формує на виході працездатний додаток - виконуваний код для конкретної платформи.
Якщо з якихось причин один з об'єктних модулів або потрібна бібліотека не виявлені (наприклад, неправильно вказаний каталог з бібліотекою), то складальник повідомляє про помилку і готова програма не може бути отримана.
Виконуваний код - це закінчена програма, яку можна запустити на будь-якому комп'ютері, де встановлена операційна система, для якої ця програма створювалася. Як правило, підсумковий файл має розширення імені .ЕХЕ або .СОМ.
Отже, для створення програми потрібні:
текстовий редактор;
компілятор;
редактор зв'язків;
бібліотеки функцій.
Як правило, в стандартне постачання входять як мінімум три останні компоненти, але хороша інтегрована система включає і спеціалізований текстовий редактор, причому майже всі етапи створення програми в ній автоматизовані: після того, як початковий текст введений, його компіляція і складання виконуються одним натисненням клавіші. Це зручно, оскільки не вимагає ручного налаштування багатьох параметрів запуску компілятора і редактора зв'язків, вказівки вручну їм потрібних файлів. Процес компіляції звичайно демонструється: на екрані показується, скільки рядків початкового тексту відкомпілювалося, або видаються повідомлення про знайдені помилки.
У сучасних інтегрованих системах є ще один компонент - відладчик, який дозволяє аналізувати роботу програми під час її виконання. З його допомогою можна послідовно виконувати окремі оператори початкового тексту по кроках, спостерігаючи при цьому, як міняються значення різних змінних. Без відладчика розробити крупний додаток дуже складно.