Перехід від Visual Basic до Delphi: oбзор для програмістів і розробників

Введення

Операційна система Linux останнім часом завоювала велику популярність. Вона отримала широке визнання в якості альтернативи ОС Microsoft Windows. У результаті, програмісти і розробники в усьому світі зайнялися вивченням того, як слід розробляти системи для кінцевих користувачів і замовників, щоб у них максимально використовувалися переваги, надаються Linux. Саме для цих цілей чудово підходить Borland Delphi. Протягом тривалого часу Delphi вважається одним із кращих інструментів розробки програм для Windows. Збройні інструментарієм Kylix Project ("Delphi для Linux") від Borland, розробники, що використовують Delphi, перебувають на прямому шляху до створення крос-платформної системи Windows / Linux.


Visual Basic (VB), флагман серед продуктів корпорації Microsoft, є найбільш популярною платформою розробки додатків для ОС Windows. VB є інструментарій швидкої розробки додатків (RAD), що йде корінням у мову BASIC. В даний час, більше семи мільйонів розробників в усьому світі використовують VB. Delphi також є RAD-інструментарієм, тому розробники, які вже використовують Visual Basic, знайдуть у них багато спільного. Обидва інструменти сприяють збільшенню продуктивності роботи програміста, що скорочує час розробки додатків. Основна відмінність, однак, полягає в тому, що Delphi буде мати версії як для Windows, так і для Linux.


Що таке Linux?



З технічної точки зору, назва Linux відноситься тільки до ядра ОС. Однак у більшості випадків (включаючи цю статтю) термін Linux, зазвичай застосовується до всієї ОС і його пакету додатків як альтернативі Microsoft Windows або MacOS.


Linux являє собою вільно поширювану операційну систему, подібну Unix, спочатку створену Лінус Торвальдс (Linus Torvalds) за участю програмістів, ентузіастів і людей, захоплених комп'ютерами, в усьому світі. Вперше Linux була розроблена в 1991 році для 80386 мікропроцесора від Intel, але зараз вона вже може працювати на самих різних платформах, включаючи Alpha, SPARC, PowerPC, і все сімейство x86 мікропроцесорів від Intel.


Linux є сучасною ОС, яка підтримує такі властивості:



Постійно зростаюче число Web-сайтів та постачальників послуг Internet (ISP) використовують Linux як серверної операційної системи. Крім того, в усьому світі Linux використовується програмістами, що працюють на мовах C і C + +, в якості однієї з платформ розробки. Більш того, на Linux можуть працювати всі додатки типового Unix-сервера, наприклад:



Linux поширюється по загальнодоступній ліцензії (GPL) GNU; це означає, що кожен може безкоштовно отримати доступ до вихідного коду Linux. Будь-який фахівець може модифікувати цей код за умови, що всі ці модифікації також будуть безкоштовно розповсюджуватися разом з вихідним кодом.


Відкритий доступ до вихідного коду Linux (тобто open source) забезпечує наступні переваги:



Linux, дійсно, можна назвати феноменом Internet. Internet допоміг ОС Linux отримати путівку в життя і продовжує сприяти її розвитку, забезпечуючи необхідну загальну середовище для її розробки. Програмісти в усьому світі можуть писати і обмінюватися кодами, удосконалюючи, таким чином, Linux і вносячи в неї різні додатки.


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



Borland / Inprise. В даний час Borland / Inprise пропонує один інструмент розробки для Linux, а саме, Jbuilder; незабаром на ринку з'являться ще два інструменти, C + + Builder і Delphi. JBuilder представляє собою середовище розробки на мові Java від Borland. Зараз на ринку є версії даного продукту під Windows, Linux і Solaris. JBuilder є легко розширюваною інструментом розробки додатків, що працюють з базами даних, що підтримує Java 2. C + + Builder являє собою платформу для розробки на C + +, а Delphi – популярний RAD-інструментарій. C + + Builder використовує в якості мови програмування C + +, а Delphi – Object Pascal. Обидва інструменти мають загальну IDE. Ця IDE дуже інтуїтивна, і в неї багато спільного з IDE на Visual Basic. І той, і інший інструмент мають версії для Windows, незабаром також вийдуть версії для Linux. Kylix являє собою спробу корпорації Borland створити Linux-версії C + + Builder і Delphi.


