mozok.click » Інформатика » Створення та розробка навчальних проектів
Інформація про новину
  • Переглядів: 2511
  • Автор: admin
  • Дата: 18-09-2017, 11:00
18-09-2017, 11:00

Створення та розробка навчальних проектів

Категорія: Інформатика

14.1. Структура проекту в середовищі Lazarus

Чи доводилося вам раніше брати участь у проектній діяльності з інших предметів? Яку функцію ви виконували в них?

Проект (від латин. projectus — «кинутий вперед») — це цілісна сукупність моделей та їхніх властивостей, описаних у формі, придатній для його реалізації. Процес розробки проекту називають проектуванням. Проектування — це процес визначення архітектури, компонентів, інтерфейсів та інших характеристик системи або її частини.

Рис. 1. Загальний порядок підготовки до виконання навчальних проектів із програмування

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

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

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

Які, на вашу думку, особливості має розробка проекту в середовищі Lazarus?

Правила і методика розробки проектів у кожній мові програмування має свої особливості.

Розглянемо деякі особливості створення навчальних проектів у середовищі візуального програмування Lazarus (рис. 2).

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

Файл опису проекту (.lpi).

Файл проекту (.lpr). У ньому зберігаються всі основні параметри програми. Без цього файла неможливо виконати програму.

Модуль форми (.lfm). Містить опис усіх об'єктів, розташованих на формі. Файл містить також властивості тих об'єктів, які змінені програмістом.

Програмний модуль (.pas) — файл коду програми. Його можна поділити на окремі, менші за обсягом, модулі й кожний із них підключити до проекту.

Рис. 2. Особливості створення проектів у середовищі візуального програмування Lazarus



Зазвичай проект містить також файл ресурсів (.lrs). У ньому можуть зберігатися дані різних типів.

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

Програмний модуль має таку загальну структуру:

Заголовок модуля починається ключовим словом unit, за яким слідує ім’я модуля і крапка з комою. Розділ опису починається ключовим словом interface. Тут описуються компоненти програмного коду: типи, класи, процедури і функції. Розділ implementation містить програмний код опрацювання даних, який розробляє користувач.

14.2. Варіанти тем навчальних проектів у середовищі Lazarus

Пригадайте, з чого починається розробка програмного коду в середовищі Lazarus. Які компоненти ви використовували найчастіше? Як ви доводили правильність виконання програмного коду?

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

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


Проект 1

Створіть для допомоги молодшим школярам каталог часто вживаних розширень файлів з описом.

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

Розробіть проект, за допомогою якого дані, наведені у таблиці, виводяться у клітинки компонента TStringGrid в алфавітному порядку розширень. Виявіть переваги і недоліки розробленого програмного коду порівняно з наведеним.

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

Розмістити на формі 2 компоненти TStringGrid і компонент TButton. В об'єкт StringGridl увести дані, наведені у таблиці так, як зображено на рис. 1.

Розробити програмний код, за допомогою якого з даних, що містяться у клітинках об'єкта StringGridl, створюється двовимірний масив з іменем mas, елементи якого мають тип string. Створений масив упорядкувати в алфавітному порядку розширення файлів.

Рис. 1. Об'єкт StringGridl з уведеними даними з Excel

Доповнити програмний код, розроблений на кроці 2, кодом виведення створеного масиву в клітинки об'єкта StringGrid2 так, як зображено на рис. 2.

Рис. 2. Об'єкт StringGrid2 з елементами створеного масиву

Порівняти розроблений код із контрольним кодом, зображеним на рис. 3. Виявити переваги і недоліки розробленої вами і наведеної програм.

Рис. 3. Програмний код реалізації завдання проекту 1


Проект 2

Щорічно в Україні для підготовки й формування команди з чотирьох учнів 9-11 класів для участі в міжнародній олімпіаді з інформатики проводяться збори, на які запрошуються 8 учнів, нагороджених дипломами першого ступеня за результатами Всеукраїнської олімпіади поточного року. Усі учні після завершення зборів виконують контрольні завдання, які оцінюються максимальною сумою балів — 600. Учні, які набрали максимальну кількість балів, потрапляють до команди. Розробіть алгоритм і програму формування команди учнів.

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

Знайти в Інтернеті дані про учнів, нагороджених дипломами першого ступеня за результатами Всеукраїнської олімпіади з інформатики поточного року.

Розробити алгоритм реалізації завдання.

Розмістити на формі 2 компоненти TStringGrid і компонент TButton. Внести в об'єкт StringGridl дані, знайдені в Ін-тернеті, про учнів і суму балів, набрану ними на олімпіаді. В об'єкт StringGrid2 внести назви рядків і стовпців. Зразок оформлення об'єктів зображено на рис. 4.

Рис. 4. Об'єкт StringGridl з уведеними даними й об'єкт StringGrid2

Розробити і виконати програму реалізації алгоритму. Для правильно розробленої програми отримаємо результат, зображений на рис. 5.

Рис. 5. Результат виконання коду проекту 2

Проаналізувати розроблену програму і контрольну програму, зображену на рис. 6. Виявити переваги і недоліки розробленої вами і наведеної програм.

Проект 3

У шкільній олімпіаді з інформатики бере участь різна кількість учнів 9-11 класів. Роботи учнів оцінюються загальною сумою від 0 до 50 балів. Розробіть алгоритм і програму визначення середнього балу результатів участі в олімпіаді учнів кожного класу.

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

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

формальні параметри процедури краще використати відкритий масив.

Для розробки програми можна використовувати різні компоненти, наприклад TEdit, TLabel, TMemo, TListBox, TStringGrid та ін. Можна також використати функції InputBox(), ShowMessage() і компонент TButton. Для аналізу ефективності розробленого вами проекту на рис. 7 зображено програму одного з варіантів реалізації сформульованого завдання. У цьому варіанті використано дві процедури. Уведіть цю програму, переконайтеся, що вона функціонує правильно, і виявіть її недоліки.

Після запуску програми на екрані з’явиться вікно, зразок якого наведено на рис. 8. У це вікно слід увести кількість учнів 9 класу, які брали участь в олімпіаді, і клацнути кнопку ОК.

Потім послідовно будуть з’являтися вікна, один зі зразків якого зображено на рис. 9, у які потрібно ввести кількості балів, отриманих кожним учнем цього класу.

Після завершення введення кількості балів, отриманих учнями 9 класу, на екран буде виведено середній бал учнів. Зразок такого вікна зображено на рис. 10.

В аналогічному порядку слід увести дані про учнів 10 і 11 класів.

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

Рис. 11. Програмний код із процедурою і функцією

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

 

Це матеріал з підручника Інформатика 9 клас Руденко (поглиблений рівень)

 






^