В среде визуального программирования delphi. Анализ выбора среды программирования. Обзор приложений созданных в среде Delphi

Визуальная среда программирования Delphi . Среда программирования Delphi состоит из множества визуальных и невизуальных стандартных компонент, которые позволяют существенно ускорит процесс разработки программ. Будем рассматривать одну из самых популярных версий Delphi 7. Рабочее окно программы состоит из пяти вспомогательных окон (рис.3.1.): главное окно (1), окно списка модулей (2), окно кода программы (3), окно формы проекта (4), инспектор объектов (5), окно списка объектов (6).

Рис. 3.1. Рабочее окно Delphi7.

Главное окно состоит из строки меню, панели инструментов и палитры компонентов. Палитра компонентов состоит из 14 страниц (Standard, Additional, Win32, System и др.). Для перемещения компонента на форму необходимо сначала щелкнуть по компоненту, а потом по форме.

Окно списка модулей содержит список всех подключенных к программе модулей.

В окне кода программы непосредственно пишется программы на языке Object Pascal. По умолчанию окно кода содержит текст пустой программы, отвечающей всех требованиям программы в Delphi.

Окно формы – это Windows-окно создаваемой программы: меню, размеры окна, заголовки, рамки и любые стандартные компоненты. При работе созданной программы пользователь видит только форму.

Инспектор объектов содержит две страницы: Properties (свойства) и Events (события). На странице свойств отражаются все характеристики выбранного объекта. На странице событий отображаются все возможные действия с объектом.

Окно списка объектов содержит список всех размещенных на форме компонентов.

Структура программы в среде Delphi . Программа на любом языке программирования имеет стандартную структуру: <заголовок программы> <тело программы>. Заголовок программы в среде Delphi содержит имя модуля основной программы и область определения всех стандартных и нестандартных программ-модулей, которые используется средой для организации исполнения программы. Рассмотрим разделы шаблона программы в среде.

Заголовок всегда начинается со слова unit . Стандартное имя программы Unit1. Для изменения имени программы достаточно сохранить программу под новым именем.

Раздел interface начинается с перечисления в предложении uses стандартных модулей. Например, модуль SysUtils разработан для использования в языке всех стандартных функций. Среда Delphi автоматически вставляет в шаблон разрабатываемой программы список необходимых модулей. Но есть модули, которые необходимо пользователю вписать вручную. Далее в разделе interface под заголовком type объявляются все создаваемые в программе типе данных. Здесь под заголовком private объявляются переменные, доступные только в этом модуле, а под заголовком public – доступные во всех модулях программы. Шаблон пустой программы в среде Delphi представлен на рисунке 3.2.

Рис. 3.2. Шаблон пустой программы в Delphi7

Объявление типов заканчивается тогда, когда появляется в программе заголовок следующего раздела. В приведенном примере это ключевое слово var. В этом разделе будут объявлены все переменные по определенным в программе типам данных. В приведенном шаблоне есть только одна переменная Form1, которая является объектом объявленного класса TForm1. Со строки unit до слова implementation находится заголовок программы. После этого слова располагаются описания всех действий в программе. Первое обязательное действие – это директива $R, обеспечивающая объединение модуля формы и модуля программы в один проект – программу. Конец текста программы-модуля определяется словом end с точкой.

Среда Delphi создает программу из нескольких файлов, которые обеспечивают настройку проекта на среду, установку параметров компилятора и другие файлы. Самый большой по размеру файл – это файл с расширением exe, который и является готовой программой. Рабочими файлами являются файлы с расширениями dpr и pas. В файле с расширением cfg обеспечивается настройка опций проекта. Файл с расширением dof обеспечивает установку параметров компилятора. Файл с расширением res определяется как файл ресурсов. Он содержит и стандартную иконку проекта, которую разработчик может заменить. Файл с расширением dcu – это оттранслированный файл модуля. Если модулей несколько, то они будут объединены в единый проект. Файл с расширением dfm содержит характеристики всех стандартных компонент формы.

Типы данных в Delphi 7 . Каждый вариант данных при разработке программы должен быть отнесен к какому-то конкретному типу данных. Для каждого типа есть свой специфический набор операций. Работать с данными определенного типа можно только создания переменных этого типа. Тип данных определяет формат значений, который может принимать переменная этого типа. Типы данных принято разделять на простые, структурированные, динамические, строковые и процедурные. К простым типам относятся вещественные, тип дата-время, целые, логические, символьные, перечислимые. К структурированным типам относятся массивы, записи, множества, файлы, классы.

Для записи целых чисел используются те же (плюс добавляются некоторые свои) типы данных, что и на языке Turbo Pascal 7.0., но только с другими диапазонами значений (табл. 3.29.).

Целый тип данных

Диапазон значений

Размер в байтах

2147483648…2147483647

Соответствует типу integer

2 63 …2 63 – 1

Соответсвует типу cardinal

Таблица 3.29. Целые типы данных в Delphi7.

Часто при создании программ необходимо перевести число в строку или наоборот. Для этого существуют функции: StrToInt(s) и IntToStr(x), первая из которых переводит строку s в число, вторая – число х в строку.

Вещественные (действительные) числа характеризуются наличием десятичной запятой в записи числа. Запись таких чисел обеспечивается с некоторой точностью, определяющей количество разрядов в экспоненциальной записи числа. В Delphi 7 используются 6 вещественных типов (таблица 3.30.).

Вещественный

тип данных

Максимальное значение

Количество цифр

Размер в байтах

9223337203685477.5807

Таблица 3.30. Вещественные типы данных в Delphi7.

Наибольшая производительность обеспеченна для типа real. Для переводов вещественного числа в строку и наоборот существуют функции StrToFloat(s) и FloatToStr(x).

Логический тип данных так же как и в Turbo Pascal 7.0. содержит две переменные: true (истина) и false (ложь). Использование логических переменных позволяет существенно улучшит алгоритм решения задач за счет контроля некоторых особых вариантов решения задачи.

Строковый (string) и символьный (char) типы данных в Delphi 7 аналогичны этим же типам в Turbo Pascal 7.0. Существуют еще 3 строковых типа данных (Shortstring,Ansistring,Widestring), которые отличаются длинной и используются, как правило, для совместимости с другими версиями.

Тип дата-время (TDateTime) введен для удобства пользователя. При этом дата и время могут быть записаны в нескольких формах.

Константы и массивы записываются аналогично записи в Turbo Pascal 7.0.

Применение всех описанных типов данных, функций для работы с ними и процесс создания конкретных программ будут рассмотрены в практикуме.

Вопросы для размышления:

1. На каком языке пишутся программы в среде Delphi 7?

2. Из каких частей состоит рабочее окно программы Delphi 7?

3. Из скольких файлов создается программа в Delphi 7?

4. Какие существуют типы данных в Delphi 7?

5. Чем могут отличаться одноименные типы данных в Turbo Pascal 7.0. и Delphi 7?


Отчёт к практической работе содержит 23 страницы, 2 рисунка, 7 таблиц, 9 приложений и 3 источника.

Объект исследования - Среда разработки и язык программирования Delphi, его графические средства.

Целью данной работы является изучение языка программирования Delphi, использование синтаксических и графических средств Delphi, сравнение сред разработки и синтаксиса языков программирования C++ и Delphi. Для сравнения используются среды программирования Microsoft Visual C++ и Delphi 7. Сравнение осуществляется посредством реализации решения девяти определенных задач на Delphi.

DELPHI 7, ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ, MICROSOFT VISUAL C++, СРЕДА РАЗРАБОТКИ, СРАВНЕНИЕ С++ И DELPHI

Введение

1. Сравнение языков с/с++ и pascal/Delphi

1.1 Простые типы данных

1.2 Структурные типы данных

1.2.1 Строковые переменные

1.2.2 Массивы

1.2.3 Множества

1.2.4 Файлы

1.2.5 Классы

1.3 Указатели

2. Сравнение сред разработки

2.1 Borland Delphi 7

2.2 Microsoft Visual C++

Заключение

Перечень ссылок

Приложение А

Приложение Б

Приложение В

Приложение Г

Приложение Д

Приложение Е

Приложение Ж

Приложение З

Приложение И

ВВЕДЕНИЕ

На данный момент, значительная часть программного обеспечения реализуется методами объектно-ориентированного программирования. Сейчас эта область программирования очень востребована. Поэтому освоение этого стиля программирования является очень актуальным.

Для изучения данного стиля программирования был выбран язык Delphi 7, с помощью которого изучена методика объектно-ориентированного проектирования программ по формализации и решению задачи, технологическими приемами разработки объектно-ориентированных программ.

Причина выбора данного языка программирования также заключается в его графических средствах.

Delphi -- это средства разработки в программировании, которые имеют место быть в рамках приложений Microsoft Windows. Delphi представляет собой актуальную и легкую в использовании программу, которая необходима для генерации автономных программ графического интерфейса или 32-битовых консольных приложений -- программ, которые существуют вне рамок GUI, вместо этого, в соответствии с так называемым «DOS box».
Delphi является первым языком программирования, который обеспечивает уничтожение барьера между приложениями комплексного и упрощенного характера в использовании и низкоуровневыми битовыми программными средствами.

1. СРАВНЕНИЕ ЯЗЫКОВ С/С++ И PASCAL/DELPHI

1.1 Простые типы данных

Тип определяет множество значений, которые могут принимать элементы программы, и совокупность операций, допустимых над этими значениями.

Типы данных можно разделить на следующие группы:

Структурные;

Указатели;

Процедурные(только в Delphi);

Простые типы не содержат в себе других типов, и данные этих типов могут одновременно содержать одно значение. К простым относятся следующие типы:

Целочисленные;

Литерные (Символьные);

Логические (Булевы);

Вещественные.

В таблице 1.1 можно увидеть сравнение наиболее часто встречаемых простых типов в языках программирования C++ и Delphi.

Таблица 1.1 - Сравнение простых типов данных в С++ и Delphi