Переваги Delphi



Тепер, коли ви познайомилися з ОС Linux, її властивостями і різними інструментальними засобами розробки для Linux, давайте поговоримо про VB (Visual Basic) і Delphi. У порівнянні з можливостями VB, Delphi має значні переваги, такі як:



Це та інші переваги будуть детально описані нижче.


Мета даної статті



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


Далі в статті будуть порівнюватися і протиставлятися VB і Delphi. Порівняння проводиться на чотирьох рівнях: IDE, мова програмування, вбудований відладчик і перенесення додатків. І знову хочу нагадати, що дана стаття не є повним довідковим керівництвом; з її допомогою фахівці, вже знайомі з VB, спираючись на наявні у них знання, можуть пройти процес вивчення Delphi.


Інтегроване середовище розробки



Розробники VB виявлять багато знайомого в Delphi IDE. Багато меню, панелі інструментів, і вікна в Delphi та VB мають однаковий дизайн і призначення. Delphi підтримує всі інструменти, необхідні для сучасної RAD-середовища, і цілком зрозуміло, що розробка та організація всіх цих інструментів проводилася групою розробників Delphi дуже обдумано і завбачливо.


VB і Delphi мають вікна з однаковими іменами і функціональністю. Наприклад, обидва продукти мають вікна, що дозволяють модифікувати властивості елементів управління. Visual Basic є середовищем розробки з багатодокументним інтерфейсом (MDI); всі його вікна розміщуються в основному вікні програми. Delphi, у свою чергу, є середовищем з однодокументним інтерфейсом (SDI) з самостійними вільно-переміщуваними вікнами. У подальших параграфах будуть представлені IDE-елементи Delphi, а також проведено їх порівняння і протиставлення відповідним вікнам VB.


За замовчуванням Delphi IDE складається з наступних вікон:




  1. Панель інструментів Standard

  2. Панель інструментів View

  3. Панель інструментів Debug

  4. Панель інструментів Custom

  5. Панель інструментів Desktops

  6. Component Palette


1. Вікно Form



  1. Вікно Object Inspector

  2. Вікно Code Editor

4. Інші вікна


На рисунку 1 представлена структура Delphi IDE за замовчуванням.

Рис. 1. Встановлювана за замовчуванням інтегрована середовище розробки Delphi


Горизонтальне меню



Як і VB, Delphi має горизонтальне меню. Горизонтальне меню в Delphi являє собою типове "випадає" меню. Багато опції меню доступні через комбінації "гарячих клавіш", наведені праворуч від "Випадаючого" меню. Через горизонтальне меню розробник може отримати доступ до всіх функціональних можливостей, необхідним для створення додатку. На Малюнку 2 представлено горизонтальне меню і приклад "спадаючого" меню.


Конфіденційність



Панелі інструментів містять значки, що забезпечують швидкий доступ до стандартних завданням. VB містить чотири самостійні панелі інструментів, Standard, Debug, Edit, і Form Editor, в яких завдання розділені і організовані за їх призначенням. За замовчуванням, VB відображає тільки панель інструментів Standard. Delphi містить шість окремих панелей інструментів; усі вони будуть показані за замовчуванням.


Рис. 2. Горизонтальне меню в Delphi з активізованим "випадним" меню


Як у VB, так і в Delphi ви можете відображати різні панелі інструментів з допомогою меню View. Або ж, клацніть правою кнопкою миші по панелі інструментів Standard у VB, і на екрані відобразиться "спливаюче" меню зі списком доступних панелей інструментів. Таким же чином ви можете відкрити аналогічне "спливаюче" меню в Delphi. Крім того, панелі інструментів у VB і Delphi можна настроювати.


Панель інструментів Standard



Панель інструментів Standard (Малюнок 3) містить значки для стандартних завдань, таких як відкриття, збереження та створення Delphi-проектів та відповідних файлів.

Рис. 11. Вікно Code Editor


