Среда Delphi и простейшее приложение. Среда программирования Delphi Общие сведения о Delphi


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

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

Рис. Среда разработки визуальных приложений

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

Delphi обеспечивает исчерпывающую библиотеку классов - Визуальную Компонентную Библиотеку (VCL), Библиотека Borland Component (CLX), и блок Быстрой разработки (RAD) инструментальные средства, включая приложение и шаблоны форм, и мастера. Delphi объектно-ориентированное программирование.

Из нестандартных улучшений Borland, внесенных в объектный Pascal надо отметить свойства (Properties) и перезагружаемость процедур и функций (Overloading).

Достоинством Delphi является простота, скорость и эффективность. Delphi имеет самый быстрый из всех компилятор. Другим достоинством является простота изучения Object-Pascal. Библиотека VCL позволяет программировать и в среде Windoows API. Модель программирования в Delphi компонентная, что позволяет использовать множество уже созданных компонент, создавать свои и использовать дополнительные чужие. К достоинствам можно отнести достаточно быстрый браузер классов и мгновенный вывод подсказки авто завершения кода.

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

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

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

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

Visual Componentes Librares (VCL) - это иерархия из 270 базовых классов. построения пользовательского интерфейса, объекты управления данными, графические объекты, объекты мультимедиа, диалоги и объекты управления файлами, управление DDE и OLE

Borland Database Engine (BDE) - препроцессор операционной системы обеспечивает доступ к объектам БД в Delphi, основанным на SQL: Oracle, Sybase, Informix и InterBase, файлам формата. dbf, или. db (Paradox) или. mdb (Access).

Уникальные возможности Delphi состоят в том, что разработчики могут добавлять CASE-инструменты, кодовые генераторы, а также авторские help"ы, доступные через меню Delphi.

Технология Two-way tools обеспечивает однозначное соответствие между визуальным проектированием и классическим написанием текста программы. Это означает, что разработчик всегда может видеть код, соответствующий тому, что он построил при помощи визуальных инструментов и наоборот.

Инспектор объектов представляет из себя отдельное окно, где можно в период проектирования программы устанавливать значения свойств и событий объектов (Properties & Events).

Менеджер проектов дает возможность разработчику просмотреть все модули в соответствующем проекте и снабжает удобным механизмом для управления проектами.

Основа Object Pascal это механизм Run-Time Туре Information (RTTI), т.е. информации о типах на этапе выполнения программы и свойств объектных типов - классов, с понятием свойства (property); а также обработки исключительных ситуаций (exception handling).

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

Основные файлы проекта Delphi это PROJECT1. DPR, UNIT1. PAS, UNIT1. DFM - сведения о форме,PROJECT1. RES содержит иконку для проекта, PROJECT1. OPT по умолчанию, является текстовым файлом для сохранения установок, связанных с данным проектом, После компиляции программы получаются файлы с расширениями: DCU - скомпилированные модули, EXE - исполняемый файл. Установки Editor Options сохраняются в файле DELPHI. INI, который находится в директории Windows.

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

Предупреждения и подсказки появляются при обнаружении в программе неточностей, которые не являются ошибками, компилятор выводит подсказки (Hints) и предупреждения (warnings).

Ошибки времени выполнения (run-timeerrors) или исключения (exceptions).

Страница настроек Линкера Options позволяет произвести выбор установок, которые напрямую влияют на текущий проект, это могут быть, к примеру, директивы компилятора проверки стека (stack checking) или диапазона (rangechecking).

Страница настроек Directories/Conditionals Options дает возможность расширить число директорий, в которых компилятор и линковщик ищут DCU файлы.

Страница настроек Editor Options позволяет настроить тонкие детали работы Редактора.

Страницы настроек EditorOptions, EditorDisplay и EditorColors позволяют изменить цвета и "горячие" клавиши, используемые IDE.

Пять основных окон ООП среды программирования Delphi:

дизайнер Форм (Form Designer);

окно Редактора Исходного Текста (Editor Window);

палитра Компонент (Component Palette);

инспектор Объектов (Object Inspector);

справочник (On-line help).

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

Основные компоненты Delphi:

Компонент Edit. Text позволяет производить чтение текста из окна Edit

Компонент TCheckBox отображает строку текста с маленьким окошком рядом.

Компонент TRadioButton позволяет выбрать только одну опцию из нескольких.

Компонент TListBox нужен для показа прокручиваемого списка.

Компонент TStringGrid служит для представления текстовых данных в виде таблицы.

Компонент TMainMenu позволяет поместить главное меню в программу.

Компонент TPopupMenu позволяет создавать всплывающие меню.

Компонент TBitBtn представляет кнопку, на которой можно разместить картинку.

Компонент TDrawGrid служит для представления данных любого типа в виде таблицы. Доступ к каждому элементу таблицы происходит через свойство CellRect.

Компонент TImage отображает графическое изображение на форме. Воспринимает форматы BMP, ICO, WMF. Если картинку подключить во время дизайна программы, то она прикомпилируется к EXE файлу.

Компонент TShape служит для отображения простейших графических объектов на форме: окружность, квадрат и т.п.

Диалоги Windows организуются компонентами диалога: OpenDialog - выбрать файл, SaveDialog - сохранить файл, FontDialog - настроить шрифт, ColorDialog - выбор цвета, PrintDialog - печать, PrinterSetupDialog - настройка принтера.