Для каждого типа данных существуют отдельные функции, упрощающие работу с ними. В таблице 1.2 приведены некоторые функции для переменных с простыми типами данных в синтаксисе С++ и Delphi.

Таблица 1.2 - Функции для простых типов данных в С++ и Delphi

Различия можно заметить не только в самих типах данных, но и в работе с переменными. Для создания переменной в C++ нужно написать тип имя переменной. В Delphi же, создание переменной выглядит так: имя переменной, двоеточие, имя типа. Более того, в С++ переменную можно объявить в любом месте программы, а в Delphi Только в разделе var. Для присваивания в C++ используется знак =, в Delphi - :=. Операция присваивания в обоих языках программирования берёт то, что находится справа от знака и помещает это в переменную, находящуюся слева от знака присваивания.

Рассмотрим же основные операции для работы с переменными простых типов данных. В таблице 1.3 приведено сравнение их в языках C++ и Delphi.

Таблица 1.3 - Основные операции

Операция

Сложение

Вычитание

Умножение

Деление(целочисленное, простое)

/ (зависит от типа данных)

Остаток от деления

Присваивание

Проверка равенства

Составное сложение

Отсутствует

Составное вычитание

Отсутствует

Составное умножение

Отсутствует

Составное деление

Отсутствует

Составное определение остатка от деления

Отсутствует

Инкремент

Декремент

Логическое НЕ

Больше либо равно

Меньше либо равно

Логическое ИЛИ

Логическое И

Логическое исключающее ИЛИ

Указатель

Указатель структуры

Определение размера в байтах

Поразрядное НЕ

Поразрядное И

Поразрядное ИЛИ

Поразрядное исключающее ИЛИ

Поразрядный сдвиг влево

Поразрядный сдвиг вправо

При сравнении операторов можно заметить явный недостаток Delphi, который проявляется в отсутствии составных операций (>=, <=, +=, -=, *=, /=, %=).

1.2 Структурные типы данных

Теперь перейдем к сравнению структурных типов данных. Структурные типы имеют в своей основе один или более других типов, в том числе и структурных. К структурным типам относятся:

Множества;

1.2.1 Строковые переменные

В Delphi строки обеспечивает тип string, который представляет строку с максимальной длиной около 2х символов. Символы строки кодируются в коде ANSI. Так как строки фактически являются массивами символов, то для обращения к отдельному символу строки можно указать название строковой переменной и номер (позицию) этого символа в квадратных скобках, например, strName [i].

В С++ существует 2 типа строк: массив переменных типа char и специальный класс string. В отличии от типа char, string является классом. Это объясняет необходимость подключения заголовочного файла и наличие множества функций для работы с переменной типа String. Доступ к элементу строки так же можно получить через его номер в строке, указанном в квадратных скобках. Например, strName [i].

1.2.2 Массивы

Массивы в сравниваемых языках схожи. Элементами массива могут быть данные различных типов, включая структурированные. Каждый элемент массива однозначно определяется именем массива и индексом (номером этого элемента в массиве) или индексами, если массив многомерный. Для обращения к отдельному элементу массива указываются имя этого массива и номер (номера) элемента, заключенный в квадратные скобки. Однако, в Delphi, описание массива производится в разделе описания типов данных, тогда как в C++ - в любой точке программы.

1.2.3 Множества

Типы данных «множества» аналогичны перечислимым и интервальным типам данных, однако переменные множественных типов могут иметь несколько значений из описанного перечисления в каждый момент времени работы программы, причем каждое значение не может присутствовать в множестве дважды в одно и то же время. Описание переменной множественного типа на Delphi выглядит следующим образом:

<Переменная>: Set Of <Тип>;

set<Тип> <Переменная>;

В C++ Set (множество) - это ассоциативный контейнер STL, хранящий отсортированный набор уникальных объектов. Контейнер set содержит множество элементов. Строго говоря, set обеспечивает следующую функциональность:

1. Добавить элемент в рассматриваемое множество, при этом исключая возможность появления дублей;

2. Удалить элемент из множества;

3. Узнать количество (различных) элементов в контейнере;

4. Проверить, присутствует ли в контейнере некоторый элемент.

1.2.4 Файлы

Файлом называют способ хранения информации на физическом устройстве. В C++ отсутствуют операторы для работы с файлами. Все необходимые действия выполняются с помощью функций, включенных в стандартную библиотеку. Работа с файлами в C++ и в Delphi похожа, и складывается из трех шагов:

Файл открывается. Это означает, что программа "захватывает" заданный по имени файл, сообщает Windows, что далее она будет с ним работать. Данный шаг нужен, чтобы не возникало конфликтов, когда несколько программ одновременно хотят записывать информацию в один и тот же файл. Правда, считывать данные из файла, очевидно, допустимо одновременно множеством программ, поэтому в операции открытия файла обычно уточняется, что файл открывается "на чтение" (считывание информации, которая не меняется) либо "на запись" (данные в файле модифицируются).

Операция открытия файла возвращает некий идентификатор (как правило, целое число), которое идентифицирует в программе в дальнейшем нужный открытый файл. Этот идентификатор запоминается в переменной; обычно такая переменная называется файловой переменной.

Ведется работа с файлом. Из него данные либо считываются, либо в него записываются.

Файл закрывается. После этой операции он снова доступен другим программам для обработки.

В таблице 1.4 показано сравнение работы с файлами в C++ и в Delphi.

Таблица 1.4 - сравнение работы с файлами в C++ и в Delphi

Действие

Объявление файла

FILE *идентификатор;

var идентификатор: File ;

Открытие файла для записи

fopen(имя физического файла, “w”)

fopen(f, “w”);

AssignFile(имя логического файла, название файла);
ReWrite(имя логического файла);

AssignFile(myFile, "Test.txt");
ReWrite(myFile);

Запись в файл

fwrite(адрес записываемой величины, размер одного экземпляра, количество записываемых величин, имя логического файла);

fwrite(&dat, sizeof(int), 1, f);

WriteLn(имя логического файла, текст);

WriteLn(myFile, "Hello World");

Закрытие файла

fclose(имя логического файла);

CloseFile(имя логического файла);

CloseFile(myFile);

Открытие файла для чтения

fopen(имя физического файла, “r”)

Чтение из файла

fread(адрес величины, размер одного экземпляра, количество считываемых величин, имя логического файла);

fread(&dat, sizeof(int), 1, f);

ReadLn(имя логического файла, переменная для считывания);

ReadLn(myFile, text);

Проверка на конец файла

Открытие текстового файла, для добавления записей в файл (добавляет в конец файла)

fopen(имя физического файла, “a”)

Append(имя логического файла);

1.2.5 Классы

Механизм классов в C++ позволяет пользователям определять собственные типы данных. По этой причине их часто называют пользовательскими типами. Класс может наделять дополнительной функциональностью уже существующий тип.

Определение класса в C++ состоит из двух частей: заголовка, включающего ключевое слово class, за которым следует имя класса, и тела, заключенного в фигурные скобки. После такого определения должны стоять точка с запятой:

class ClassA { /* ... */ };

Внутри тела объявляются данные-члены и функции-члены и указываются уровни доступа к ним. Таким образом, тело класса определяет список его членов. Каждое определение вводит новый тип данных. Даже если два класса имеют одинаковые списки членов, они все равно считаются разными типами. После того как тип класса определен, на него можно ссылаться двумя способами:

1. написать ключевое слово class, а после него - имя класса;

2. указать только имя класса.

Оба способа сослаться на тип класса эквивалентны. Первый заимствован из языка C и остается корректным методом задания типа класса, а второй введен в C++ для упрощения объявлений.

Функции-члены класса объявляются в его теле. Это объявление выглядит точно так же, как объявление функции в области видимости пространства имен.

Функции-члены отличаются от обычных функций следующим:

1. Функция-член объявлена в области видимости своего класса, следовательно, ее имя не видно за пределами этой области. К функции-члену можно обратиться с помощью одного из операторов доступа к членам - точки (.) или стрелки (->):

ptrScreen->home();

myScreen.home();

2. Функции-члены имеют право доступа как к открытым, так и к закрытым членам класса, тогда как обычным функциям доступны лишь открытые. Конечно, функции-члены одного класса, как правило, не имеют доступа к данным-членам другого класса.

В Delphi описание классов разделено на две части -- интерфейсную («заголовочную») и описательную. В интерфейсной части располагается заголовок класса, в котором указываются название класса, идентифицирующее его в программе, а также описания свойств и заголовков методов. В описательной части располагается программный код (реализация) методов, заголовки которых указаны в интерфейсной части описания класса. Интерфейсная часть описания класса располагается в разделах описания типов данных модулей и основных частей программ. Выглядит она следующим образом:

<Имя класса> = class {Заголовок описания}

<Имя свойства 1>: <Тип свойства 1>; {Описание свойства 1}

<Имя свойства М>: <Тип свойства N>; {Описание свойства N}

<Заголовок метода 1>; {Описание метода 1}

<Заголовок метода М>; {Описание метода М}

Описательная часть класса находится в разделе описания локальных подпрограмм. Методы, заявленные в интерфейсной части реализуются по обычным правилам описания процедур и функций. Для связи подпрограмм с классом, методами которого они являются, название класса указывается перед именем самой подпрограммы:

Procedure <Имя класса>.<Имя метода>(<Список параметров>);

или для методов-функций:

Function <Имя класса>.<Имя метода>(<Список параметров>):

<Тип значения>;

Отличие методов от обычных процедур и функций состоит в том, что они могут обращаться к свойствам классов по имени без указания объектов. На этапе выполнения программы такие обращения будут перенаправлены к свойствам объектов, из которых вызываются соответствующие методы.

В таблице 1.5 показано сравнение парадигм объектно-ориентированного программирования на языках программирования C++ и Delphi на примерах.

Таблица 1.5 - Сравнение парадигм ООП в C++ и Delphi

Наименование парадигмы