Code Editor в Delphi використовує колірне кодування, подібне VB-редактору. Ви можете настроювати кольори, вибравши Tools / Editor Options … і натиснувши на закладку Colors. Потім виберіть елемент, колір якого ви збираєтеся змінити. Виберіть потрібний колір, використовуючи ліву кнопку миші для зміни кольору переднього плану і праву кнопку миші для зміни кольору тла. Крім того, ви можете змінити налаштування так, щоб при відображенні елемента використовувався напівжирний шрифт або курсив.


У Code Editor підтримуються ті ж "гарячі" клавіші, що і для стандартної навігації Windows:


Аналогічно IntelliSense-технології в VB, Delphi містить набір з п'яти інструментів для розробників, відомих як Code Insight:


1. Code Completion відображає список підтримуваних типів даних, якщо ви розкажете змінну, або список властивостей і методів, у разі використання об'єкта. У міру того, як ви вводите тип даних, властивість або метод, Delphi виконує інкрементний пошук в "спадаючому" списку. За замовчуванням, даний список сортується по області дії. Для його відображення в алфавітному порядку, клацніть правою кнопкою миші по "спадаючому" списку, та виберіть Sort by Name з "спливаючого" меню. Після того, як ви знайшли елемент, який потрібно використати, натисніть клавішу Enter, щоб вибрати його і помістити в свій код.


2. Code Parameters відображає діалогове вікно з іменами і типами параметрів для функції, методу чи процедури. Таким чином, Ви можете подивитися необхідні аргументи для даної функції, методу чи процедури, коли ви вводите їх в свій код.


3. Code Templates є найбільш корисним властивістю при переході від VB до Delphi. Code Templates підтримує шаблони синтаксису для базових кодових структур. Натискання Ctrl-J активізує дане властивість і викликає "спливаюче" меню підтримуваних шаблонів. Крім того, ви можете ввести початок оператора, а потім натиснути Ctrl-J. Якщо Delphi підтримує даний оператор, то в код буде вставлений відповідний шаблон. Якщо ж Delphi не підтримує даний оператор, то з'явиться список шаблонів, які найбільш близько відповідають даному оператору. Для зміни наявних або додавання нових шаблонів коду, виберіть Tools / Editor Options …, а потім закладку Code Insight.


4. Tooltip Expression Evaluation відображає значення змінної або висловлювання у вигляді підказки під час інтерактивної налагодження.


5. Tooltip Symbol Insight відображає інформацію оголошення будь-якого ідентифікатора в Code Editor. У "спливаючому" вікні відображається вигляд ідентифікатора (процедура, функція, тип, константа, змінна, блок і т.д.), а також файл блоків і номер рядка його оголошення.


У Delphi, кожний відкритий блок має окрему закладку в Code Editor. Якщо блок, який ви хочете відредагувати, не відкрито, виберіть View / Units або View / Forms з меню. Опція View / Units відображає список всіх підтримуваних блоків у проекті. Аналогічним чином, View / Forms відображає список всіх підтримуваних форм у проекті. Відкриття форми приводить до відкриття відповідного блоку.


Іншим навігаційним властивістю в Code Editor, підтримуваним Delphi, є закладки. Delphi дозволяє встановлювати до десяти закладок в Code Editor, з нумерацією від нуля (0) до дев'яти (9). Для установки закладки, встановіть курсор на потрібну рядок коду та натисніть Shift-Ctrl-number, де number є однією з цифрових клавіш, від 0 до 9. Для переходу до вже пронумерованої закладці, натисніть Ctrl-number .


Інші вікна



На додаток до трьох вікон, що з'являтимуться за замовчуванням, Delphi підтримує ще декілька інших корисних вікон. На Рис. 11, вікно Code Explorer, яке за замовчуванням розташовується у вікні Code Editor, ліворуч від активних закладок сторінок редактора. Іншими словами, це вікно розташовується в лівій частині вікна Code Editor. Code Explorer дозволяє програмісту легко переміщатися по файлах блоків. Воно містить три діаграми, що відображають всі типи, класи, властивості, методи, глобальні змінні і глобальні процедури, визначені в блоці коду, який в даний момент редагується у вікні Code Editor. Вікно також містить список блоків, які використовуються для редагування в даний момент блоком. Якщо вікно Code Explorer ще не відкрито, відкрийте його, вибравши View / Code Explorer.