Компонент страницы System - TTimer это таймер, событие OnTimer периодически вызывается через промежуток времени, указанный в свойстве Interval. Период времени может составлять от 1 до 65535 мс.

Компонент страницы System - TFileListBox это специализированный ListBox, в котором отображаются файлы из указанной директории (св-во Directory).

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

Компонент страницы System - TDriveComboBox это специализированный ComboBox для выбора текущего диска. Имеет свойство DirList, в котором можно указать TDirectoryListBox, который будет отслеживать переход на другой диск.

Компонент страницы System - TMediaPlayer служит для управления мултимедйными устройствами (типа CD-ROM,MIDI и т.п.). Выполнен в виде панели управления с кнопками Play, Stop, Record и др.

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

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

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

Компилятор выполняет последовательно две задачи:

1. Проверяет текст исходной программы на отсутствие синтаксических ошибок.

2. Создает (генерирует) исполняемую программу - машинный код.

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

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

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

Shortint - 128-127 8 битов

Smallint - 32 768 - 32 767 16 битов

Longint - 2 147 483 648 - 2 147 483 647 32 бита

Int64 - 263 - 263 - 1 64 бита

Byte 0-255 8 битов, беззнаковый

Word 0-65 535 16 бит, беззнаковый

Longword 0 - 4 294 967 295 32 бит беззнаковый

универсальный целый тип - Integer

универсальный вещественный тип - Real

тип Ansichar - это символы в кодировке ANSI, которым соответствуют числа в диапазоне от 0 до 255;

типwidechar - это символы в кодировкеUnicode, им соответствуют числа от 0 до 65 535.

ObjectPascal поддерживает и наиболее универсальный символьный тип -

тип shortstring представляет собой статически размещаемые в памяти компьютера строки длиной от 0 до 255 символов;

тип Longstring представляет собой динамически размещаемые в памяти строки, длина которых ограничена только объемом свободной памяти;

тип WideString представляет собой динамически размещаемые в памяти строки, длина которых ог-раничена только объемом свободной памяти. Каждый символ строки типа WideString является Unicode-символом

тип string эквивалентен типу shortstring.

Проектирование и инициализация общих элементов управления предполагает использование:

интерфейса присоединения Drag-and-Dock;

интерфейса переноса Drag-and-Drop;

усовершенствованного масштабирования;

управления фокусом;

управления мышью;

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

Технология разработки программы в Delphi для широкого применения включает этапы:

Спецификация (определение, формулирование требований к программе).

Разработка алгоритма.

Кодирование (запись алгоритма на языке программирования).

Тестирование.

Создание справочной системы.

Создание установочного диска (CD-ROM).

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

Рабочий экран Delphi (версия Delphi-6) имеет 4 основных окна: главное окно Delphi; окно формы Form1; окно инспектора объектов Object Inspector и окно редактора кода Unit1. pas

Особенности СУБД MySQL

MySQL - свободная система управления базами данных (СУБД). MySQL является собственностью компании Oracle Corporation, получившей её вместе с поглощённой Sun Microsystems, осуществляющей разработку и поддержку приложения. Распространяется под GNU General Public License или под собственной коммерческой лицензией. Помимо этого разработчики создают функциональность по заказу лицензионных пользователей, именно благодаря такому заказу почти в самых ранних версиях появился механизм репликации.

MySQL является решением для малых и средних приложений. Входит в состав серверов WAMP, AppServ, LAMP и в портативные сборки серверов Денвер, XAMPP. Обычно MySQL используется в качестве сервера, к которому обращаются локальные или удалённые клиенты, однако в дистрибутив входит библиотека внутреннего сервера, позволяющая включать MySQL в автономные программы.

Гибкость СУБД MySQL обеспечивается поддержкой большого количества типов таблиц: пользователи могут выбрать как таблицы типа MyISAM, поддерживающие полнотекстовый поиск, так и таблицы InnoDB, поддерживающие транзакции на уровне отдельных записей. Более того, СУБД MySQL поставляется со специальным типом таблиц EXAMPLE, демонстрирующим принципы создания новых типов таблиц.

Благодаря открытой архитектуре и GPL-лицензированию, в СУБД MySQL постоянно появляются новые типы таблиц.

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

Интерфейс среды программирования Delphi

В первую очередь Delphi предназначен для профессионалов-разработчиков корпоративных информационных систем. Может быть, здесь следует пояснить, что конкретно имеется в виду. Не секрет, что некоторые удачные продукты, предназначенные для скоростной разработки приложений (RAD - rapid application development) прекрасно работают при изготовлении достаточно простых приложений, однако, разработчик сталкивается с непредвиденными сложностями, когда пытается сделать что-то действительно сложное. Бывает, что в продукте вскрываются присущие ему ограничения только по прошествии некоторого времени. Delphi такие ограничения не присущи. Хорошее доказательство тому - это тот факт, что сам Delphi разработан на Delphi. Можете делать выводы. Однако Delphi предназначен не только для программистов-профессионалов. Я читал в электронной конференции совершенно неожиданные для меня письма, где учителя, врачи, преподаватели ВУЗов, бизнесмены, все те, кто используют компьютер с чисто прикладной целью, рассказывали о том, что приобрели Delphi for Windows для того, чтобы быстро решить какие-то свои задачи, не привлекая для этого программистов со стороны. В большинстве случаев им это удается. Поразительный факт - журнал Visual Basic Magazine присудил свою премию Delphi for Windows. Руководители предприятий, планирующие выделение средств на приобретение программных продуктов, должны быть уверены в том, что планируемые инвестиции окупятся. Поэтому одним из оцениваемых факторов должен быть вопрос - а легко ли найти специалиста по Delphi и сколько будет стоить его обучение, сколько времени специалист затратит на овладение продуктом. Ответ здесь получить весьма просто - любой программист на паскале способен практически сразу профессионально освоить Delphi. Специалисту, ранее использовавшему другие программные продукты, придется труднее, однако самое первое работающее приложение он сможет написать в течение первого же часа работы на Delphi.

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