Инкапсуляция

int a, b; //данные открытого интерфейса

int ReturnSomething(); //метод открытого интерфейса

int Aa, Ab; //скрытые данные

void DoSomething(); //скрытый метод

TMyClass = class

FMyField: Integer;

procedure SetMyField(const Value: Integer);

function GetMyField: Integer;

property MyField: Integer read GetMyField write SetMyField;

Наследование

class A{ //базовый класс

class B: public A{ //public наследование

class C: protected A{ //protected наследование

class Z: private A{ //private наследование

TAncestor = class

// Виртуальная процедура

procedure VirtualProcedure; virtual; abstract;

procedure StaticProcedure;

Наследник:

TDescendant = class(TAncestor)

// Перекрытие виртуальной процедуры

procedure VirtualProcedure; override;

procedure StaticProcedure;

Полиморфизм

//Перегруженная функция

virtual void f()

std::cout << "A::f";

class B: public A

//Перегруженная функция

std::cout << "B::f";

// базовый класс

constructor Create(name:string);

function f: string; virtual;

// производный от базового

constructor Create(name:string;gr:integer);

// Перегруженная функция

function f: string; override;

// производный от базового

constructor Create(name:string;dep:string);

// Перегруженная функция

function f: string; override;

Подробное описание понятия инкапсуляции связано с понятием области видимости идентификатора. Область видимости идентификатора (имени переменной, процедуры, функции или типа данных) - это часть программного кода, в которой возможен доступ к этому идентификатору. Область видимости идентификатора компонента, объявленного в описании класса, простирается от его объявления до конца определения класса, а также распространяется на все потомки этого класса и на все блоки реализации методов класса. Область видимости идентификатора компонента зависит от атрибута видимости раздела, в котором объявлен идентификатор.

В таблице 1.6 приведены атрибуты видимости в Delphi и в C++.

Таблица 1.6 - Атрибуты видимости

Атрибут видимости

Private- доступ открыт самому классу (т.е. функциям-членам данного класса)

Protected - доступ открыт классам, производным от данного

Public- доступ открыт всем, кто видит определение данного класса

Published - Поля, свойства и методы, описанные в данном разделе, называются опубликованными. Их область видимости эквивалентна области видимости общедоступных описаний. Отличие состоит в том, что информация о них, за исключением ряда типов, например real, на этапе проектирования программы помещается в инспектор объектов. Описания, расположенные сразу после заголовка класса, при включенной директиве компилятора {$M+}, по умолчанию принимаются опубликованными.

1.3 Указатели

Указатель (пойнтер, англ. pointer) -- переменная, диапазон значений которой состоит из адресов ячеек памяти и специального значения -- нулевого адреса. Значение нулевого адреса не является реальным адресом и используется только для обозначения того, что указатель в данный момент не может использоваться для обращения ни к какой ячейке памяти.

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

Переменные, размещаемые в куче, называются динамическими. Часто они не содержат связанных с ними идентификаторов, и ссылаться на них можно только с помощью указателей и ссылок.

И C++ и Delphi содержат, две основные операции над указателями: присваивание и разыменование. Первая из этих операций присваивает указателю некоторый адрес. Вторая служит для обращения к значению в памяти, на которое указывает указатель.

При объявлении переменной типа указатель в C++, необходимо определить тип объекта данных, адрес которых будет содержать переменная, и имя указателя с предшествующей звездочкой (или группой звездочек). Формат объявления указателя:

спецификатор-типа [ модификатор ] * описатель.

Спецификатор-типа задает тип объекта и может быть любого основного типа, типа структуры, смеси (об этом будет сказано ниже). Задавая вместо спецификатора-типа ключевое слово void, можно своеобразным образом отсрочить спецификацию типа, на который ссылается указатель. Переменная, объявляемая как указатель на тип void, может быть использована для ссылки на объект любого типа. Однако для того, чтобы можно было выполнить арифметические и логические операции над указателями или над объектами, на которые они указывают, необходимо при выполнении каждой операции явно определить тип объектов. Такие определения типов может быть выполнено с помощью операции приведения типов.

В качестве модификаторов при объявлении указателя могут выступать ключевые слова const, near, far, huge. Ключевое слово const указывает, что указатель не может быть изменен в программе. Размер переменной объявленной как указатель, зависит от архитектуры компьютера и от используемой модели памяти, для которой будет компилироваться программа. Указатели на различные типы данных не обязательно должны иметь одинаковую длину.

Для модификации размера указателя можно использовать ключевые слова near, far, huge.

Ниже, приведены некоторые примеры объявления указателей на C++.

unsigned int * a;

addres = & nomer;

(double *)addres ++;

Переменная addres объявлена как указатель на объект любого типа. Поэтому ей можно присвоить адрес любого объекта (& - операция вычисления адреса). Однако, ни одна арифметическая операция не может быть выполнена над указателем, пока не будет явно определен тип данных, на которые он указывает. Это можно сделать, используя операцию приведения типа (double *) для преобразования addres к указателю на тип double, а затем увеличение адреса.

В Delphi существует 2 вида указателей: типизированные и нетипизированные. Нетипизированный указатель представляет собой переменную, в которой хранится адрес некоторой области памяти некоторого размера, и предназначен для хранения произвольных данных. Типизированные ссылки указывают на место в памяти, где хранятся данные определенного типа.

Переменные - нетипизированные указатели описываются с указанием типа Pointer, а выделение и освобождение памяти под них осуществляется, соответсвенно, командами GetMem и FreeMem . Использование нетипизированных указателей ограничено стандартными функциями, принимающими такие переменные в качестве параметров, а также низкоуровневым программированием.

Для описания типизированной ссылки не предусмотрен какой-либо специальный тип данных, в отличие от нетипизированных указателей, имеющих тип Pointer. Поскольку ссылочная переменная такого рода всегда указывает на данные конкретного типа, то ее описание и строится на основе этого типа. Для указания на ссылочную природу переменных используется оператор «^», и описание выглядит следующим образом:

Var <Переменная>:^<Название типа>;

Или в разделе описания типов данных:

Туре <Новый тип данных> =^<Тип данных>;

После описания переменной-указателя под нее выделяется память только для хранения адреса, а под сами данные, на которые переменная указывает, память не выделяется. Для инициализации переменной используется процедура New, отличием которой от аналогичной процедуры GetMem, используемой для работы с нетипизированными указателями, является отсутствие второго параметра, определяющего размер выделяемой памяти. Это связано с тем, что типизированная ссылка указывает на данные известного типа, соответственно, размер этих данных также известен компилятору.

В таблице 1.7 приведены некоторые отличия синтаксисов C++ и Delphi в области указателей.

Таблица 1.6 - Отличие указателей в C++ и Delphi

Как мы видим, есть некоторые отличия в работе с указателями и адресами в C++ и в Delphi, однако общая структура работы с ними свойственна обоим языкам.

2. СРАВНЕНИЕ СРЕД РАЗРАБОТКИ

2.1 Borland Delphi 7

После загрузки среды программирования Delphi 7, на экране появится главное окно.

Верхнюю часть окна занимает меню и панель инструментов. В левой части окна находятся Object TreeView и Object Inspector. В центре находится форма разрабатываемого приложения и форма для внесения кода.

Object TreeView - служит для отображения всех объектов расположенных на текущей форме разрабатываемого проекта.

Object Inspector - служит для отображения и редактирование свойств компонентов расположенных на форме разрабатываемого приложения.

Проект - это совокупность файлов, которые используются средой разработки для итоговой генерации программы. Когда мы будем создавать с вами первый проект, то познакомимся со всеми составляющими проекта и его структурой.

Теперь рассмотрим состав главного меню. Оно позволяет вызывать все инструменты, необходимые для работы с проектом. Ниже приведены назначение раздела меню и связанные с ними функции:

File - содержит набор команд для работы с файлами, позволяет создавать новые проекты, добавлять новые файлы в проект на основе различных шаблонов, переименовывать файлы проекта, а также распечатывать их. Сюда же включена команда закрытия среды разработки;

Edit - здесь, в соответствии с названием, расположены команды, предназначенные для редактирования текста, удаления и перемещения его в буфер обмена, вставки текста из буфера и отмены операций редактировании. Search - содержит набор команд для работы с текстом, его поиска и замены, причем и то и другое может производится как в одном файле, так и во всех файлах проекта, либо в любом каталоге и его подкаталогах;

View - под этим названием объединены команды вызова инструмента управления проектом, такие как инспектор объектов, конструктор форм, менеджер проектов и т.д.;

Project - предназначен для того чтобы добавлять и удалять модули проекта, сохранять проект, добавлять проекты в группу и убирать их из неё, компилировать как отдельные проекты, так и все проекты в группе, загружать файл самого проекта в редактор кода, а также вызывать диалог настройки свойств проекта;

Run - позволяет запускать проект на выполнение как под отладчиком, так и без него, конфигурировать строку параметров проекта при запуске, производить отладку, задать точки останова, осуществлять пошаговое выполнение кода, просматривать значения переменных и изменять их;

Component - здесь сосредоточены команды, предназначенные для установки новых компонентов и пакетов компонентов и создания новых компонентов и шаблонов компонентов;

Database - здесь сосредоточены команды управления базами дынных;

Tools - позволяет настраивать свойства рабочей среды Delphi и отладчика, произвести настройки репозитория, добавлять и удалять дополнительные утилиты, а так же команды запуска этих самых утилит;

Window - позволяет переключаться между окнами, если вы отроете какой - либо модуль для редактирования в новом окне;

Help - объединяет команды вызова справочной системы Delphi и её настройки, а так же позволяет обратиться к Web-ресурсам компании Borland для получения дополнительной информации.

Можно вручную настроить панель инструментов. Это было сделано для удобства работы. Для этого нужно вызвать диалоговое окно по ссылке View-Toolbars-Customize.

Процесс компиляции состоит из двух этапов. На первом этапе выполняется проверка текста программы на отсутствие ошибок, на втором -- генерируется исполняемая программа (ехе-файл).

После ввода текста функции обработки события и сохранения проекта можно из меню Project выбрать команду Compile и выполнить компиляцию. Процесс и результат компиляции отражаются в диалоговом окне Compiling (РИС. В38). В это окно компилятор выводит ошибки (Errors), предупреждений (warnings) и подсказок (Hints). Сами сообщения об ошибках, предупреждения и подсказки отображаются в нижней части окна редактора кода

На рисунке 2.1 изображено главное окно среды разработки Delphi 7.

Рисунок 2.1 - Главное окно Delpi 7

2.2 Microsoft Visual C++

В семействе продуктов Visual Studio используется единая интегрированная среда разработки (IDE), состоящая из нескольких элементов: строки меню, панели инструментов Стандартная, различных закрепленных или автоматически скрываемых окон инструментов в левой, нижней или правой областях, а также области редакторов. Набор доступных окон инструментов, меню и панелей инструментов зависит от типа проекта или файла, в котором выполняется разработка.

Рисунок 1. Начальная страница MV C++

Расположение окон инструментов и других элементов интегрированной среды разработки может изменяться в зависимости от примененных параметров и настроек, выполняемых пользователем в процессе работы. Параметры можно изменить с помощью средства Import and Export Settings Wizard. Выбрав параметр Сбросить все параметры, можно изменить язык программирования по умолчанию.

Можно легко перемещать и закреплять окна с помощью визуального направляющего ромба или временно скрывать окна с помощью функции автоскрытия. Дополнительные сведения см. в разделе Практическое руководство. Размещение и закрепление окон.

Интегрированную среду разработки можно автоматизировать и расширить с помощью модели автоматизации Visual Studio.

Решения и проекты содержат элементы, которые представляют ссылки, подключения данных, папки и файлы, необходимые для создания приложения. Контейнер-решение может содержать несколько проектов, тогда как контейнер-проект обычно содержит несколько элементов.

Solution Explorer выводит на экран решения, содержащиеся в них проекты и элементы этих проектов. В обозревателе решений можно открывать файлы для редактирования, добавлять новые файлы в проект и просматривать свойства решений, проектов и элементов.

В среде Visual Studio предусмотрен мощный набор средств построения и отладки. Благодаря конфигурациям построения можно выбирать компоненты для построения, исключать компоненты, которые не требуется включать в построение, а также определять, как будут построены выбранные проекты и для какой платформы. Конфигурации построений доступны как для решений, так и для проектов.

При построении начинается процесс отладки. Построение приложений позволяет обнаруживать ошибки времени компиляции. К этим ошибкам могут относиться неверный синтаксис, ошибки в зарезервированных словах и несовпадения типов. Эти типы ошибок отображаются в Окно выходных данных. После завершения построения приложения можно использовать отладчик для обнаружения и устранения таких проблем, как логические и семантические ошибки, обнаруженные во время выполнения. В режиме приостановки выполнения можно просматривать локальные переменные и другие связанные данные, используя такие средства, как Окна переменных и Окно памяти.

ЗАКЛЮЧЕНИЕ

программирование delphi класс массив

При выполнении данной практической работы были изучены и освоены средства языка программирования Delphi. Так же результатом данной работы является сравнение языков C++ и Delphi. Были освоены графические средства языка. В ходе работы использовались методы объектно-ориентированного программирования и проектирования, метод перебора, метод накопления.

Была организована работа с текстовыми и бинарными файлами прямого доступа, работа с динамическими структурами данных, работа с символьными и такстовыми данными, рекурсия, наследование, инкапсуляция, полиморфизм, работа с компонентами Delphi, такими как StringGrid, Memo, Edit, RichEdit, Label, Button, GroupBox, Timer и т.п.

Результатом работы являются девять программ, написанных на языке программирования Delphi с использованием графических средств и объектно-ориентированной системы.

ПЕРЕЧЕНЬ ССЫЛОК

Сухарев М. Основы Delphi профессиональный подход.- НиТ - Санкт Петербург, 2004г.-596.

Стиввенс Р. Delphi Готовые алгоритмы. - ДМК - Москва, 2004г - 380.

Банкел Д., Фундаментальные алгоритмы и структуры данных в Delphi.-DS - Москва, 2003г. - 555с.

Подобные документы