Програміст може переглядати файли, що входять до складу проекту Delphi у вікні Project Manager. У Project Manager, Delphi-проекти можна організовувати в групи проектів, де кожна група проектів буде складатися з взаємопов'язаних проектів або проектів, що функціонують разом як частини багатоланкового додатки. Крім того, дане вікно дозволяє програмісту легко переміщатися між різними проектами і які входять до їх складу файлами в межах групи проектів. Для відкриття вікна Project Manager, виберіть View / Project Manager або натисніть Ctrl-Alt-F11.


Для успішного завершення створення програми, особливо великої програми, програмісту необхідно виконати безліч завдань. Delphi підтримує вікно To-Do List, що має вбудований блокнот, в якому програміст може послідовно організовувати всі ці завдання. Даний список дуже корисний при плануванні, програмуванні, тестуванні й налагодженні великих проектів, які зазвичай пише ціла команда програмістів. Для відкриття цього вікна, виберіть View / To-Do List з горизонтального меню. Ви можете додати, відредагувати або видалити будь-який елемент списку, клацнувши правою кнопкою миші по вікну To-Do List.


Вікно Alignment Palette підтримує кошти швидкого вирівнювання компонентів у формі. Для відкриття цього вікна, виберіть View / Alignment Palette з горизонтального меню.


У вікні Project Browser перераховані блоки, класи, типи, властивості, методи, змінні і процедури, оголошені чи використовувані в поточному проекті. Project Browser організовує всю цю інформацію у вигляді трьох діаграм. Для відкриття вікна Project Browser, виберіть View / Browser або натисніть Shift-Ctrl-B.


Для відкриття Component List (або вікна Components), виберіть View / Component List з горизонтального меню. Дане вікно відображає в алфавітному порядку всі компоненти, підтримувані вашою версією Delphi. Ви можете додавати компоненти в свою Delphi-програму, вибравши необхідний компонент з даного вікна за допомогою миші або шляхом введення з клавіатури. При використанні миші, Component Palette надає більш швидкі засоби вибору і розміщення компонентів в додатки, тому що в даному вікні компоненти впорядковані за своїми функціями. Тому замість вікна Components рекомендується використовувати Component Palette.


Window List дозволяє швидко перемикатися між вікнами середовища розробки Delphi. Якщо у вас відкрито багато вікон, Window List надає найпростіший спосіб виявлення та активізації потрібного вікна. Для відкриття Window List, виберіть View / Window List або натисніть Alt-0. Потім виберіть зі списку потрібне вікно і клацніть по кнопці OK.


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


Мова програмування


У даному розділі описані типи файлів, підтримувані Delphi, і синтаксис мови Object Pascal.


Типи файлів в Delphi


Як і в VB, Delphi-додаток (зване проектом) складається з кількох різних типів файлів. У якості трьох основних типів файлів можна виділити файли проектів, файли блоків і файли форм. Файл проекту (. DPR) є "основною програмою", він звертається до файлів блоків і файлів форм, що становлять проект Delphi. Таким чином, файл проекту пов'язує разом всі файли, пов'язані з певного проекту. Зазвичай файли блоків і файли форм присутні в проекті в співвідношення один до одного, тобто кожен файл блоку має відповідних файл форми і навпаки. Файл форми (. DFM) містить об'єкти, що входять у форму, та встановлення властивостей об'єктів, а файл блоку (. PAS) містить вихідний код, пов'язаний з формою. У порівнянні з Delphi, в VB об'єкти, установки властивостей і код містяться тільки в файлі форми (. FRM).


Пам'ятайте, що ви повинні зберігати як проект, так і форми для свого Delphi-додатки. При збереженні форми, файл блоку і файл форми зберігаються під одним і тим же ім'ям з відповідними розширеннями імені файлу. Для збереження форми, виберіть File / Save or File / Save As … з горизонтального меню, клацніть мишею по значку Save на панелі інструментів Standard або натисніть Ctrl-S. Для збереження файлу проекту, виберіть File / Save Project As … з горизонтального меню. Для швидкого збереження всіх файлів, пов'язаних з даним проектом, виберіть File / Save All з меню або клацніть мишею по значку Save All на панелі інструментів Standard.


Файл проекту


Ще раз хочу нагадати, що кожен додаток складається з "основної програми", що знаходиться у файлі проекту. Даний файл пов'язує разом всі блоки, відносяться до даного додатку.