Внешний вид среды программирования Delphi отличается от многих других из тех, что можно увидеть в Windows. К примеру, Borland Pascal for Windows 7.0, Borland C++ 4.0, Word for Windows, Program Manager - это все MDI приложения и выглядят по-другому, чем Delphi. MDI (Multiple Document Interface) - определяет особый способ управления нескольких дочерних окон внутри одного большого окна. Если Вы используете SDI приложение типа Delphi, то уже знаете, что перед началом работы лучше минимизировать другие приложения, чтобы их окна не загромождали рабочее пространство. Если нужно переключиться на другое приложение, то просто щелкните мышкой на системную кнопку минимизации Delphi. Вместе с главным окном свернутся все остальные окна среды программирования, освободив место для работы других программ.

Главные составные части среды программирования

Ниже перечислены основные составные части Delphi:

  1. Дизайнер Форм (Form Designer)
  2. Окно Редактора Исходного Текста (Editor Window)
  3. Палитра Компонент (Component Palette)
  4. Инспектор Объектов (Object Inspector)
  5. Справочник (On-line help)

Дизайнер Форм в Delphi столь интуитивно понятен и прост в использовании, что создание визуального интерфейса превращается в детскую игру. Дизайнер Форм первоначально состоит из одного пустого окна, которое Вы заполняете всевозможными объектами, выбранными на Палитре Компонент. Несмотря на всю важность Дизайнера Форм, местом, где программисты проводят основное время является Редактор. Логика является движущей силой программы и Редактор - то место, где Вы ее “кодируете”. Палитра Компонент позволяет Вам выбрать нужные объекты для размещения их на Дизайнере Форм. Для использования Палитры Компонент просто первый раз щелкните мышкой на один из объектов, и потом второй раз - на Дизайнере Форм. Выбранный Вами объект появится на проектируемом окне и им можно манипулировать с помощью мыши. Палитра Компонент использует постраничную группировку объектов. Внизу Палитры находится набор закладок - Standard, Additional, Dialogs и т.д. Если Вы щелкнете мышью на одну из закладок, то Вы можете перейти на следующую страницу Палитры Компонент. Принцип разбиения на страницы широко используется в среде программирования Delphi и его легко можно использовать в своей программе. (На странице Additional есть компоненты для организации страниц с закладками сверху и снизу). Слева от Дизайнера Форм Вы можете видеть Инспектор Объектов. Заметьте, что информация в Инспекторе Объектов меняется в зависимости от объекта, выбранного на форме. Важно понять, что каждый компонент является настоящим объектом, и Вы можете менять его вид и поведение с помощью Инспектора Объектов. Инспектор Объектов состоит из двух страниц, каждую из которых можно использовать для определения поведения данного компонента. Первая страница - это список свойств, вторая - список событий. Если нужно изменить что-нибудь, связанное с определенным компонентом, то Вы обычно делаете это в Инспекторе Объектов. К примеру, Вы можете изменить имя и размер компонента TLabel, изменяя свойства Caption, Left, Top, Height, и Width. Последняя важная часть среды Delphi - Справочник (on-line help). Для доступа к этому инструменту нужно просто выбрать в системном меню пункт Help и затем Contents. На экране появится Справочник. Справочник является контекстно-зависимым; при нажатии клавиши F1, Вы получите подсказку, соответствующую текущей ситуации. Например, находясь в Инспекторе Объектов, выберите какое-нибудь свойство и нажмите F1 - Вы получите справку о назначении данного свойства. Если в любой момент работы в среде Delphi возникает неясность или затруднение - жмите F1 и необходимая информация появится на экране.

Дополнительные элементы

В данном разделе внимание фокусируется на трех инструментах, которые можно воспринимать как вспомогательные для среды программирования:
Меню (Menu System);
Панель с кнопками для быстрого доступа (SpeedBar);
Редактор картинок (Image Editor).
Меню предоставляет быстрый и гибкий интерфейс к среде Delphi, потому что может управляться по набору “горячих клавиш”. Это удобно еще и потому, что здесь используются слова или короткие фразы, более точные и понятные, нежели иконки или пиктограммы. Вы можете использовать меню для выполнения широкого круга задач; скорее всего, для наиболее общих задач вроде открытия и закрытия файлов, управления отладчиком или настройкой среды программирования. SpeedBar находится непосредственно под меню, слева от Палитры Компонент. SpeedBar выполняет много из того, что можно сделать через меню. Если задержать мышь над любой из иконок на SpeedBar, то Вы увидите что, появится подсказка, объясняющая назначение данной иконки. Редактор Картинок работает аналогично программе Paintbrush из Windows. Вы можете получить доступ к этому модулю выбрав пункт меню Tools | Image Editor. А теперь нужно рассмотреть те элементы, которые программист на Delphi использует в повседневной жизни.