    Изучение общей структуры языка программирования Delphi: главные и дополнительные составные части среды программирования. Синтаксис и семантика языка программирования Delphi: алфавит языка, элементарные конструкции, переменные, константы и операторы.

    курсовая работа , добавлен 17.05.2010

    Delphi - среда быстрой разработки, в которой в качестве языка программирования используется типизированный объектно-ориентированный язык Delphi. Варианты программного пакета. Особенности работы, вид экрана после запуска. Описание структуры программы.

    курсовая работа , добавлен 25.11.2014

    Проектирование программного модуля в среде программирования Borland Delphi 7.0. Схемы алгоритмов решения задач по темам "Символьные переменные и строки", "Массивы", "Работа с файлами", "Создание анимации". Реализация программного модуля, код программы.

    отчет по практике , добавлен 21.04.2012

    Эффективные средства разработки программного обеспечения. Технология визуального проектирования и событийного программирования. Конструирование диалоговых окон и функций обработки событий. Словесный алгоритм и процедуры программы Borland Delphi 7 Studio.

    дипломная работа , добавлен 21.05.2012

    Delphi как среда разработки программ, ориентированных на работу в Windows. Назначение и преимущество использования электронных учебников. Описание возможностей среды Delphi 5 для разработки электронного учебника. Варианты применения служб Internet.

    дипломная работа , добавлен 13.07.2011

    Предмет объектно-ориентированного программирования и особенности его применения в средах Паскаль, Ада, С++ и Delphi. Интегрированная среда разработки Delphi: общее описание и назначение основных команд меню. Процедуры и функции программы Delphi.

    курсовая работа , добавлен 15.07.2009

    Основные приемы работы в среде программирования Delphi. Особенности технологии создания простейших приложений. Работа с компонентами среды разработки приложений. Ввод, редактирование, выбор и вывод информации. Аспекты использования структуры ветвления.

    методичка , добавлен 17.11.2011

    Особенности разработки приложений для операционной системы с помощью императивного, структурированного, объектно-ориентированного языка программирования Delphi. Формальное начало программы. Выделение конца программного блока. Листинг и описание программы.

    курсовая работа , добавлен 04.08.2014

    Borland Delphi 7 как универсальный инструмент разработки, применяемый во многих областях программирования, функции: добавление информации об абитуриентах в базу данных, формирование отчетов. Рассмотрение и характеристика основных компонентов Delphi.

    контрольная работа , добавлен 18.10.2012

    Обзор средств программирования. Описание и свойства языка Delphi. Основания для разработки, ее назначение, предъявляемые требования, стадии разработки. Описание схемы основного модуля, процедур, программы. Используемые технические и программные средства.

Delphi - это потомок среды программирования TurboPascal. Название среды произошло от названия города в Древней Греции, где находился знаменитый Дельфийский оракул (храм Аполлона в городе Дельфы, жрецы которого занимались предсказаниями).

Создание прикладных программ, или приложений, в Delphi выполняется в интегрированной среде разработки IDE (Integrated Development Environment). IDE служит для организации взаимодействия с программистом и включает в себя ряд окон, содержащих различные элементы управления. С помощью средств интегрированной среды разработчик может проектировать интерфейсную часть приложения, а также писать программный код, и связывать его с управляющими элементами. При этом вся работа по созданию приложения, включая отладку, происходит в IDE.

Интегрированная среда разработки Delphi (Delphi IDE) является многооконной системой. Она включает в себя все необходимое для быстрой разработки Windows-приложений, и может гибко настраиваться.

Тем не менее, как и всякая другая программа, Delphi имеет некоторый стандартный, предусмотренный разработчиками вид, в котором она предстает при первом запуске. В таком "стандартном" варианте среда Delphi имеет 6 окон. Это: главное окно (Delphi 10 Seattle - Project1), окно дерева объектов (Object TreeView), окно инспектора объектов (Object Inspector), окно конструктора форм (Form1), а так же совмещенное окно редактора кода и проводника кода. При этом окно проводника пристыковано к левому краю окна редактора. Впрочем, ничего не мешает отсоединить проводник от редактора, или, наоборот, состыковать все окна, кроме главного и конструктора форм, в одном окне, или объединить их по какому-либо иному принципу.

Среда предназначена для быстрой (RAD) разработки прикладного ПО для операционных систем Windows, Mac OS X, а также IOS и Android. Благодаря уникальной совокупности простоты языка и генерации машинного кода, позволяет непосредственно, и, при желании, достаточно низкоуровнево взаимодействовать с операционной системой, а также с библиотеками, написанными на C/C++. Созданные программы не зависимы от стороннего ПО, как-то Microsoft .NET Framework, или Java Virtual Machine. Выделение и освобождение памяти контролируется в основном пользовательским кодом, что, с одной стороны, ужесточает требования к качеству кода, а с другой - делает возможным создание сложных приложений, с высокими требованиями к отзывчивости (работа в реальном времени). В кросс-компиляторах для мобильных платформ предусмотрен автоматический подсчёт ссылок на объекты, облегчающий задачу управления их временем жизни.

Разработка приложений в Delphi означает работу с проектами. Иначе говоря, когда приступаете к разработке собственной программы в Delphi, первым делом создается проект - группа файлов, представляющих исходные данные (прежде всего, код) для приложения. Одни из этих файлов создаются во время разработки приложения (собственно программный код, включая файл проекта, и представленные в виде кода формы), другие же создаются автоматически при запуске программы.

Система визуального объектно-ориентированного проектирования Delphi позволяет:

  • 1. Создавать законченные приложения для Windows самой различной направленности;
  • 2. Быстро создавать профессионально выглядящий оконный интерфейс для любых приложений; интерфейс удовлетворяет всем требованиям Windows и автоматически настраивается на ту систему, которая установлена, поскольку использует функции, процедуры и библиотеки Windows;
  • 3. Создавать свои динамически присоединяемые библиотеки компонентов, форм, функций, которые потом можно использовать из других языков программирования;
  • 4. Создавать мощные системы работы с базами данных любых типов.
  • 5. Формировать и печатать сложные отчеты, включающие таблицы, графики и т.п.;
  • 6. Создавать справочные системы, как для своих приложений, так и для любых других;
  • 7. Создавать профессиональные программы установки для приложений Windows, учитывающие всю специфику и все требования операционной системы.
  • 1. Анализ технического задания и постановка задачи проектирования

Согласно заданию необходимо разработать программу (систему) идентификации пользователя.

Дадим определение понятиям, которые используются в данной работе. Определим следующие понятия: строка, файл, запись.

Тип STRING (строка) широко используется для обработки текстов. Он во многом похож на одномерный массив символов ARRAY OF CHAR, однако, в отличие от последнего, количество символов в строке-переменной может меняться от 0 до N, где N - максимальное количество символов в строке.

Под файлом понимается либо именованная область внешней памяти ПК (жесткого диска, гибкой дискеты, электронного "виртуального" диска), либо логическое устройство - потенциальный источник или приемник информации.

Поскольку данная программа является приложением Windows, то для ее реализации будем использовать стандартный подход при написании программ под Windows с использованием графического интерфейса. Так отдельно создадим форму с визуальными компонентами, для различных визуальных компонентов сопоставляем процедуры - обработчики. Далее, как только происходит событие на каком-то из визуальных компонентов (щелчок мыши, нажатие на кнопку или пункт меню), операционная система посылает приложению соответствующее сообщение, и запускается соответствующий обработчик именно для этого события. Тогда решение задачи можно разбить на 3 этапа:

  • 1. Разработка визуального интерфейса пользователя, на основе экранных форм среды Delphi и визуальных компонент, предназначенных для ввода исходных данных, запуска действий по обработке исходных данных, вывода результата обработки, вывода результатов на экранную форму. Еще можно предусмотреть вывод информации разработчике и задании курсового проекта;
  • 2. Разработка обработчиков событий от элементов экранных форм, разработка алгоритмов и программных кодов действий обработки текстового файла согласно заданию;
  • 3. Подготовка тестовых исходных данных и отладка программы.

На первом этапе целесообразно выполнить разработку интерфейса таким образом, чтобы вначале пользователь вводил логин и пароль или регистрацию нового пользователя.

При выполнении второго этапа следует использовать модульный принцип построения программы, то есть разбить программу на отдельные части, каждая из которых выполняет какую-то законченную задачу, либо ее малую часть. Роль таких частей будут выполнять процедуры и функции. Программы, состоящие из процедур и функций, называются модульными.

Процедуры и функции в свою очередь могут вызывать процедуры и функции более низкого уровня и так далее. Таким образом, каждая модульная программа имеет иерархическую структуру. Следует заметить, что обработчики событий от объектов экранных форм тоже реализуются как процедуры.

На третьем этапе при отладке приложения обязательно должна анализироваться правильность работы на исходных тестовых образцах. На этом этапе нужно проверить соответствие разработанной программы исходному заданию, а также проверить ее на отсутствие ошибок.

Подытожив все вышесказанное, можно сформулировать требования к разрабатываемому программному обеспечению и выполнить постановку задания на проектирование.

Программа должна быть реализована с графическим интерфейсом пользователя в среде RAD Delphi и должна выполнять следующие функции:

  • 1. Вводить логин и пароль;
  • 2. При несоответствии данных, выводить сообщение об ошибке;
  • 3. Зарегистрировать нового пользователя;
  • 4. Записывать данные в файл Rigstr;
  • 2. Работа с компонентами. Основная форма и ее свойства

Первое, с чем начинаешь знакомиться, - это компоненты языка и примеры с их использованием.

Сначала идет рассмотрение компонентов в действии и знакомство с их основными возможностями.

Основная форма - это окно будущей программы. На нем возможно располагать визуальные компоненты в любом виде и порядке. В Delphi расстановка элементов управления происходит визуально, и все делается одним нажатием кнопки мыши. Это позволяет даже самый сложный пользовательский интерфейс сформировать в считанные минуты. Как известно, если выделить какой-то компонент, то в объектном инспекторе появятся его свойства и события. Когда описывается событие, которое может быть не только у формы, но и у компонента, будет присутствовать пояснение "форма/компонент". Когда будут рассматриваться свойства и их назначение, существует возможность создать новый проект в среде Delphi и изменять различные его свойства. Так лучше можно понять, на что эти свойства будут влиять.

Система Delphi при добавлении новой формы в проект автоматически создает один экземпляр класса (Form1, Form2 и т. д.), внося соответствующие изменения в файл проекта, например, добавляя строку кода: Application.CreateForm(TForm1, Form1);

Управлять процессом автоматического создания форм можно, непосредственно редактируя файл проекта или выполняя настройки в окне параметров проекта (список Auto-create forms на странице Form). Если форма переведена из этого списка в список Available forms доступных форм проекта, то инструкция ее создания исключается из файла проекта, и программист в ходе выполнения приложения должен динамически создать экземпляр этой формы.

Для создания экземпляров форм служит метод (конструктор) Сreate. Сам класс формы обычно предварительно описывается при конструировании приложения, и для формы уже существуют файлы формы (dfm) и программного модуля (pas).

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

В обработчик события Create обычно включается код, устанавливающий начальные значения свойств формы, а также ее элементов управления, т. е. выполняющий начальную инициализацию формы в дополнение к установленным на этапе разработки приложения параметрам. Кроме того, в обработчик включаются дополнительные операции, которые должны происходить однократно при создании формы, например, чтение к из файла некоторой информации и загрузка ее в список.

Если установить диалоговый стиль формы, то она не становится модальной и позволяет пользователю переходить в другие окна приложения. Для запуска формы, в том числе любой диалоговой, в модальном режиме следует использовать метод ShowModal. Таким образом, стиль определяет внешний вид формы, но не ее поведение.

Кнопка в Delphi происходит от объекта TButton. Когда устанавливается на форму новая кнопка, то ей дается имя по умолчанию Button1. Следующая кнопка получит название Buttona2 и т. д.

В объектном инспекторе напротив строки onclick также должно появиться имя процедуры обработчика. Можно изменить его, просто напечатав новое имя, или выбрать уже существующий обработчик из выпадающего списка в этой же строке. В редакторе кода видно, что там создал для нас Delphi. Это процедура MyFirstButtonCiick. Ей передается один параметр sender объектного типа TObject. Вначале выполнения процедуры в переменной sender будет находиться указатель на объект, который вызвал этот обработчик. Это очень важно, потому что одна процедура-обработчик может обрабатывать нажатия сразу нескольких кнопок или вообще компоненты разного типа.

Самый распространенный компонент TLabel со свойство caption. Компонент представляет собой статический текст. С помощью этого компонента на рабочей поверхности формы можно отобразить информацию, сделать пояснения и показать названия других компонентов. Но он имеет и другую важную функцию - если в составе текста TLabel есть символы-акселераторы, информация о их нажатии может передаваться от TLabel другому элементу управления.

С помощью строк ввода TEdit необходимо постоянно вводить различную информацию программу. Этот компонент не содержит собственного кода, в нем только опубликованы свойства его предка TCustomEdit. Он представляет собой редактируемую строку (далее - просто редактор). Вводимый в редактор текст может автоматически подвергаться некоторым преобразованиям.

Пожалуй, самой важной инструкцией для управления выполнением программы является условный оператор if. Именно он отвечает за ветвление, т.е. выполнение (или невыполнение) того или иного варианта кода в зависимости от условий. Оператор if используется совместно с ключевым словом then, а в том случае, когда предусмотрен альтернативный вариант выполнения - еще и с else. В целом синтаксис инструкции получается следующим:

if <условие> then <код>

В соответствии с правилами синтаксиса, все то, что помещено между ключевыми словами begin и end, равно как и сами эти слова, воспринимаются как 1 оператор.

Для написания практически любой программы, помимо операторов условия, требуются операторы цикла. Прежде всего, это оператор цикла с параметром - for. Такой тип цикла обычно применяют в тех случаях, когда количество возможных повторов известно заранее. Он имеет 2 варианта написания: один - для цикла с приращением, и другой - для цикла с уменьшением:

for <параметр> := <выражение 1> to <выражение 2> do <тело цикла>;

for <параметр> := <выражение 1> downto <выражение 2> do <тело цикла>;

В первом случае (с использованием цикла for-to) при каждом проходе цикла, называемом итерацией, значение параметра увеличивается на 1, а во втором (for-downto) - уменьшается на 1. При этом в качестве начального значения используется "выражение 1", а в качестве конечного - "выражение 2". Разумеется, если для цикла to значение первого выражения изначально будет больше значения второго, или наоборот, меньше (для цикла downto), то цикл не будет выполнен ни разу. Практическое применение циклов крайне разнообразно. Если привести наиболее общий пример из программирования, то цикл - идеальный способ заполнения массива. Например, если требуется организовать цикл для заполнения массива из 10 числовых значений последовательно возрастающими числами, то можно записать:

for i:= 0 to 9 do MyArray[i]=i;

В данном случае элементам массива MyArray последовательно назначаются значения от 0 до 9.

Основные приемы программирования. Работа с текстовыми файлами

Допустим, что у нас есть файл из двух строчек "Привет! ! ! Как жизнь?". Если прочитать его с помощью объекта TFiiestream, то мы увидим весь текст в одну строку "Привет!!!KaK жизнь?- - " . f". Здесь - конец строки и - перевод каретки на новую строку. Таким образом, чтобы найти конец первой строки, мы должны сканировать весь текст с целью поиска признака конца строки и перевода каретки ( и ). Это очень неудобно. программа пароль файл

Тут на помощь приходит объект TStrings, который является простым контейнером (хранилищем) для строк. Можно еще пользоваться более продвинутым вариантом этого объекта TstringList. TStringList происходит от Tstrings. Использовать Tstrings напрямую нельзя, потому что это абстрактный объект. Абстрактный объект - объект, который представляет собой пустой шаблон. Он может даже ничего не уметь делать, а только описывать какой-то вид или шаблон, на основе которого можно выводить полноценные объекты. Вот так TStringList добавляет в Tstrings свои функции так, что он становится полноценным объектом. В результате получается, что мы не можем объявлять переменные типа Tstrings и использовать этот объект, потому что это всего лишь шаблон. Это и так, и не так. Переменную мы можем объявлять, но использовать сам объект не можем. Зато мы можем объявить переменную типа Tstrings, но использовать эту переменную как объект TStringList, потому что данный объект происходит от первого.

Разработка программного обеспечения для ОС Windows и иных популярных может осуществляться посредством самых разных типов инструментов. В числе тех, что характеризуются большой популярностью в среде российских и зарубежных программистов, — программа Delphi. Какова специфика данного инструмента разработки? Каковы наиболее примечательные его возможности?

Общие сведения о Delphi

Delphi — среда разработки прикладных программ, которые предназначены для запуска в ОС Windows, MacOS, а также в мобильных операционных системах — iOS и Android. Характеризуется простотой языка и процедур генерации кода.

При необходимости обеспечивает низкоуровневую коммуникацию с ОС и библиотеками, составленными на языках C и C++. Программы, которые создаются с помощью Delphi, не требуют сторонних оболочек для запуска — таких как, например, Java Virtual Machine. Delphi — среда разработки, которая может успешно применяться как профессионалами, так и в учебных целях. Для того чтобы освоить базовые ее возможности, необязательно обладать высокой квалификацией и знанием сложных языков программирования.

Основные преимущества

Изучим то, каковы ключевые преимущества программного продукта, о котором идет речь. Когда в той или иной IT-компании осуществляется обоснование выбора среды разработки, Delphi становится выбором многих программистов и рекомендуется ими к использованию. Это связано с тем, что данная среда позволяет создавать приложения в самые оперативные сроки, обеспечивать их высокую производительность даже на тех компьютерах, которые имеют скромные аппаратные характеристики. Значимый аргумент в пользу выбора рассматриваемой среды разработки — ее можно дополнять за счет новых инструментов, не предусмотренных стандартным набором решений, присутствующим в интерфейсе Delphi.

Изучим теперь то, каковы нюансы практического пользования возможностями Delphi.

Специфика интерфейса

Прежде всего можно обратить внимание на некоторые особенности интерфейса рассматриваемой среды разработки ПО. Так, структура рабочего пространства программы предполагает одновременную работу с несколькими основными окнами. Рассмотрим данное свойство подробнее.

Среда разработки Delphi, 7 версии в частности, предполагает задействование следующих ключевых модулей: дизайнера форм, редактора, палитры, инспектора объектов, а также справочника. В некоторых модификациях Delphi отмеченные компоненты могут именоваться иначе. Например, редактору может соответствовать окно кода программы, дизайнеру — окно формы. Однако функциональное назначение их будет тем же самым. Отмеченные Delphi могут дополнять различные вспомогательные инструменты. Основными с точки зрения процедур разработки программ считаются первые два. Но важны также и остальные. Рассмотрим особенности пользования отмеченными модулями Delphi.

Дизайнер форм, редактор и палитра

С помощью дизайнера форм разработчик создает интерфейс своей программы. В свою очередь, в редакторе пишется ее код. Многие программисты, которые рекомендуют сделать выбор среды разработки Delphi как самого оптимального решения, в качестве аргумента приводят простоту пользования дизайнером форм. Некоторые специалисты считают, что этот процесс и вовсе больше похож на игру.

Как только пользователь начинает создавать программу и запускает дизайнер форм, то изначально в нем нет никаких элементов, он пустой. Но его тут же можно заполнить с помощью инструментов, расположенных на другом модуле Delphi — палитре. Элементы интерфейса программы, которые настраиваются в дизайнере форм, должны управляться командами, которые, в свою очередь, пишутся в редакторе.

Но вернемся пока что к палитре. С помощью нее можно размещать в области дизайнера форм нужные объекты. Для того чтобы использовать тот или иной инструмент, следует щелкнуть один раз на нем — пока он в области палитры, второй раз — в окне дизайнера форм. После этого соответствующий объект переместится в область разработки, и для него можно прописывать код в редакторе.

Инспектор объектов

Другой значимый элемент, который содержит Delphi — среда разработки приложений для ОС Windows и иных распространенных платформ — инспектор объектов. Можно отметить, что информация, отображаемая в нем, меняется: на это влияет статус объекта, который выбран в области дизайнера форм.

Структура инспектора объектов такова. Он состоит из двух окон. На каждом фиксируются алгоритмы, определяющие поведение соответствующих компонентов. В первом отображаются свойства, во втором — события. Если программист желает внести корректировки в алгоритмы, влияющие на конкретный компонент, то задействуются возможности инспектора объектов. Так, например, можно менять позиционирование тех или иных элементов интерфейса программ, их высоту и ширину.

В инспекторе объектов есть закладки, с помощью которых можно переключаться между страницами, отражающими свойства или события, которые непосредственно связаны с редактором. Так, если два раза щелкнуть на правой части какого-либо из отображаемых на экране пунктов, то код, который соответствует тому или иному событию, зафиксируется в редакторе.

Разработка программного обеспечения в Delphi предполагает использование инспектора объектов для решения самых разных задач. Это предопределяется тем, что с помощью данного инструмента можно изменять свойства фактически любых объектов, расположенных на форме, а также ее самой. Изучим подробнее некоторые особенности работы с инспектором объектов.

Инспектор объектов: использование возможностей

Для того чтобы понять, как функционирует интегрированная среда разработки Delphi в части взаимодействия инспектора объектов и форм, можно попробовать внести изменения в свойства некоторых распространенных элементов интерфейса ПО в Windows — например, Memo, Button и Listbox (чуть позже мы исследуем их сущность подробнее). Для начала их нужно разместить на форме, используя доступные средства Delphi.

Можно попробовать поэкспериментировать со свойством Ctl3D. Для этого нужно щелкнуть мышкой на форме, после чего перейти в инспектор объектов и изменить значение рассматриваемого свойства. После этого форма значительно изменит Одновременно свойство Ctl3D будет изменено на каждом из элементов, что размещены в окне разработки.

После произведенных экспериментов мы можем вновь перейти на форму и активизировать значение Ctl3D. После этого обратимся к элементам Memo и Listbox. Теперь можно изменять их свойства, расположение на форме, внешний вид. Например, выбрав в пункте меню опцию Edit, а затем — Size, программист может изменить ширину и высоту объектов. Есть вариант расположить их по центру, выбрав Edit и Align. Соответствующие действия повлияют на элементы, отображаемые в инспекторе объектов.

С помощью рассматриваемого модуля Delphi можно осуществлять изменение свойств компонентов. Так, например, если стоит задача определить для них конкретный цвет, то есть варианты задействования сразу нескольких инструментов. Во-первых, можно ввести команду, соответствующую цвету - например, красному - clRed, - в область Во-вторых, пользователь может выбрать нужный цвет из списка. В-третьих, есть вариант два раза щелкнуть мышью на свойствах Color — появится окно выбра цвета. Аналогично разработчик может менять и иные атрибуты объектов — к примеру, тип шрифта, его цвет или размер.

Справочник

Delphi — среда разработки, которая дополнена достаточно подробной справочной системой. Для того чтобы обратиться к ней, следует выбрать в меню пункт Help. После этого в окне отобразится один из отмеченных нами выше программных модулей рассматриваемой среды разработки — справочник. Особенность пользования им в том, что при нажатии F1 пользователь получит конкретную подсказку, отражающую специфику задействования текущего инструмента. Например, если программист работает с инспектором объектов, то он может выбрать одно из свойств, после чего нажать на F1 и получить справочную информацию о соответствующей опции. То же самое можно делать при работе с любым другим элементом интерфейса, который включает в себя среда разработки Delphi 7 и иные версии соответствующего типа ПО.

Прочие элементы интерфейса

В числе иных значимых компонентов интерфейса рассматриваемого программного решения — меню, панель быстрого доступа, а также редактор изображений. Касательно меню — оно позволяет программисту получать быстрый доступ к нужным компонентам, присутствующим в структуре среды разработки. Пользоваться им можно как с помощью мыши, так и при задействовании горячих клавиш. Чуть ниже меню располагается панель быстрого доступа. Некоторые из ее функций дублируют те, что характерны для меню, но доступ к ним осуществляется быстрее. Delphi в чем-то похож на программу Paint в Windows. То есть с помощью него можно производить простейшие корректировки картинок, наносить на них надписи и иные элементы.

Средства программирования

Delphi — среда разработки, которая включает большое количество инструментов, призванных повысить эффективность работы программиста. Так, рассмотренные нами выше ключевые модули дополняются набором из специальных инструментов. В числе таковых: отладчик, компилятор, а также компоненты WinSight и WinSpector. Отметим, что в некоторых версиях Delphi отмеченные элементы нужно инсталлировать отдельно. Изучим их специфику.

Отладчик Delphi

Касательно отладчика — данный инструмент дополняет редактор кода в части проведения необходимой проверки соответствующих программных алгоритмов на предмет корректности. С помощью него разработчик может фактически построчно исследовать свой исходник. В некоторых случаях при решении такой задачи, как разработка компонентов, Delphi как самостоятельный продукт может быть дополнен внешним отладчиком, который дает программисту расширенные возможности проверки кода создаваемого ПО.

Компилятор Delphi

Изучим теперь специфику компилятора рассматриваемой среды разработки. Отметим, что в структуре Delphi может присутствовать несколько соответствующих элементов. Так, есть вариант задействовать компилятор DCC, который полезен в тех случаях, когда стоит задача по работе с приложением во внешнем отладчике.

Winsight и WinSpector

Указанные модули относятся к тем, что нужно устанавливать на Delphi дополнительно. Характеризуются относительной сложностью в освоении. Однако многие программисты, осуществившие выбор среды разработки Delphi, считают, что данными компонентами обязательно нужно учиться пользоваться. Так, модуль Winsight используется с целью наблюдения за сообщениями Windows. Такой компонент, как WinSpector, нужен для того, чтобы фиксировать состояние компьютера в специальном файле. Если в ходе разработки ПО будут наблюдаться какие-либо сбои, то всегда можно открыть этот файл и посмотреть, что могло быть причиной неполадки.

Стандартные компоненты

Среда разработки Delphi, общие сведения о которой мы изучаем, включает ряд стандартных компонентов, о которых также полезно знать. Специалисты относят к таковым следующие: MainMenu, PopupMenu, Label, Edit, Memo, Button, Checkbox, Radiobutton, Listbox, Combobox, Scrollbar, Groupbox, Panel, а также Scrollbox. Изучим их специфику подробнее.

Компонент MainMenu предназначен для размещения главного меню в интерфейсе создаваемой программы. Для этого нужно поместить соответствующий элемент на форме, после чего вызвать свойство Items через инспектора объектов, а затем определить необходимые пункты меню.

Компонент PopupMenu предназначен для размещения всплывающих меню в интерфейсе создаваемой программы, то есть открывающихся с помощью щелчка правой кнопкой мыши.

Компонент Label задействуется с целью отображения текста в окне программы. Его можно настраивать, например задавать нужный шрифт в инспекторе объектов.

Компонент Edit задействуется с целью отображения на экране фрагмента текста, который пользователь может редактировать в то время, как программа работает. Его дополняет компонент Memo, с помощью которого, в свою очередь, можно работать с текстами большего объема. Данный элемент включает, например, такие опции, как копирование текста.

Компонент Button предназначен для выполнения тех или иных действий посредством нажатия кнопки в то время, как программа работает. Необходимо разместить соответствующий элемент на форме, после чего вписать нужный программный код.

Компонент Checkbox позволяет отображать на экране строки с небольшим окошком, в котором может ставиться галочка с помощью мыши. Похожий элемент — Radiobutton. Различаются они, во-первых, внешним видом — второй компонент выполняется в виде кружка, а во-вторых, первый элемент разрешает одновременный выбор нескольких опций, Radiobutton — только одной.

Компонент Listbox используется для отображения на экране списка, который пользователь может прокручивать с помощью мыши. Чем-то похож на него другой элемент — Combobox, однако он дополняется возможностью вводить текст в специальном поле.

Компонент Scrollbar — это полоса прокрутки в окнах. Как правило, появляется автоматически, как только текстовое пространство или форма с объектами становятся больше, чем окно.

Компонент Groupbox задействуется для того, чтобы фиксировать порядок перемещения между окнами при нажатии клавиши TAB. Может дополняться элементом Panel, с помощью которого может осуществляться перемещение нескольких объектов на форме.

Компонент Scrollbox позволяет зафиксировать на форме область, которую можно прокручивать как горизонтально, так и вертикально. Данным свойством характеризуются основные окна разработки Delphi по умолчанию. Но если есть необходимость в задействовании подобной опции на конкретном участке формы, можно воспользоваться компонентом Scrollbox.

Резюме

Delphi — среда разработки приложений с большими возможностями, в то же время характеризующаяся простотой использования основных функций. С помощью инструментов, которые входят в ее структуру, можно создавать самые разные типы программ для Windows и иных популярных ОС.

Выбор средств разработки Delphi многие программисты обуславливают удобством пользования интерфейсами соответствующего ПО, а также широким набором инструментов, полезных для работы на любом участке создания программы — на этапе дизайна, программирования алгоритмов или отладки.

Система визуального программирования Delphi обладает большой популярностью среди широкого круга пользователей: от неспециалистов до системных программистов, занимающихся разработкой сложных приложений и информационных систем.

Delphi позволяет быстро и удобно разрабатывать эффективные приложения, включая приложения для работы с базами данных. Система имеет развитые возможности по созданию пользовательского интерфейса, широкий набор функций, методов и свойств для решения прикладных расчетно-вычислительных задач. В системе имеются развитые средства отладки, облегчающие разработку приложений. Традиционно Delphi относят к системам быстрой разработки приложений. Вместе с тем эта система обладает практически всеми возможностями СУБД, таких как Microsoft Access и Visual FoxPro. Она позволяет удобно создавать приложения с помощью инструментальных программных средств, визуально подготавливать запросы к базам данных, а также непосредственно писать SQL- запросы к базам данных. Применительно к работе с базами данных Delphi обеспечивает широкий набор инструментальных средств, поддерживает современные технологии, в том числе многоуровневую технологию «клиент - сервер» .

Как любая подобная система программирования, Delphi предназначена для разработки программ и имеет две характерные особенности: создаваемые с ее помощью программы могут работать не только под управлением Windows, а сама она относится к классу инструментальных средств ускоренной разработки программ. Это ускорение достигается за счет двух характерных свойств Delphi: визуального конструирования форм и широкого использования библиотеки визуальных компонентов.

Визуальное конструирование форм избавляет программиста от многих аспектов разработки интерфейса программы, так как Delphi автоматически готовит необходимые программные заготовки и соответствующий файл ресурсов. Программист использует специальное окно, которое называется окном формы, как прототип будущего окна программы и наполняет его компонентами, реализующими нужные интерфейсные свойства (разного рода списки, кнопки, полосы прокрутки и т.п.). После размещения на форме очередного компонента Delphi автоматически вставляет в связанный с формой модуль ссылку на компонент и корректирует специальный файл описания формы с расширением DMF, который после компиляции преобразуется в ресурсный файл Windows.

Библиотека визуальных компонентов предоставляет программисту огромное разнообразие созданных разработчиками Delphi программных заготовок, которые немедленно или после несложной настройки готовы к работе в рамках вашей программы. Размещение объектов в Delphi связано с более тесными отношениями между объектами и реальным программным кодом. Объекты помещаются в созданную форму, при этом код, отвечающий объектам, автоматически записывается в исходный файл. Этот код компилируется, обеспечивая существенно более высокую производительность, чем визуальная среда, которая интерпретирует информацию лишь в ходе исполнения программы. Использование компонентов не только во много раз сокращает сроки разработки программ, но и существенно снижает вероятность случайных программных ошибок, от которых, увы, не защищен ни один крупный программный проект.

Ни один из инструментов ускоренной разработки программ не создается без средств прогона и отладки вновь созданной программы. В Delphi эти средства доведены до совершенства. Можно начать использование программы и последовательно - оператор за оператором - следить за ее выполнением по исходному тексту. В любой момент можно узнать текущее значение переменной и при необходимости изменить его без перекомпиляции программы .

Две вышеперечисленные особенности Delphi

1) визуальное конструирование форм

2) использование библиотеки визуальных компонентов отражают большие преимущества этого языка и являются положительными моментами в процессе дальнейшей разработки и создания пакета автоматизированных методик.

Мощность и гибкость языка программирования Delphi - безусловное достоинство Delphi, выгодно отличающее эту систему программирования от других инструментов для разработки программ. Ядром языка Delphi является язык Паскаль.

От Visual Basic язык Delphi отличают строгая типизированность, позволяющая компилятору еще на этапе компиляции обнаружить многие ошибки, а также средства работы с указателями. Delphi имеет самый быстрый среди продуктов подобного рода оптимизирующий компилятор, позволяющий создавать быстрые и относительно компактные программы.

Среда Delphi устраняет необходимость программировать такие компоненты Windows общего назначения, как метки, пиктограммы и даже диалоговые панели. Delphi позволяет приспособить компоненты диалоговой панели (например, Choose File и Save File) к имеющейся задаче, чтобы они работали именно так, как требуется создаваемому приложению. Также здесь имеются предварительно определенные визуальные и невизуальные объекты, включая кнопки, объекты с данными, меню и уже построенные диалоговые панели. С помощью этих объектов можно, например, обеспечить ввод данных просто несколькими нажатиями кнопок мыши, не прибегая к программированию. Это наглядная реализация применений CASE-технологий в современном программировании приложений .

В процессе создания проектов в среде Windows с помощью Delphi наблюдаются следующие выгоды: устраняется необходимость в повторном вводе данных; обеспечивается согласованность проекта и его реализации; увеличивается производительность разработки и переносимость программ.

Визуальное программирование как бы добавляет новое измерение при создании приложений, давая возможность изображать объекты на экране монитора до выполнения самой программы. Без визуального программирования процесс отображения требует написания фрагмента кода, создающего объект «по месту». Увидеть закодированные объекты было возможно только в ходе исполнения программы. При таком подходе достижение того, чтобы объекты выглядели и вели себя заданным образом, становится утомительным процессом, который требует неоднократных исправлений программного кода с последующей прогонкой программы и наблюдения за тем, что в итоге получилось.

Благодаря средствам визуальной разработки можно работать с объектами, держа их перед глазами и получая результаты практически сразу. Способность видеть объекты такими, какими они появляются в ходе исполнения программы, снимает необходимость проведения множества операций вручную, что характерно для работы в среде, не обладающей визуальными средствами - вне зависимости от того, является она объектно - ориентированной или нет. После того, как объект помещен в форму среды визуального программирования, все его атрибуты сразу отображаются в виде кода, который соответствует объекту как единице, исполняемой в ходе работы программы.

Cреда Delphi включает в себя полный набор визуальных инструментов для скоростной разработки приложений (RAD - rapid application development), поддерживающей разработку пользовательского интерфейса и подключение к корпоративным базам данных. VCL - библиотека визуальных компонент, включает в себя стандартные объекты построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE. Визуальные компоненты Delphi открыты для надстройки и переписывания.

Эта библиотека объектов включает в себя стандартные объекты построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE.

Среда Delphi состоит их четырех окон, управляемых как многооконное приложение с интерфейсом одного документа (рисунок 1). Главное окно Delphi управляет связанными с ним окнами - инспектора объектов, формы и окна редактора кода.

Рисунок 1 - Интерфейс основных окон среды Delphi

Главное окно (рисунок 2) является центром управления разработками. В нем размещены меню, панель быстрого доступа (SpeedВаг) и палитра компонентов. Строка меню дает возможность осуществлять контроль за всеми окнами среды разработки. Панель быстрого доступа обеспечивает оперативный доступ к общим операциям. Палитра компонентов состоит из нескольких групп, в каждой из которых расположены пиктограммы компонентов. Указав в палитре нужный компонент, можно перенести его (щелчком мыши) в окно формы. При этом создается активный объект, для которого с помощью инспектора объект нужно задавать свойства и описывать реакции на события, которые будут происходить с этим объектом при решении задачи.

Рисунок 2 - Главное окно

Окно инспектора объектов (рисунок 3) является многостраничным окном, содержащим помеченные ярлыками страницы свойств (Ргореperties) и событий (Events). На странице свойств показаны свойства объектов, расположенных в окне формы (Form). На странице событий представлены события, на которые реагирую объекты окна формы. Инспектор Объектов состоит из двух страниц, каждую из которых можно использовать для определения поведения данного компонента. Первая страница - это список свойств, вторая - список событий. Если нужно изменить что-нибудь, связанное с определенным компонентом, то Вы обычно делаете это в Инспекторе Объектов. К примеру, Вы можете изменить имя и размер компонента TLabel, изменяя свойства Caption, Left, Top, Height, и Width.

Можно использовать закладки внизу Инспектора Объектов для переключения между страницами свойств и событий. Страница событий связана с Редактором; если Вы дважды щелкнете мышкой на правую сторону какого-нибудь пункта, то соответствующий данному событию код автоматически запишется в Редактор, сам Редактор немедленно получит фокус, и Вы сразу же имеете возможность добавить код обработчика данного события. Данный аспект среды программирования Delphi будет еще обсуждаться позднее.

Инспектор Объектов позволяет определять свойства и поведение объектов, помещенных на форму. Информация в нем меняется в зависимости от объекта, выбранного на форме. Важно понять, что каждый компонент является настоящим объектом, и можно менять его вид и поведение с помощью Инспектора Объектов.

Программисты на Delphi проводят большинство времени переключаясь между Дизайнером Форм и Окном Редактора Исходного Текста (которое для краткости называют Редактор). Расскажем поподробнее о каждом окне среды Delphi.

Окно формы (окно дизайнера форм) (рисунок 4) содержит компоненты (объекты), с помощью которых пользователь задает и получает от программы всю информацию, необходимую для взаимодействия с задачей в ходе ее исполнения.

Рисунок 3 - Инспектор Объектов

Дизайнер Форм в Delphi - то место, где Вы создаете визуальный интерфейс программы. Он столь интуитивно понятен и прост в использовании, что создание визуального интерфейса превращается в детскую игру. Дизайнер Форм первоначально состоит из одного пустого окна, которое Вы заполняете всевозможными объектами, выбранными на Палитре Компонент. Несмотря на всю важность Дизайнера Форм, местом, где программисты проводят основное время, является Редактор. Логика является движущей силой программы и Редактор - то место, где Вы ее «кодируете» .

Рисунок 4 - Дизайнер Форм

Несмотря на всю важность Дизайнера Форм, местом, где программисты проводят основное время, является Редактор.

Окно редактора кода (рисунок 5) дает возможность набирать и редактировать код модуля программы на языке Object Pascal. Это окно является многостраничным, оно позволяет выполнять переходы между модулями программы. Логика является движущей силой программы и Редактор - то место, где Вы ее «кодируете». В окне Редактора Вы создаете логику управления программой.

Рисунок 5 - Окно Редактора

В главном окне принято выделять три основных выделенных элемента (не считая стандартной строки-заголовка):

Строка меню (Menu System);

Палитра компонентов;

Панель быстрого доступа (SpeedBar).

Меню (рисунок 6) предоставляет быстрый и гибкий интерфейс к среде Delphi, потому что может управляться по набору «горячих клавиш».

Рисунок 6 - Строка меню

В этом смысле проектирование в Delphi мало чем отличается от проектирования в интерпретирующей среде, однако после выполнения компиляции мы получаем код, который исполняется в 10 - 20 раз быстрее, чем то же самое, сделанное при помощи интерпретатора.

Это удобно еще и потому, что здесь используются слова или короткие фразы, более точные и понятные, нежели иконки или пиктограммы. Вы можете использовать меню для выполнения широкого круга задач; скорее всего, для наиболее общих задач вроде открытия и закрытия файлов, управления отладчиком или настройкой среды программирования.

Палитра Компонент (рисунок 7) позволяет Вам выбрать нужные объекты для размещения их на Дизайнере Форм. Для использования Палитры Компонент просто первый раз щелкните мышкой на один из объектов и потом второй раз - на Дизайнере Форм. Выбранный Вами объект появится на проектируемом окне и им можно манипулировать с помощью мыши.

Палитра Компонент использует постраничную группировку объектов. Внизу Палитры находится набор закладок - Standard, Additional, Dialogs и т.д. Если Вы щелкнете мышью на одну из закладок, то Вы можете перейти на следующую страницу Палитры Компонент. Принцип разбиения на страницы широко используется в среде программирования Delphi и его легко можно использовать в своей программе (на странице Additional есть компоненты для организации страниц с закладками сверху и снизу).

Рисунок 7 - Палитра Компонент

SpeedBar (рисунок 8) находится непосредственно под меню, слева от Палитры Компонент. SpeedBar выполняет много из того, что можно сделать через меню. Если задержать мышь над любой из иконок на SpeedBar, то Вы увидите, что появится подсказка, объясняющая назначение данной иконки.

Рисунок 8 - SpeedBar

Последняя важная часть среды Delphi - Справочник (on-line help), (рисунок 9). Для доступа к этому инструменту нужно просто выбрать в системном меню пункт Help и затем Delphi Help.

Рисунок 9 - Справочник

Редактор Картинок (рисунок 10) работает аналогично программе Paintbrush из Windows. Вы можете получить доступ, к этому модулю выбрав пункт меню Tools | Image Editor.

Рисунок 10 - Редактор Картинок

А теперь нужно рассмотреть те элементы, которые программист на Delphi использует в повседневной жизни. В дополнение к инструментам, обсуждавшимся выше, существуют пять средств, поставляемых вместе с Delphi. Эти инструментальные средства: встроенный отладчик; внешний отладчик (поставляется отдельно); компилятор командной строки; WinSight; WinSpector.

Данные инструменты собраны в отдельную категорию не потому, что они менее важны, чем другие, но потому, что они играют достаточно абстрактную техническую роль в программировании .

Чтобы стать сильным программистом на Delphi, Вам понадобится понять, как использовать отладчик Delphi. Отладчик позволяет Вам пройти пошагово по исходному тексту программы, выполняя по одной строке за раз, и открыть просмотровое окно (Watch), в котором будут отражаться текущие значения переменных программы.

Встроенный отладчик, который наиболее важен из пяти вышеперечисленных инструментов, работает в том же окне, что и Редактор. Внешний отладчик делает все, что делает встроенный и кое - что еще. Он более быстр и мощен, чем встроенный. Однако он не так удобен в использовании, главным образом из-за необходимости покидать среду Delphi.

Внешний компилятор, называется DCC.EXE, полезен, в основном, если Вы хотите скомпилировать приложение перед отладкой его во внешнем отладчике. Большинство программистов, наверняка, посчитают, то гораздо проще компилировать в среде Delphi, нежели пытаться создать программу из командной строки. Однако, всегда найдется несколько оригиналов, которые будут чувствовать себя счастливее, используя компилятор командной строки. Но это факт - возможно, создать и откомпилировать программу на Delphi используя только DCC.EXE и еще одну программу CONVERT.EXE, которая поможет создать формы. Однако, данный подход неудобен для большинства программистов .

WinSight и WinSpector интересны преимущественно для опытных программистов в Windows. Это не значит, что начинающий не должен их запускать и экспериментировать с ними по своему усмотрению. Но эти инструменты вторичны и используются для узких технических целей.

Из этих двух инструментов WinSight определенно более полезен. Основная его функция - позволить наблюдать за системой сообщений Windows. Хотя Delphi делает много для того, чтобы спрятать сложные детали данной системы сообщений от неопытных пользователей, тем не менее Windows является операционной системой, управляемой событиями. Почти все главные и второстепенные события в среде Windows принимают форму сообщений, которые рассылаются с большой интенсивностью среди различными окнами на экране. Delphi дает полный доступ к сообщениям Windows и позволяет отвечать на них, как только будет нужно. В результате, опытным пользователям WinSight становится просто необходим . WinSpector сохраняет запись о текущем состоянии машины в текстовый файл; Вы можете просмотреть этот файл для того, чтобы узнать, что неправильно идет в программе. Данный инструмент полезен, когда программа находится в опытной эксплуатации - можно получить важную информацию при крушении системы.

Таким образом, работа в среде Delphi базируется на объектно-ориентированной технологии и визуализации процесса создания программ. Эта технология поддерживает построение программ путем определения объектов и действий над ними. Визуальная среда освобождает разработчика от необходимости знания множества технических деталей, что позволяет сконцентрировать внимание на существе решаемой задачи, сокращает сроки и повышает качество работы. Ознакомившись со средой программирования Delphi, рассмотрев ее явные преимущества - визуальное конструирование форм и использование библиотеки визуальных компонентов, можно использовать данный продукт ООП для создания пакета автоматизированных методик.