Первая страница
Наша команда
Контакты
О нас

    Головна сторінка



Ярцев в. П. Створення та обробка баз даних на пеом

Ярцев в. П. Створення та обробка баз даних на пеом




Сторінка13/20
Дата конвертації10.03.2017
Розмір2.36 Mb.
ТипПротокол
1   ...   9   10   11   12   13   14   15   16   ...   20

10. Об'єктно-орієнтоване проектування БД у Delphi




10.1. Delphi – призначення, загальні відомості

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

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

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

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

Механізм одержання і відправлення даних забезпечує з'єднання з джерелом даних. Він повинний "знати", куди йому звертатися і який протокол обміну використовувати для забезпечення двунаправленного потоку даних.

Механізм внутрішнього представлення даних є ядром додатка баз даних. Він забезпечує збереження отриманих даних у додатку і надає них по запиті інших частин додатка.

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

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

Джерело даних являє собою сховище даних (саму базу даних) і СУБД, що керує даними, що забезпечують цілісність і несуперечність даних. Ми докладно зупинимося на способах розробки додатків баз даних у Delphi.



Delphi – одна з найбільше широко розповсюджених сучасних систем програмування. Дозволяє створювати як прості, так і складні професійні комплекси програм, призначені для роботи на платформі ОС Windows. Уже розроблений аналог Delphi, що одержав назву Kylix, призначений для роботи на платформі ОС Linux.

Перші версії Delphi з'явилися на початку 90-х років. В даний час найбільш поширені версії Delphi 5,6 і 7. У Delphi 6 уперше з'явилася можливість створювати мультиплатформенні прикладні програми, тобто програми, що можуть виконуватися як у середовищі Windows, так і в середовищі Unix (Linux). Останньою версією є Delphi 7, відмінною рисою якої є наявність засобів проектування інформаційних систем (засобів CASE-технологій).



Delphi увібрала в себе усі відомі сучасні технології програмування. По-перше, у Delphi повною мірою реалізована технологія об'єктно-орієнтованого програмування на базі мови Object Pascal (зараз його вже називають мовою Delphi). По-друге, у Delphi доведена до досконалості технологія візуального проектування програм, завдяки чому в середовищі Delphi можна дуже швидко створювати досить складні сучасні прикладні програми. Нарешті, середовище Delphi настільки зручне, що тривалий і кропіткий процес розробки програм стає навіть приємним і комфортним.

Однак, щоб скористатися всіма можливостями, наданими Delphi, і відчути їхні переваги, необхідно знати і розуміти базові принципи, реалізовані в Delphi. Хоча раніше ви вже знайомилися з ними, ще раз розглянемо коротко основні положення і поняття об'єктно-орієнтованого програмування (ООП) і особливості реалізації в Delphi принципів візуального проектування програм.

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

Існують загальні підходи до розробки додатків баз даних у Delphi, базові класи і механізми, що не зміняться, чи виберіть ви для вашого додатка Borland Database Engine (BDE), Microsoft Active Data Objects (ADO) або dbExpress.



10.2. Об'єктно-орієнтоване програмування. Базові класи

ООП – це в даний час природний і загальноприйнятий підхід до проектування програм. Наочним прикладом об'єктно-орієнтованого підходу може служити графічна оболонка Windows. Коли Ви відкриваєте будь-як програму в ОС Windows, Ви бачите вікна, меню, кнопки, списки і т.п. Усе це об'єкти. Причому, самі по собі вони нічого не роблять, але вони “знають”, що робити і як “поводитися” у тім чи іншому випадку. Наприклад, кнопка “знає”, що потрібно зробити при клацанні на цій кнопці. Вікно “знає”, що потрібно перемалювати себе з новими розмірами, якщо користувач робить протягання однієї з границь вікна. Можна привести ще багато подібних прикладів. Усе це приклади зовнішнього прояву поводження об'єктів. Але що ж таке об'єкт?

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

Розглянемо простий фрагмент програми на мові Pascal, у якому створюється об'єкт.



Type

TObj = class(TObject)

A: Integer;

B: Real; оголошення даних (полів, властивостей)

…………......

procedure P1;

function P2: Real; оголошення методів (процедур і функцій)

……………………


end;

Var

Obj : TObj; оголошення змінної об'єктного типу

……………...

begin

Obj:= TObj.Create; створення екземпляра класу (об'єкта)

………………….

Obj.P1;


if Obj.P2>B then …... застосування методів Р1 і Р2

…………………


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

Поля використовуються для внутрішніх потреб у класі і звичайно ззовні не доступні. У приведеному вище прикладі A і B – це поля.

Властивості – це такі ж змінні, але до них можливий доступ ззовні об'єкта. Властивості є характеристиками об'єкта, що визначають його індивідуальні особливості і поводження об'єкта. Через властивості об'єкта здійснюється взаємодія об'єкта з зовнішнім середовищем.

У компонентах Delphi (це теж об'єкти) маються спеціальні властивості, що називають подіями. Це властивості процедурного типу, призначені для програмування реакцій на ті чи інші повідомлення Windows.

Наприклад, кнопка як об'єкт Delphi має безліч властивостей-подій, при настанні яких повинні виконуватися ті чи інші дії. Так, при натисканні кнопки (при клацанні на ній мишею) настає подія OnCliсk. В оброблювачі цієї події можна запрограмувати потрібні дії.

Сполучення в об'єкті даних і процедур маніпулювання цими даними називають принципом інкапсуляції.

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

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

Клас TObject є родоначальником всієї ієрархії класів Delphi. У ньому реалізовані функції, якими повинний володіти будь-який об'єкт. Такі функції дві: створення екземпляра класу (метод Create) і його знищення (мтод Destroy). Будь-який об'єкт повинний “уміти” виконувати ці операції.

Створення об'єкта відбувається в результаті виклику методу Create, який називають конструктором . При створенні об'єкта для нього в оперативній пам'яті виділяється область адресного простору, створюється покажчик (посилання) на цю область пам'яти Покажчик на екземпляр об'єкта передається в змінну об'єктного типу, що надалі є ідентифікатором об'єкта в програмному коді.

У приведеному вище прикладі об'єкт з ім'ям Obj створюється таким викликом конструктора: Obj:=TObj.Create; , установлюються початкові значення полів і властивостей об'єкта. Тут нагадаємо, що ім'я будь-якого класу починається з літери “T” для того, щоб підкреслити, що це ім'я типу даних. Ім'я об’єкту, як і ім'я будь-якої змінної, визначає користувач згідно діючим правилам і обмеженням.

1   ...   9   10   11   12   13   14   15   16   ...   20



  • 10.2. Обєктно-орієнтоване програмування. Базові класи