Инструментальные средства

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

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

Для дальнейшего знакомства со средой программирования Delphi потребуется рассказать о составе первой страницы Палитры Компонент. На первой странице Палитры Компонент размещены 14 объектов определенно важных для использования. Мало кто обойдется длительное время без кнопок, списков, окон ввода и т.д. Все эти объекты такая же часть Windows, как мышь или окно. Набор и порядок компонент на каждой странице являются конфигурируемыми. Так, Вы можете добавить к имеющимся компонентам новые, изменить их количество и порядок. Стандартные компоненты Delphi перечислены ниже с некоторыми комментариями по их применению. При изучении данных компонент было бы полезно иметь под рукой компьютер с тем, чтобы посмотреть, как они работают и как ими манипулировать. TMainMenu позволяет Вам поместить главное меню в программу. При помещении TMainMenu на форму это выглядит, как просто иконка. Иконки данного типа называют "невидимыми компонентом", поскольку они невидимы во время выполнения программы. Создание меню включает три шага: (1) помещение TMainMenu на форму, (2) вызов Дизайнера Меню через свойство Items в Инспекторе Объектов, (3) определение пунктов меню в Дизайнере Меню. TPopupMenu позволяет создавать всплывающие меню. Этот тип меню появляется по щелчку правой кнопки мыши. TLabel служит для отображения текста на экране. Вы можете изменить шрифт и цвет метки, если дважды щелкнете на свойство Font в Инспекторе Объектов. Вы увидите, что это легко сделать и во время выполнения программы, написав всего одну строчку кода. TEdit - стандартный управляющий элемент Windows для ввода. Он может быть использован для отображения короткого фрагмента текста и позволяет пользователю вводить текст во время выполнения программы. TMemo - иная форма TEdit. Подразумевает работу с большими текстами. TMemo может переносить слова, сохранять в Clipboard фрагменты текста и восстанавливать их, и другие основные функции редактора. TMemo имеет ограничения на объем текста в 32Кб, это составляет 10-20 страниц. (Есть VBX и “родные” компоненты Delphi, где этот предел снят). TButton позволяет выполнить какие-либо действия при нажатии кнопки во время выполнения программы. В Delphi все делается очень просто. Поместив TButton на форму, Вы по двойному щелчку можете создать заготовку обработчика события нажатия кнопки. Далее нужно заполнить заготовку кодом (подчеркнуто то, что нужно написать вручную):

Procedure TForm1.Button1Click(Sender: TObject); begin MessageDlg("Are you there?", mtConfirmation, mbYesNoCancel, 0); end; TCheckBox отображает строку текста с маленьким окошком рядом. В окошке можно поставить отметку, которая означает, что что-то выбрано. Например, если посмотреть окно диалога настроек компилятора (пункт меню Options | Project, страница Compiler), то можно увидеть, что оно состоит преимущественно из CheckBox’ов. TRadioButton позволяет выбрать только одну опцию из нескольких. Если Вы опять откроете диалог Options | Project и выберете страницу Linker Options, то Вы можете видеть, что секции Map file и Link buffer file состоят из наборов RadioButton. TListBox нужен для показа прокручиваемого списка. Классический пример ListBox’а в среде Windows - выбор файла из списка в пункте меню File | Open многих приложений. Названия файлов или директорий и находятся в ListBox’е. TComboBox во многом напоминает ListBox, за исключением того, что позволяет водить информацию в маленьком поле ввода сверху ListBox. Есть несколько типов ComboBox, но наиболее популярен выпадающий вниз (drop-down combo box), который можно видеть внизу окна диалога выбора файла. TScrollbar - полоса прокрутки, появляется автоматически в объектах редактирования, ListBox’ах при необходимости прокрутки текста для просмотра. TGroupBox используется для визуальных целей и для указания Windows, каков порядок перемещения по компонентам на форме (при нажатии клавиши TAB). TPanel - управляющий элемент, похожий на TGroupBox, используется в декоративных целях. Чтобы использовать TPanel, просто поместите его на форму и затем положите другие компоненты на него. Теперь при перемещении TPanel будут передвигаться и эти компоненты. TPanel используется также для создания линейки инструментов и окна статуса. TScrollBox представляет место на форме, которое можно скроллировать в вертикальном и горизонтальном направлениях. Пока Вы в явном виде не отключите эту возможность, форма сама по себе действует так же. Однако, могут быть случаи, когда понадобится прокручивать только часть формы. В таких случаях используется TScrollBox. Это полный список объектов на первой странице Палитры Компонент. Если Вам нужна дополнительная информация, то выберите на Палитре объект и нажмите клавишу F1 - появится Справочник с полным описанием данного объекта. Остальное связано с построением пользовательского интерфейса: размещению объектов на форме, настройке их свойств и написанию обработчиков событий. А также созданию приложений, работающих с базами данных. Итак, очевидно, что пользователь является замыкающим звеном системы управления, т.е. субъектом управления, а программа является объектом управления. Рациональная организация труда пользователей является одним из важнейших факторов, определяющих эффективное функционирование системы в целом. До появления операционных систем семейства Windows пользователь вёл управление, «не видя» реального объекта. Между реальным объектом управления и пользователем находилась информационная модель объекта (средства отображения информации). Поэтому возникала проблема проектирования не только средств отображения информации, но и средств взаимодействия пользователя с техническими средствами программы, т.е. проблема проектирования системы, которая имеет название интерфейс пользователя.