Нижче наведено загальний синтаксис файлу проекту:

program Project1;
uses
Forms,
Unit1 in “Unit1.pas” {Form1};
{$R *.RES}
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run; end.

Як видно з наведеного вище синтаксису, файл проекту складається з трьох елементів:


заголовка програми


оператор uses (необов'язковий елемент)


блок оголошень і операторів між зарезервованими словами begin і end


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


І, нарешті, ще одне попередження: Радимо Вам не міняти вручну код, генерований IDE. Це відноситься не тільки до файлів проектів, але і до файлів блоків. Іншими словами, дозвольте IDE самої виконувати за вас роботу. Наприклад, якщо ви хочете додати в проект нову форму, виберіть File / New Form або клацніть мишею по кнопці New Form на панелі інструментів View. Аналогічно, щоб додати обробник подій у файл блоку, виберіть об'єкт і подія в Object Inspector для відповідної форми, а потім введіть ім'я для обробника подій. Delphi автоматично генерує заголовок і блок для обробника подій.


Блоки


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


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

unit Unit1;
interface
uses {містить список використаних блоків}
const {містить загальнодоступні константи}
type {містить загальнодоступні типи}
var {містить загальнодоступні змінні}
{Містить частину, що залишилася розділу інтерфейсу}
implementation
uses {містить список використаних блоків}
const {містить приватні константи}
type {містить приватні типи}
var {містить приватні змінні}
{Містить частину, що залишилася розділу реалізації}
initialization {містить розділ ініціалізації}
finalization {містить розділ завершення}
end.

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


Розділ реалізації починається з зарезервованого слова "implementation" і триває до початку розділу ініціалізації (якщо такий є) або до кінця блоку. Розділ реалізації оголошує константи, типи даних, змінні і стандартні програми, що відносяться тільки до даного блоку, тобто всі ці об'єкти є приватними і недоступними для клієнтів.


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


Розділи інтерфейсу і реалізації можуть утримувати власні оператори uses, які повинні розташовуватися безпосередньо після заголовків розділів (зарезервованих слів "interface" і "implementation"). Оператор uses задає використовувані блоки. Блок System використовується автоматично кожним Delphi-додатком і не може бути явно задано в операторі uses. Блок System реалізує стандартні програми для введення і виведення файлів, обробки рядків, операцій з плаваючою точкою, динамічного розподілу пам'яті і т.д. Інші блоки бібліотеки стандартних програм, такі як SysUtils, повинні бути включені в оператор uses. У більшості випадків, Delphi встановлює всі необхідні блоки в оператор uses clause під час генерації та обслуговування вихідного файлу.


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


Елементи програмування


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


Коментарі


VB має два окремих оператора коментаря, оператор примітки (Rem) і апостроф ("). VB-компілятор завжди ігнорує обидва ці оператора. У Object Pascal, коментарі також ігноруються компілятором, за винятком випадків, коли вони виконують функцію роздільників (розмежовують суміжні маркери) або директив компілятора. Існує три способи побудови коментарів:


{Текст між відкриває і закриває круглими дужками є коментарем}


(* Текст між першою круглою дужкою з наступним символом '*' і '*' з наступною закриває круглої дужкою є коментарем *)


/ / Будь-який текст між подвійною косою рисою і кінцем рядка є коментар


Коментар, що містить символ долара ($) відразу ж після відкриваючої дужки {або (* є директивою компілятора. Директиви компілятора представляють собою не виконує, оператори в коді, що змінюють опції компілятора. Наприклад, {$ WARNINGS OFF} повідомляє компілятор Object Pascal, що він не повинен генерувати попереджувальні повідомлення. У VB, оператор Option означає директиву компілятора.


Завершення оператора


У VB, оператор завершується в кінці рядка, якщо тільки не був встановлений символ продовження рядка (символ підкреслення), що вказує на продовження оператора на наступному рядку. Object Pascal не вимагає установки символу продовження рядка; тобто оператор може розташовуватися на декількох рядках. Символ крапка з комою (;) є роздільником і обмежувачем оператора; він відділяє один оператор від іншого.


Ідентифікатори


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


Object Pascal не враховує регістр; це означає, наприклад, що ідентифікатор з ім'ям FindItem може бути записаний різними способами, як finditem, findItem, Finditem, або FINDITEM.


Типи даних


Тип даних задає, який вид даних може містити змінна. Вбудовані типи даних для Object Pascal наведені в Таблиці 1. У таблиці представлений діапазон достовірних значень для кожного типу даних і необхідний для них обсяг пам'яті. Пам'ятайте, що зазначені типи даних застосовні тільки для Windows-версії Delphi; Linux-версія не містить тип даних Variant, він відноситься тільки до Windows.


Логічні і чисельні типи даних


Таблиця 1. Типи даних Object Pascal
























































































Тип даних   Діапазон   Формат або розмір   Значущі цифри  
Shortint від -128 до +127 8-бітове зі знаком  
Smallint від -32768 до +32767 16 – бітове зі знаком  
Integer (or Longint) від-2147483648 до +2147483647 32 – бітове зі знаком  
Int64 від -263 до +263-1 64 – бітове зі знаком  
Byte від 0 до 255 8 – бітове без знака  
Word від 0 до 65535 16 – бітове без знака  
Longword (or Cardinal) від 0 до 4294967295 32 – бітове без знака  
Boolean (or ByteBool) True або False 1 байт  
WordBool True або False 2 байти  
LongBool True або False 4 байти  
Real48 від 2.9 x 10-39 до 1.7 x 1038 6 байт від 11 до 12
Single від 1.5 x 10-45 до 3.4 x 1038 4 байти від 7 до 8
Real (or Double) від 5.0 x 10-324 до 1.7 x 10308 8 байт від 15 до 16
Extended від 3.6 x 10-4951 до 1.1 x 104932 10 байт від 19 до 20
Comp від -263 +1 до +263-1 8 байт від 19 до 20
Currency від -922337203685477.5808 до +922337203685477.5807 8 байт від 19 до 20

Символьні і рядкові типи даних




























Тип даних   Максимальна довжина  Необхідний обсяг пам'яті  
Char (or AnsiChar) 1 ANSI-символ 1 байт
WideChar 1 Unicode-символ 2 байти
ShortString 255 ANSI-символів від 2 до 256 байт
String (or AnsiString) 231 ANSI-символів від 4 байт до 2 гігабайт
WideString 230 Unicode-символів від 4 байт до 2 гігабайт

Константи


Константа являє собою іменований елемент, який зберігає постійне значення протягом виконання програми. Вона може бути визначена будь-яким математичним або строковим виразом. Під час компіляції, компілятор просто заміняє ім'я константи пов'язаних з нею значенням. Чисельні константи представляють число або числовий літерал, а строкові константи представляють строковий літерал. Число 7, наприклад, є чисельної константою, а "days per week" – строковою константою.


У Object Pascal, для визначення констант використовується оператор const. Як і аналогічний VB-оператор, оператор const може декларувати групу констант. Нижче представлена загальна форма цього оператора:

Const

constantName = Expression;
[constantName = Expression;]


У наведеному вище загальному синтаксисі, квадратні дужки ([…]) використовуються для позначення необов'язкових елементів, які можуть встановлюватися будь-яку кількість разів. Наприклад, нижче наведено фрагмент коду, визначає три константи:

Const

MINS_PER_HR = 60;
HRS_PER_DAY = 24;
DAYS_PER_WK = 7;


У VB, ці ж константи будуть визначатися з використанням наступного оператора:

Const MINS_PER_HR = 60, HRS_PER_DAY = 24, _DAYS_PER_WK = 7

Змінні


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


VB використовує для оголошення змінних оператор Dim (розмірність), а Object Pascal використовує оператор var. Нижче наведено загальний синтаксис оператора var:

var
variableName[, variableName]: DataType;
[variableName[, variableName]: DataType;]

де DataType представляє заздалегідь заданий або визначений користувачем тип даних. Розглянемо як приклад такі оголошення VB-змінних:

Dim dollars As Integer, cents As Integer Dim cost As Double
Dim myMessage As String

У Delphi оголошення аналогічних змінних будуть мати вигляд:

Var

dollars: Integer;
cents: Integer;
cost: Real;
myMessage: String;


Оператори


У VB, знак рівності (=) представляє перевантажений оператор; він функціонує як оператор присвоювання і як знак операції порівняння, що позначає рівність. Однак у Object Pascal, знак рівності є тільки знаком операції порівняння, що позначає рівність; він завжди порівнює вміст змінних для визначення рівності. Оператор присвоювання у Object Pascal являє собою комбінацію з двох символів, двокрапки (:) з наступним знаком рівності (=), або: =.


Давайте розглянемо фрагмент VB-коду:

Dim value1 As Integer, value2 As Integer Dim check As Boolean
value1 = 5
value2 = 7
check = (value1 = value2)

У даному фрагменті, value1 і value2 присвоюються два різних значення, 5 і 7 відповідно. Значення булевої змінної присвоюється, виходячи з того, чи рівні значення value1 і value2. У даному випадку, змінної check присвоюється значення False, тому що значення двох зазначених змінних не рівні. Еквівалентний код в Object Pascal буде виглядати наступним чином:

var
value1: Integer;
value2: Integer;
check: Boolean;
begin
value1 := 5;
value2 := 7;
check := (value1 = value2); end;

Арифметичні і реляційні оператори в Object Pascal представлені у двох таблицях. У Таблиці 2 наведено арифметичні оператори, а в Таблиці 3 – оператори відносини. Оператори відносини в Object Pascal і VB однакові. Арифметичні оператори також однакові, за винятком цілочисельного ділення, розподілу по модулю і зведення в ступінь. У Object Pascal, цілочисельне поділ, розподіл по модулю мають вбудовані оператори, а зведення в ступінь такого не має. Для виконання операції зведення в ступінь програміст повинен викликати функцію з math-бібліотеки.


Таблиця 2. Арифметичні оператори Object Pascal

























































Операція  Оператор  Тип операнда  Тип результату  Example  
Sign Identity + (unary) integer, real integer, real + x
Sign Negation – (unary) integer, real integer, real – x
Mutliplication * integer, real integer, real x * y
Division / integer, real real x / y
Integer Division div integer integer x div y
Modulo Division mod integer integer x mod y
Addition + integer, real integer, real x + y
Subtraction integer, real integer, real x – y

Таблиця 3. Оператори відносини Object Pascal































Оператор відносини  Object Pascal  Математика 
Less than < <
Less than or equal to <= ?
Greater than > >
Greater than or equal to >= ?
Equal to = =
Not equal to <> ?

До логічним операторам у Object Pascal відносяться and, or, not і xor. За замовчуванням, Object Pascal виконує укорочені обчислення and-і or-операцій. Це означає, що він обчислює тільки таку частину висловлювання, яка необхідна для визначення кінцевого значення. Для виконання повного обчислення даних виразів, виберіть Project / Options … і клацніть мишею по закладці Compiler. Потім клацніть мишею по "Complete boolean eval "у фреймі Syntax options. Або ж, вставте в свій код директиву компілятора {$ B +}.


Як і в VB, єдиною строковою операцією в Delphi є конкатенація рядків (яка пов'язує рядки разом). VB підтримує два різних, але взаємозамінних, оператора, що виконують конкатенацію рядків, амперсанд (&) і знак плюс (+). У Object Pascal, для конкатенації рядків використовується тільки знак плюс (+). Таким чином, знак плюс (+) є перевантаженим оператором в Object Pascal; він використовується для позначення знаку, складання і конкатенації рядків.


При розмові про строкових операціях слід згадати ще про один відмінності між VB і Object Pascal, що стосується символу роздільника рядків. У VB, для розділення рядків використовуються подвійні лапки ("), а в Object Pascal використовуються одинарні лапки ("). Нижче наведено приклад рядки коду, в якій використані рядки і оператор конкатенації рядків:

myName := “Mitchell” + ” ” + “Kerman”;

Цей рядок коду еквівалентна наступній:

myName := “Mitchell Kerman”;

Схожі статті:


Сподобалася стаття? Ви можете залишити відгук або підписатися на RSS , щоб автоматично отримувати інформацію про нові статтях.

Коментарів поки що немає.

Ваш отзыв

Поділ на параграфи відбувається автоматично, адреса електронної пошти ніколи не буде опублікований, допустимий HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

*