
- •1.Поняття програмного забезпечення. Класифікація програмного забезпечення.
- •2. Проблеми розробки складного програмного забезпечення.
- •3. Стандарти життєвого циклу пз.
- •4. Процеси життєвого циклу пз. Стадії життєвого циклу пз, взаємозв’язок між процесами і стадіями.
- •5. Моделі життєвого циклу пз.
- •6. Міжнародні стандарти розробки складних програмних продуктів.
- •7. Національні стандарти розробки складних програмних продуктів.
- •8. Використання стандартів при створенні програмних продуктів.
- •12. Методології розробки пз . Характеристика методології dsdm.
- •14. Поняття архітектури програмного забезпечення. Принципи проектування.
- •17. Патерни проектування пз. Класифікація шаблонів проектування.
- •18. Патерни проектування об'єктів. Схема архітектури mvc.
- •19. Загальна характеристика case-засобів. Класифікація case-засобів. Критерії вибору та оцінювання case-засобів.
- •21. Принципи об’єктно-орієнтованого програмування
- •22. Компонентна технологія Delphi. Поняття компонента. Ієрархія компонентів.
- •23. Особливості використання класів в Object Pascal. Класифікація класів Delphi.
- •24. Написання функціонального коду програми та прив'язка інтерфейсних елементів з цим кодом (надання елементам функціональності).
- •26. Класифікація властивостей компонентів.
- •27. Керування властивостями візуальних компонентів в режимі проектування. Керування властивостями візуальних компонентів в режимі виконання програми.
- •28. Створення інтерфейсу користувача. Форми та модулі. Шаблони форм. Характеристики форми. Організація взаємодії форм.
- •29. Загальні принципи створення меню. Головне меню. Спливаюче меню. Пункти меню.
- •30. Компоненти для організації списків. Списки. Комбіновані списки.
- •32. Аналіз вимог замовника до пз. Інженерія вимог. Розділи аналізу вимог. Типи вимог.
- •33. Проблеми аналізу вимог
- •34. Якість пз, фактори якості пз.
- •35. Аналіз та опрацювання метрик оцінки якості програмного забезпечення на етапі проектування. Метрики оцінки якості пз.
- •II. Аналіз моделей життєвого циклу пз. Вибір методу одержання оцінки значень показників якості на етапі проектування
- •37. Стандарти тестування пз.
- •38. Випробування програмних продуктів – робочий проект. Основні концепції супроводу пз.
- •39. Способи роботи з файлами. Стандартний підхід. Об’єктний підхід.
- •41. Розробка аплікацій баз даних засобами Delphi. Робота з таблицями та індексами.
- •42. Переміщення по набору даних. Фільтрація. Організація пошуку записів. Модифікація набору даних.
- •43. Інструментальні засоби для роботи з базами даних.
- •44. Основи мови побудови запитів sql. Функції sql.
- •45. Визначення даних. Відбір даних таблиць. Модифікація записів. Статичний та динамічний запити.
- •46. Керування роботою офісних аплікацій. Багатопоточні аплікації.
- •47. Створення довідникової системи засобами Delphi. Основні вимоги до довідникової системи . Правила побудови.
- •49. Експлуатаційна, операційна, рекламна документація на пз
- •50. Маркетинг програмних продуктів.
41. Розробка аплікацій баз даних засобами Delphi. Робота з таблицями та індексами.
Основними властивостями набору даних як такого є Active і State, а стосовно до записів - RecordCount і RecNo. Зокрема, властивість RecordCount вказує на поточну кількість записів в наборі даних (яке може не збігатися з кількістю записів в таблиці БД завдяки можливої фільтрації), а властивість RecNo вказує на індекс активної запису. Що стосується властивості Active, то ми вже розглядали його в контексті компонента Table і знаємо, що воно відповідає за безпосереднє підключення до БД. Значення цієї властивості може бути встановлено як на етапі розробки програми, так і під час виконання. При цьому слід враховувати, що спроба встановити властивість Active в істину може викликати виняткову ситуацію, якщо не вказана, як мінімум, фізична таблиця з даними (за допомогою властивості TableName): Table1.TableName = '.. \ DB1 \ bill.db'; / / Вказуємо фізичну таблицю БД Table1.Active: = true; / / Робимо набір активним Якщо ж підтримувати активне з'єднання по ходу подальшого виконання програми немає необхідності, то можна повернути стан у неактивний, присвоївши властивості Active значення брехня. Цю операцію необхідно зробити і в тому випадку, якщо потрібно змінити вихідний джерело з даними: Table1.Active: = false; / / Відключаємося Table1.TableName = '.. \ DB1 \ customer.db'; / / Змінюємо таблицю БД Table1.Active: = true; / / Включаємо внось Альтернативним методом зміни стану набору даних є використання методів Open і Close: Table1.Close; / / Відключаємося Table1.TableName = '.. \ DB1 \ customer.db'; / / Змінюємо таблицю БД Table1.Open; / / Включаємо внось Фактично, ці методи виконують ту ж роботу, що і зміна властивості Active, тобто звернення до методу Open встановлює властивість Active в істину, а Close - в брехню. При написанні програмного коду прийнято використовувати саме ці методи, а не змінювати значення властивості Active.
42. Переміщення по набору даних. Фільтрація. Організація пошуку записів. Модифікація набору даних.
Перемещение или навигация по записям набора данных может осуществляться несколькими путями. Например, в компонентах TDBGrid и TDBCtrlGrid, которые отображают сразу несколько записей набора данных, можно использовать клавиши вертикального перемещения курсора или вертикальную полосу прокрутки. Основна перевага фільтрів в порівнянні з пошуком полягає в тому, що застосовувати фільтр можна без будь-яких підготовчих дій над набором даних, так як фільтри не використовують індекси. Один мінус - фільтрація виконується повільніше ніж пошук заснований на індексах. Є два варіанти за допомогою яких можна задати умову на фільтрацію. Можна використовувати їх окремо або обидва відразу. Перший - строкове значення у властивості Filter. Другий - це умова описане в обробнику події OnFilterRecord. Починається фільтрація як тільки властивість Filtered, встановлено в True. procedure TForm1.Edit1Change(Sender: TObject); begin if Length(Edit1.Text) > 0 then begin ADOTable1.Filtered:=false; ADOTable1.Filter:=Combobox1.Text + ' LIKE ' + #39 + Edit1.Text + '%' + #39; ADOTable1.Filtered:=true; end else ADOTable1.Filtered:=false; end; Пошук function Locate(const KeyFields: string; const KeyValues: Variant; Options: TLocateOptions): Boolean; virtual; function Lookup(const KeyFields: string; const KeyValues: Variant; const ResultFields: string): Variant; virtual; Різниця між ними в тім, що функція Lookup при пошуку запису переводить курсор на знайдений запис, а Lookup не робить цього. Якщо поля, що указані для пошуку, є індексованими, то пошук провадиться з використанням індексу, що значно прискорює пошук. Поняття редагування, додавання й видалення даних можна об'єднати в єдиному понятті модифікації набору даних. Модифицируемость, тобто можливість зміни набору даних, залежить від різних умов. Delphi надає програмістові широкі можливості обмеження модифікованості набору даних за допомогою відповідних властивостей. Яскравим прикладом накладення обмеження на модифицируемость набору даних є перемикання його в режим «тільки для читання». Наприклад, якщо ми хочемо, щоб можливості користувача обмежувалися виключно переглядом записів з набору даних без можливості їх редагування або занесення в них нових записів, можна використовувати властивість Readonly. Дана властивість має за умовчанням значення false, тобто набір даних можна модифікувати. Наведена нижче рядок коду дозволяє перевести набір даних Tablel в режим «тільки для читання»: Table1.Readonly: = true