Возможности среды программирования Delphi

Анализ опыта внедрения в школах, вузах и различных предприятиях, компьютерных программ учебного назначения показывает, что важным фактором, препятствующим их широкому применению, является неполное соответствие предлагаемого материала идеям и методам преподавания той или иной дисциплины. Многие педагоги проявляют значительную осторожность в использовании обучающих программ и педагогических программных средств. Идеальным решением этой проблемы является полный учет требований пользователя (преподавателя), что практически недостижимо. В настоящее время в сфере разработки обучающих и других учебных программ доминируют интересы и предпочтения производителя, то есть программистов-разработчиков компьютерных программ. В печати и на конференциях различного уровня не раз высказывалось мнение, что современному педагогу, скорее нужен не диск с полным мультимедийным курсом по предмету, а некоторые элементарные кирпичики, которые он мог бы использовать в качестве красочных иллюстраций своих идей и методов и которые более органично вписались бы в традицию использования наглядных пособий, подбираемых педагогом для своего занятия. В связи с этим представляется целесообразным создание не законченной обучающей продукции, а своеобразных электронных конструкторов - инструментальных программных средств (авторских систем) для создания педагогом собственных приложений. Одним из таких инструментальных средств является Delphi. Однако, имеется крайне мало литературы начального уровня, предназначенной для освоения Delphi применительно к использованию в учебном процессе. Профессиональным программистам такие задачки, как мини-калькулятор или учебный графический редактор, неинтересны - им, скорее, подавай примеры работы с базами данных по технологии "клиент-сервер". А учителю это как раз совсем не нужно. Delphi можно изучать и использовать на нескольких уровнях: Работа с визуальными объективами практически без программирования. Использование готовых компонентов системы с написанием на их основе собственного программного кода. Создание собственных компонентов на языке Паскаль и включение их в палитру компонентов Delphi в качестве стандартных. Разработка законченных Windows-приложений. Для школьного курса более чем достаточно первого уровня (задачи второго уровня можно решать в курсе профильной школы и на факультативах). Не так давно программирование, ориентированное на объекты и события, казалось непрофессионалам большой экзотикой. Однако даже после прихода Windows 95/98 такой стиль создания программ пока фактически не востребован в реальной школьной практике. Приведу пример проведения занятий по созданию приложений Windows с группами школьников, углубленно изучающими информатику. Для работы была выбрана среда визуального конструирования программ Delphi3. Школьники, приступившие к изучению и применению Delphi, уже достаточно хорошо работали в Windows 95 и приложениях. Поэтому интегрированная среда разработки Delphi воспринималась учениками совершенно естественно. Конструирование форм с различными визуальными компонентами (хорошо знакомыми элементами управления Windows) и работа с инспектором объектов по установлению свойств объектов вызывала у школьников неподдельный интерес. Одновременно создавались первые приложения, в которых свойства объектов можно изменять в программном режиме. Весьма живо воспринималось применяемое преподавателями образное сравнение: мы проектируем Windows"кого робота, создаем заготовки его частей, программируем его реакции на те или иные действия пользователя, в процессе компиляции Delphi собирает робота и запускает его в работу. Теперь надо определить, получился ли робот, таким, как мы хотели. Получая практический опыт конструирования событийно-управляемых объектно-ориентированных программ, школьники выходили затем с помощью преподавателя на уровень соответствующих теоретических обобщений. Ряд школьников с эмпирическим стилем мышления успешно конструировали весьма интересные приложения, ограничиваясь минимальным применением базовых управляющих структур при разработке процедур. В то же время за этими структурами они видели теперь не средства для организации трудно воспринимаемых абстрактных вычислений, а средства для обучения Windows"кого робота, то есть средства решения очень интересной задачи. Школьники с развитым теоретическим стилем мышления, освободившись от рутины организации интерфейса Турбо Паскаля и жестких рамок его возможностей, выходили на разработку серьезных развитых проектов с использованием разнообразных компонентов Delphi и хорошей проработкой кода процедур. По моему мнению, современные технологии конструирования приложений Windows на Delphi во многом более доступны школьникам, чем традиционное программирование, вызывают большой интерес, способствуют раскрытию творческого потенциала ученика и обладают замечательными дидактическими возможностями.

Обзор приложений созданных в среде Delphi

Требования к средам визуального программирования

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

  1. Среда должна быть разработана для функционирования в наиболее популярной из современных операционных систем, которая поддерживает графический интерфейс с пользователем. Это даст возможность изучать основы алгоритмизации, используя значительное количество компьютерной техники, которой укомплектованы средние школы. На данный момент - это операционные системы семейства Windows фирмы Microsoft.
  2. Среда должна быть разработана с соблюдением общих стандартов для современных программных продуктов. Это обеспечит удобство и простоту работы с элементами управления среды: меню, панелями инструментов и т.п., и даст возможность закрепить основные навыки работы пользователя с программными средствами.
  3. Среда должна быть простой и мощной. Простота освоения и пользования средой, возможности конструирования широкого класса алгоритмов с использованием всех доступных на сегодняшний момент ресурсов мультимедийных компьютеров.
  4. Для предоставления алгоритмов необходимо выбрать форму, которая должна удовлетворять двум основным критериям: быть наглядной и понятной для пользователя и быть удобной для реализации в графической оболочке операционной системы. Кроме этого, форма предоставления, в силу возможностей, должна быть наиболее приближенной к содержанию алгоритма, а не к синтаксису алгоритмических структур, который используется в этом представлении.
  5. Методы, при помощи которых конструируются алгоритмы в среде, должны основываться на методах создания программного обеспечения при помощи современных средств разработки, в основе которых лежит объектный подход и визуализация. Это, по нашему мнению, даст возможность ученикам при необходимости, например, при изучении основ современного программирования в классах с углубленным изучением информатики или факультативно, быстрее освоить технологию визуального программирования.
  6. Одной из главных задач является создание среды, ориентированной на выделение смыслового содержания решаемой задачи, а не на изучение алгоритмических структур конкретного представления. "Невзирая на то, что разработка каждого нового алгоритма требует своего подхода, тем не менее существуют определенные общие приемы и этапы этого рода деятельности". Поэтому в среде должна быть реализована унификация алгоритмических структур как конструкций, которые содержатся в любых алгоритмах, а не только алгоритмах определенного класса. В роли таких унифицированных структур целесообразно использовать такие стандартные алгоритмические конструкции: следование, разветвление, повторение и вызов подпрограммы.
  7. Действия, которые относятся к решению определенной задачи, должны быть определенными по смысловому содержанию, и организованы в виде отдельного блока (подпрограммы). Например, если необходимо проиграть какой-нибудь звуковой файл, то и смысл этой конструкции должен быть - "проиграть звуковой файл с определенным именем".
  8. В среде структура алгоритма должна быть представлена в графической форме при помощи определенного "графического" синтаксиса. Наряду с этим для обозначения идентификаторов, названий методов графически-визуальных объектов возможное использование текстового синтаксиса. Такого рода синтаксис нельзя "изъять" полностью, поскольку он является внешним по отношению к алгоритмическому представлению. Но такой "внешний" синтаксис основывается на понятиях, известных ученикам по собственному опыту, приобретенному при изучении других школьных предметов, и его применение не должно вызывать значительных трудностей.
  9. В среде пользователю должна быть предоставлена возможность свободно менять синтаксис текстово-символьных команд (там, где это целесообразно). Например, изменить символ арифметического сложения "+" на какой-то другой вряд ли стоит с точки зрения ясности и унификации, а вот выбрать название для действия изъятия в символьной строке - "стереть" или "delete" - целиком зависит от желания пользователя.
  10. Как известно, каждый алгоритм работает с определенным набором данных, которые обрабатываются при помощи некоторых методов. Собственно, алгоритм - это процесс преобразования входных данных в выходные. Поэтому следует предусмотреть явное разграничение между данными и методами их обработки. Это не противоречит парадигме процедурного программирования. Достаточно только вспомнить известную "формулу" Н. Вирта "алгоритмы + данные = программа". При этом, данные логично сделать строго типизированными, как того требуют правила современных языков программирования, и разместить их отдельно, например в виде таблицы, доступ к которой можно быстро получить в любой момент конструирование алгоритма.

Методология создания приложений учебного назначения

Создание любого компьютерного приложения, а особенно курса по информатики, сегодня не мыслится без тщательно продуманного плана разработки. В настоящее время существует хорошо отработанная методология создания компьютерных обучающих систем. Как и всякая методология проектирования, она включает целый ряд последовательных этапов. Для создания обучающей программы необходимо:
Выбрать тип программы. На этом этапе определяются основные цели и задачи программы, а также средства её реализации.
Собрать подходящие исходные материалы - тексты, репродукции и иллюстрации, аудиозаписи, видеокассеты, компьютерные файлы. Полнота собранных материалов говорит о готовности к реализации программы и определяет уровень её качества.
Написать сценарий программы и взаимодействия преподавателя с ней, определяющий композицию всех собранных материалов. Здесь определяется вся логика программы. Сценарий описывает связи между слайдами, структуру и изменения на этих слайдах, а также звуковые и видеоэффекты.
Обработать собранные материалы на компьютере, подготовив их к включению в обучающую программу, т.е. создать и отредактировать текстовые, графические, анимационные, видео, звуковые сопровождения. Здесь используются как стандартные средства самой операционной системы, так и ставшие стандартными пакеты редактирования текстов (Microsoft Word), компьютерной графики и анимации (3D Studio, Adobe PhotoShop), видеомонтажа (Adobe Premiere), Web-мастеринга (Microsoft FrontPage), а также программы, поставляемые вместе с аудио- и видео платами.
Реализовать сценарий в виде действующей программы, внося необходимые изменения в материалы и сценарий в процессе опытной эксплуатации. Для авторов, не являющихся программистами, лучшим вариантом является использование таких средств визуального программирования, как Power Point из Microsoft Office, Macromedia Director, а также средства Web-мастеринга. Наконец, профессиональные программисты могут использовать системы программирования Visual C++, Visual Basic, Delphi, Java и др., но оптимальных сроков разработки они добьются, если будут их использовать в дополнение к перечисленным выше системам.
Подготовить методические материалы для пользователей программы - преподавателей. Такие материалы необходимы, так как пользователи программы, как правило, не обладают квалификацией её авторов.

Практическая часть

Создание простейших программ учебного назначения.

Проект "Подбор цвета"

Формирование цвета из отдельных компонент. Класс TColor, константы цвета, функция RGB Цвета объектов образуются смешением трех компонент - красной (red), зеленой (green) и синей {blue). Интенсивность каждой составляющей цвета может изменяться от 0 до 255. Комбинация (0, 0, 0) соответствует черному, а (255, 255, 255) - белому цвету. Почти у каждого визуального компонента есть свойство Color. До сих пор мы выбирали его значение из списка стандартных цветов, но ничто не мешает создать цвет из отдельных компонент. Для этого воспользуемся функцией RGB: Color:= RGB (red, green, blue); Можно создать также свою цветовую гамму, заранее заготовив цвета для различных визуальных объектов. Но использовать эти цвета можно будет только при создании соответствующего объекта на этапе выполнения программы (об этом поговорим немного позже). Для подбора цвета разработаем проект, позволяющий легко изменять цвет панели с помощью полос прокрутки - объектов класса TScrollBar. Поместим на форму панель и три полосы прокрутки (они также находятся на вкладке standard). Каждая полоса прокрутки будет отвечать за интенсивность одной из трех цветовых компонент. Крайнее левое положение ползунка должно соответствовать минимальному, а крайнее правое - максимальному значению интенсивности. Зададим для всех полос свойство Min=0, а свойство Мах=2 5 5. Настроим другие свойства: Kind - определяет размещение полосы - горизонтальное (sbHorizontal) или вертикальное (sbVertical); LargeChange-шаг перемещения ползунка при щелчке на самой полосе; SmallChange - шаг перемещения ползунка при щелчке на стрелке; Position - числовой эквивалент положения ползунка на полосе скроллинга,

Исходный код:

Вы можете сразу скачать в архиве ZIP.

Программа1. «Подбор цветов»
Основное событие для полосы скроллинга - перемещение ползунка (событие OnChange), при этом способ перемещения значения не имеет. Напишем отдельную процедуру изменения цвета панели:

Procedure SetPanelColor; var red, green, blue, k: word; begin red:= Form1. ScrollBar1.Position; if form1.rb1.Checked then begin k:=255 div 2; if (red>=0) and(red=0) and(green=0) and(blue и будем ее вызывать в ответ на перемещение ползунка на любой полосе скроллинга: procedure TForm1.ScrollBar1Change(Sender: TObject); begin SetPanelColor; end; procedure TForm1.ScrollBar2Change(Sender: TObject); begin SetPanelColor; end; procedure TForm1.ScrollBar3Change(Sender: TObject); begin SetPanelColor; end; Выбирая палитру из 8 цветов мы должны изменять положение ползунка так чтобы его движение равнялось 0 либо 255: procedure TForm1.RB1Click(Sender: TObject); begin Form1.Caption:="Палитра из 8 цветов; ScrollBar1.LargeChange:=255; ScrollBar1.SmallChange:=255; ScrollBar1.Position:=0; ScrollBar2.LargeChange:=255; ScrollBar2.SmallChange:=255; ScrollBar2.Position:=0; ScrollBar3.LargeChange:=255; ScrollBar3.SmallChange:=255; ScrollBar3.Position:=0; end; procedure TForm1.RB2Click(Sender: TObject); begin Form1.Caption:="Палитра из 256 цветов; ScrollBar1.LargeChange:=1; ScrollBar1.SmallChange:=1; ScrollBar1.Position:=0; ScrollBar2.LargeChange:=1; ScrollBar2.Position:=0; ScrollBar2.SmallChange:=1; ScrollBar3.LargeChange:=1; ScrollBar3.SmallChange:=1; ScrollBar3.Position:=0; end; Проект готов, можем запустить и поработать с ним. Вариант оформления проекта приведен на рисунке:

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

Составные компоненты программы:
Панель (Panel) для отображения цвета;
3 полосы прокрутки (ScrollBar) для изменения цветовой гаммы (КЗС или КККЗЗЗСС);
2 переключателя (RadioButton) для выбора цветовой палитры;
3 текстовых поля (Edit) для вывода цветового кода;
Кнопка(BitBtn) для закрытия программы.

Для подтверждения факта преемственности используемой терминологии на рис 1.2 показан общий вид интегрированной среды разработки (IDE - Integrated Development Environment) Delphi. На этом рисунке отмечены все основные компоненты среды раз работки: главное окно (Main Window), палитра компонентов (Component Palette), пане ли инструментов (toolbars), окно конструктора форм (Form Designer), окно редактора кода (Code Editor), окно инспектора объектов (Object Inspector), дерево объектов (Object TreeView) и проводник структуры кода (Code Explorer).

Главное окно

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

Главное меню

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

Панели инструментов Delphi

Панели инструментов предоставляют доступ к различным функциям главного ме ню IDE с помощью единственного щелчка на соответствующей кнопке. Обратите внимание, что для каждой кнопки панели инструментов предусмотрен вывод под сказки, содержащей описание ее назначения. Не считая палитры компонентов, в IDE Delphi имеется пять отдельных панелей инструментов: Debug (Отладка), Desktop (Рабочий стол), Standard (Стандартная), View (Вид) и Custom (Пользовательская). На рис. 1.2 показана конфигурация кнопок этих панелей, принимаемая по умолчанию. Но любую из кнопок можно удалить или добавить, выбрав в меню View пунктыToolbars, Customize. На рис. 1.3 показано диалоговое окно Customize, предназначен ное для настройки панелей инструментов. Чтобы добавить новую кнопку на любую панель инструментов, достаточно просто перетащить ее из этого окна. Для удаления кнопки достаточно перетащить ее за пределы панели инструментов.

Панели инструментов Дерево объектов Главное окно Окно конструктора форм

Палитра компонентов Окно инспектора объектов Проводник структуры кода

Окно редактора кодаРис. 1.2. Общий вид интегрированной среды разработки (IDE) Delphi 6

Рис. 1.4. Плавающие панели инструментов

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

Палитра компонентов представляет собой панель инструментов удвоенной высо ты, содержащей несколько вкладок, в которых находятся все установленные в среде IDE компоненты VCL и ActiveX. Порядок следования и вид вкладок и компонентов может быть настроен с помощью щелчка правой кнопкой мыши на интересующем объекте или в главном меню (пункты Component, Configure Palette).

Конструктор форм

При запуске конструктор форм (Form Designer) представляет собой пустую панель, готовую к превращению в окно приложения Windows. Его можно рассматривать как холст художника, предназначенный для создания графического интерфейса будущего приложения - здесь определяется, как оно будет выглядеть с точки зрения пользовате ля. Процесс создания заключается в выборе компонентов на палитре и перетаскивании их в форму. Точное размещение и установку размеров компонентов также можно вы полнить с помощью мыши. Кроме того, существует возможность управлять внешним видом и поведением компонентов из окон Object Inspector и Code Editor.

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

В окне Object Inspector можно изменять свойства компонентов формы или опреде лять события, на которые будет реагировать сама форма или ее компоненты. Свойства (properties) представляют собой данные, определяющие, как объект выглядит на экра не, - размер, цвет, шрифт и т.д. События (events) - это участки кода, выполняемые в от вет на некоторые действия, происходящие в приложении. Примером события может служить поступление сообщения от мыши или передача сообщения окну с требованием его перерисовки. В окне Object Inspector для переключения между работой с событиями и работой со свойствами используется стандартная технология вкладок (notebook tab) - для перехода в ту или иную вкладку достаточно щелкнуть на ее корешке. Инспектор по казывает события и свойства, относящиеся к той форме или компоненту, который ак тивен в конструкторе форм в настоящее время.

Одной из возможностей Delphi является способность упорядочивать содержимое окна Object Inspector либо по категории, либо по именам (в алфавитном порядке). Дляэтого достаточно щелкнуть правой кнопкой мыши в любом месте окна Object Inspector и выбрать в раскрывшемся контекстном меню пункт Arrange (Выстроить). На рис. 1.5 показаны два расположенных рядом окна Object Inspector. В левом окне объекты упорядочены по категории, а в правом - по именам. Кроме того, с помощью пункта View этого же контекстного меню можно определить, какие именно категории объектов необходимо представить в данный момент.

Одним из наиболее ценных источников знаний, которым должен уметь пользо

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

Редактор кода

Рис. 1.5. Представление содержимого

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

Можно работать сразу с несколькими окнами Code Editor. Чтобы открыть новое окно ре-

дактора кода, необходимо выбрать в главном меню View пункт New Edit Window.

Система визуального программирования 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, рассмотрев ее явные преимущества - визуальное конструирование форм и использование библиотеки визуальных компонентов, можно использовать данный продукт ООП для создания пакета автоматизированных методик.

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, потому что данный объект происходит от первого.

Выбор редакции
Для комфортной работы при создании чертежа нужно знать, как обрезать линию в Автокаде и как удлинить линию в Автокаде. Пользоваться...

Современное общество не в силах обойтись без компьютерных технологий. А обращаться с компьютером учит нас информатика. Интересные факты о...

Инструкция по установке официальной однофайловой прошивки на Samsung Galaxy S5 Mini (SM-G800x). Драйвера и программы Внимание! Чтобы...

Компания huawei была основана в 1987 году и за 31 год существования завоевала одно из лидирующих мест на мировом рынке. На сегодняшний...
Не хочется быть банальным, но так называемая "проблема черного экрана" при загрузке операционной системы после включения компьютера -...
Средняя оценка: 4.1 Всего проголосовало: 115 Скачать антивирус бесплатно без регистрации и смс, а главное без проблем — эту...
В последнее время очень часто получаю вопросы от читателей сайта и гостей моего канала Понятное ТВ . Вот некоторые из них: На данный...
Владельцы Android-смартфонов и планшетов, зачастую, ищут способы разблокировки загрузчика (bootloader). Тем не менее, сейчас набирает...
Вы хотите знать, как установить виндовс 7 на ноутбук бесплатно? Столкнулись с необходимостью переустановки операционной системы, но не...