Лекции по высокоуровневым методам информатики и программированию
| |имя |
| |MAINICON. |
| | |
| | |
|В файле ресурсы разбиты на группы. Каждая группа| |
|имеет имя. | |
|Image Editor позволяет работать с файлами, | |
|содержащими следующие ресурсы: | |
|Пиктограммы компонентов (*.DCR); | |
|Растровые изображения (*.BMP); | |
|Пиктограммы приложений (*.ICO) | |
|Курсоры (*.CUR). | |
| | |
| | |
| | |
|2.5. Файл параметры проекта PROGECT.OPT |17 |
|Используется для установки параметров проекта с |Этот фай представляет собой |
|помощью команды меню Project / Options. |текстовой файл, который содержит |
| |текущие установки проекта: |
|Параметры разбиты на группы, каждая из которых |настройки компилятора и |
|располагается в соответствующем окне на своей |компоновщика, |
|странице. |имена служебных каталогов, |
| |условные директивы и параметры |
| |командной строки, |
| |настройки проекта (какие окна |
| |открыты и в каких позициях они |
| |расположены), |
| |конфигурацию проекта. |
| |Например: |
| |Проект может быть откомпилирован с |
| |отладочной информацией или без нее.|
| |Во время разработки целесообразно |
| |постоянно включать в проект |
| |отладочную информацию. Для этого |
| |необходимо установить опцию Debug |
| |Information на странице Compiler |
| |данного диалогового окна (ДО). |
|После установки отдельных параметров Delphi |файл конфигурации: *.DOF-файл, |
|автоматически вносит нужные изменения в |содержит текущие установки проекта,|
|соответствующие файлы проекта. |например, настройки компилятора, |
|Файл параметров проекта представляет собой |имена служебных папок и т.п. |
|текстовой файл, в котором построчно |DSK –файл с настройками проекта. Он|
|располагаются параметры и их значения. |позволяет восстановить внешний вид |
| |рабочей среды проекта. |
|2.5. Резервные файлы | |
|Delphi создает резервные копии файла проекта, а |Если первый символ в расширении |
|также PAS- и DFM-файлов. |файла – тильда ((), речь идет о |
|Резервные копии: |зарезервированной копии. |
|*.(DP файла проекта с расширением DPR. | |
|Создается | |
|при повторном сохранении проекта. |*.(BP файла группы проектов с |
|*.(PA модуля проекта с расширением PAS. |расширением BPG. Этот файл |
|Создается |создается при повторном сохранении |
|при повторном сохранении проекта, если в исход |файла группы проектов. |
|ном коде модуля были сделаны изменения. | |
|*.(DF файла формы. Создается в случае, если | |
|DFM- | |
|файл был открыт в виде текста, и в нем были | |
|сделаны изменения. | |
|3. 0. Компиляция и выполнение проекта | |
|В процессе компиляции проекта создается: | |
|готовый к выполнению файл (*.EXE) или |Который может быть приложением. |
|динамически загружаемая библиотека (*.DLL). |Будем рассматривать только |
| |файл-приложение. |
|Имя приложения совпадает с именем файла проекта.|Приложение.EXE не требует при своей|
| |работе дополнительных файлов |
|Само приложение является автономным. |Delphi.. |
|Запуск процесса компиляции выполняется по |18 |
|команде Project /Compile |В команде содержится имя проекта, |
|Компиляция может быть выполнена на любой стадии |раз работка которого выполняется в |
|разработки проекта. |настоя щий момент (первоначально |
|При компиляции происходит: |Project1). |
|создание исполняемого файла - приложения *.EXE; |При сохранении проекта под другим |
|компиляция файлов всех модулей, содержимое |именем соответственно должно |
|которых изменилось после последней компиляции. |измениться имя проекта в команде |
|В результате создается файл с расширением *.DCU;|меню. |
| | |
|перекомпиляция модуля, в который внесены |Компиляция на любой стадии |
|изменения и модулей, использующие его с помощью |позволяет проверить вид и |
| |правильность функционирования |
|директивы uses. |фрагментов создаваемого кода. |
|Ход процесса компилирования будет отображаться |Проект может быть откомпилирован с |
|на экране, если установить опцию Show compiler |отладочной информацией или без нее.|
|progress |Во время разработки целесообразно |
|в меню Tools/ Environment Options/ Preferences. |постоянно включать в проект |
| |отладочную информацию. Для этого |
| |надо установить опцию Debug |
| |Information на странице Compiler |
| |данного диалогового окна (ДО). |
| |Preferences (предпочтение) |
| |Ход процесса компилирования будет |
| |отображаться на экране. |
|Сборка проекта выполняется командой Project |Кроме компиляции может быть |
|/Bild |выполнена сборка проекта. |
| . |Проект/Собрать |
|При сборке перекомпилируются все модули, | |
|входящие в проект, не зависимо от того, были в | |
|них внесены изменения или нет. | |
| | |
|Запускать проект можно из: | |
|среды Delphi и | |
|среды Windows. |Выполнение/выполнить. |
| | |
|Запуск проекта из среды Delphi выполняется | |
|командой Run/Run. | |
|Созданное приложение начинает свою работу. | |
|При внесении изменений в файлы, предварительно | |
|выполняется компиляция проекта. | |
|Особенности запуска в среде Delphi: | |
|нельзя запустить вторую копию приложения; | |
|продолжить разработку проекта можно только после| |
|завершения работы приложения; | |
|при "зависании" приложения завершение его работы| |
|необходимо выполнить средствами Delphi командой | |
|Run/Program Reset или клавишами +. | |
| | |
|Запуск проекта из среды Windows запускается так | |
|же, как и любое другое приложение, например с | |
|помощью Проводника. | |
|Для отладки приложений в среде Delphi можно | |
|использовать отладчик. | |
|4.0. Разработка приложения |19 |
|Состоит из двух этапов: |Delphi относится к системам |
|Создание интерфейса приложения, |визуального программирования, |
|Определение функциональности приложения. |которые относятся к системам |
| |быстрой разработки приложений. |
|Для создания интерфейса необходимо: |Интерфейс приложения определяет |
|выбрать нужные компоненты; |способ взаимодействия пользователя |
|определить внешний вид и функциональные |и приложения, т.е. внешний вид |
|возможности компонентов; |формы при выполнении приложения и |
|отобразить окно Инспектора Объектов; |то, каким способом пользователь |
|расположить компоненты на форме. |управляет приложением. С помощью |
| |Конструктора Формы интерфейс |
|Для обеспечения функциональности приложения |создается путем размещения в форме |
|необходимо: |компонентов. |
|задать в Инспекторе Объектов значения свойств и |Функциональность приложения |
|процедур обработки событий; |определяется процедурами, которые |
|написать программный код для заданных процедур |выполняются при возникновении |
|обработки событий. |определенных событий, происходящих |
| |при действиях пользователя с |
| |управляющими элементами формы. |
|4.1. Простейшее приложение | |
| |Форма содержит основные элементы |
|Представляет собой заготовку, обеспечивающую все|окна Windows: заголовок Form1, |
|необходимое для приложения. Это: |кнопки минимизации, максимизации и |
|форма, для которой уже созданы два файла с |закрытия окна, изменения размеров |
|описанием и модулем. |окна и кнопку вызова системного |
|При создании приложений в форму помещаются |меню. Эта форма отображается при |
|компоненты, для них устанавливаются свойства и |первом запуске Delphi |
|создаются обработчики событий. |Приложение Windows выполняется в |
|К простейшему приложению разработчик добавляет |окне и даже если оно ничего не |
|новые формы. |делает, является пустым, должно |
| |иметь окно. Окно реагирует на |
| |изменение размера, перемещение, |
| |закрытие и др. команды. |
|4.2. Создание интерфейса приложения | |
|Интерфейс приложения составляют компоненты. |Сами компоненты являются |
|Визуальные компоненты – это кнопки, списки, |строительными блоками. Выбираются |
|переключатели, надписи. |из Палитры и устанавливаются на |
|Не визуальные ( логические ) выполняют |форме. Их свойства можно изменить. |
|вспомогательные действия – это секундомер, |После размещения компонента в форме|
|таблицы данных, отчеты |можно изменять с помощью мыши его |
| |положение и размеры. |
|Для установки на форме нескольких одинаковых |Кроме того, для нескольких |
|компонент необходимо: |компонентов можно выполнять |
|Нажать и удерживать клавишу . |выравнивание или перевод того или |
|Выбрать на Палитре компонентов щелчком мыши |иного компонента на передний или на|
|нужный компонент. |задний план. |
|Щелкать мышью в те места на Форме, где должны |По умолчанию компоненты |
|быть расположены эти компоненты. |выравниваются на форме по линиям |
|Отменяется выбор данного компонента щелчком мыши|сетки. По умолчанию шаг сетки равен|
|на изображении стрелки в левом краю Палитры |восьми пикселам, а сетка при |
|компонентов или выбором другого компонента. |проектировании отображается на |
|Выделение нескольких компонент на форме |поверхности формы. |
|выполняется с помощью мыши при нажатой клавиши |20 |
|. |Внешний вид компонента определяют |
|Редактирование компоненты можно с помощью |его свойства, которые доступны в |
|контекстного меню или меню Edit/Align. |окне Инспектора объектов (ИО), |
| |когда объект выделен на форме. |
|Свойства компонента это атрибуты, определяющие |В верхней части окна в |
|способ отображения и функционирования компонент.|раскрывающемся списке, отображаются|
| |название компонента и его тип. В |
| |этом списке выбираются нужные |
| |компоненты и тем самым, можно |
| |получить доступ к свойствам этих |
| |компонентов (особенно, если |
| |компоненты закрыты другими). |
| |Управлять свойствами можно |
| |непосредственно в окне конструктора|
| |формы или с помощью Инспектора |
| |объектов. |
|Типы свойств: | |
|простые – это те, значения которых являются |В левой части окна ИО приводятся |
|числами или строками. Например, Caption, Name, |названия всех свойств компонентов, |
|Left, Top; |которые доступны на этапе |
|перечисляемые – это те, которые могут принимать |разработки приложения. Для каждого |
|значения из предложенного набора (списка). |свойства справа содержится значение|
|Например, тип Boolean принимает значение True |этого свойства. |
|или False; |По умолчанию первая кнопка получает|
|вложенные – это те, которые поддерживают |имя Button 1, вторая Button 2 и |
|вложенные значения (или объекты). Имеются два |т.д. |
|вида свойств множества и комбинированные |Разработчик может изменить свойство|
|значения. |компонента, введя или выбрав нужное|
| |значение (название кнопки – |
|Для изменения значения свойств необходимо: |Закрыть). |
|щелкнуть мышью по его имени в левой колонке; |Результат изменения свойств |
|открыть список, появившийся в соответствующей |компонента становится сразу видимым|
|ячейке правой колонки: |в окне проектировщика форм. |
|выбрать нужное свойство. |При изменении значения свойства |
|Утверждается свойство клавишей , |Caption (Название) кнопки на |
|отменяется изменение клавишей . |поверхности ее появляется новое |
|Редакторы для установки значения свойств: |название. |
| | |
| |Например: Caption, Left, Height, |
| |Hint. |
| |Свойства: FormStyle, Visible, |
| |ModalResult |
| |Объект – содержит свойства, каждое |
| |из которых можно редактировать |
| |отдельно. В области значения |
| |свойства-объекта в скобках |
| |указывается тип объекта. |
| |Свойство представляет комбинацию |
|При выполнении приложения свойства компонентов |значений из предлагаемого множества|
|можно изменять с помощью операторов | |
|присваивания. |Если для свойства введено |
|Изменение заголовка кнопки Button 1 можно |неправильное значение, то выдается |
|программно: |предупреждающее сообщение. |
|Button 1.Caption:= ' Закрыть '; |Это требует большего объема работ, |
| |чем в случае использования ИнОб. |
| |Тем не менее, отдельные свойства |
| |устанавливаются именно с помощью |
| |операторов присваивания. |
|4.3. Определение функциональности приложения |21 |
| |После компиляции на экране |
|Реакция окна на разного рода действия |появляется форма приложения, с |
|пользователя определяет функциональность |которой можно работать как с |
|приложения. |обычным окном Windows (перемещать |
| |по экрану, изменять ее размеры, |
| |минимизировать или максимизировать,|
| |закрывать). |
| |Реакция на приведенные действия |
| |присуща каждой форме и не зависит |
| |от назначения приложения и его |
| |особенностей. На форме обычно |
| |размещены компоненты, образующие |
| |интерфейс приложения, и разработчик|
| |должен для этих компонентов |
|Обработчики событий компонента – какое действие |определить нужную реакцию на те или|
|можно поручить выделенному компоненту. Каждый |иные действия пользователя |
|компонент имеет стандартный обработчик события. |(например, нажатие кнопки или выбор|
|Чтобы при нажатии на кнопке "Закрыть" кнопка |переключателя). |
|реагировала на событие закрыть, необходимо |Код модуля при создании обработчика|
|создать или указать процедуру обработки события,|событий кнопки "Закрыть" |
|которая будет вызываться при возникновении |unit ASA; |
|данного события. |interface |
| |uses |
|Для создания процедуры обработки события нужно: |Windows, Messages, SysUtils, |
|1) выделить на форме компонент; |Classes, Graphics, Controls, Forms,|
|2) перейти на страницу событий Инспектора |Dialogs, |
|Объектов; |StdCtrls; |
|3) создать обработчик события OnClick. |type |
|Для этого: |TForm1 = class(TForm) |
|сделать двойной щелчок в области значения |Button1: TButton; |
|события OnClick, ( Delphi автоматически создаст |procedure button1Click(Sender: |
|в модуле формы заготовку процедуры-обработчика).|TObject); |
| |private |
|в месте, где установится курсор написать код, |{ Private declarations } |
|который будет выполняться при нажатии кнопки |public |
|Button1. |{ Public declarations } |
|- набрать строку Form1.Close; |end; |
|Все остальное Delphi создает автоматически. |var |
| |Form1: TForm1; |
|При изменении имени кнопки с помощью Инспектора |implementation |
|Объектов происходит автоматически переименование|{$R *.DFM} |
|этой процедуры во всех файлах (DFM и PAS) |procedure |
|проекта. |TForm1.Button1Click(Sender: |
| |TObject); |
|Для удаления процедуры-обработчика достаточно |begin |
|удалить код, который программист вносил в нее |Form1.Close; |
|самостоятельно. После этого при сохранении или |end; |
|компиляции модуля обработчик будет удален |end. |
|автоматически из всех файлов проекта. |Итак, Инспектор Объектов – это |
| |инструмент, для формирования |
|Процедура, связанная с несколькими событиями для|внешнего вида и функциональных |
|различных компонент называется общим |возможностей формы и компонентов в |
|обработчиком и вызывается при возникновении |процессе разработки приложения. |
|любого из связанных с ней событий. |Вместо создания нового обработчика |
| |для события можно выбрать |
| |существу-ющий обработчик, если |
| |такой имеется. |
|5.0. Средства интегрированной среды разработки |22 |
|Эти средства служат для удобной и эффективной | |
|разработки приложений. | |
|5.1. Управление параметрами среды | |
| Установки параметров выполняются в диалоговом | |
|окне | |
|по команде Tools/Environment Options (Средства | |
|/ Параметры среды). | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
|Возможны следующие настройки: | |
|параметров конфигурации Deldhi, | |
|задание рабочих папок компилятора и компоновщика| |
|для всех файлов проекта, | |
|страниц и компонентов на Палитре компонентов, | |
|шрифта и цвета Редактора кода, | |
|автосохранение редактируемых файлов | |
|Все параметры объединены по группам, размещенным| |
|на отдельных страницах. | |
|5.2. Менеджер проекта (Project Manager) | |
|Предназначен для управления составными частями |Менеджер Проекта позволяет |
|разрабатываемого приложения. |объединять проекты которые работают|
|Вызывается по команде View/Project Manager |вместе в одну проектную группу. Это|
| |позволяет организовать как работу |
| |взаимозависимых проектов, таких как|
| |однозначные и многозадачные |
| |приложения или DLL, так и |
| |совместную работу исполняемых |
| |программ. |
| |На рис. Показано окно Project |
| |Manager с открытым проектом Apple. |
|С помощью менеджера выполняются операции: | |
|просмотр части проекта, | |
|удаление отдельных частей проекта, |В списке окна можно открыть |
|добавление к проекту новой части. |какой-либо модуль для просмотра или|
|Открыть модуль для редактирования можно двойным |редактирования двойным щелчком мыши|
|щелчком мыши по имени файла в списке окна. |по его имени или командой Open |
| |контекстного меню этого файла. |
|5.3. Встроенный отладчик (Debugger) |23 |
|Облегчает поиск и устранение ошибок в | |
|приложениях. | |
|Средства отладчика доступны: | |
|с помощью команд пункта меню Run (Выполнение); | |
|и подменю View / Debug Windows (Просмотр/Окна | |
|отладки). | |
|Действия отладчика: | |
|выполнение до указанного оператора (строки | |
|кода), | |
|пошаговое выполнение приложения, | |
|выполнение до точки останова, | |
|включение и выключение точек останова, | |
|просмотр значений объектов, в окне просмотра, | |
|установка значений объектов при выполнении | |
|приложения. | |
| | |
|Установка параметров отладчика выполняется с | |
|помощью команды Tools / Debugger Options | |
|(Параметры отладчика). | |
|5.4. Обозреватель проекта (Project Browser) | |
|Позволяет перемещаться по: |С помощью обозревателя проекта |
|- иерархии классов, |можно перебирать используемые |
|модулям и |программой модули и просматривать |
|глобальным символам приложения. |символы в разделах interface или |
|Вызывается командой View / Browser (Просмотр / |implementation; можно перебирать |
|Обозреватель). |глобальные символы приложения, |
| |просматривать их объявления и |
| |переходить к ссылкам на них в |
| |исходном коде. |
| |Окно обозревателя проекта разделено|
| |на две части. Слева в иерархическом|
| |виде отображаются доступные для |
| |выбранной страницы объекты, а |
| |справа для выбранного объекта более|
| |детально отображаются его |
| |характеристики. |
|Для просмотра в окне левой части доступны три | |
|типа объектов: | |
|Globals (Глобальные символы), | |
|Classes (Классы) и | |
|Units (Модули). | |
|В правой части панели окна доступны для | |
|просмотра: |В зависимости от выбранного типа |
|Scope (Пределы), |просматриваемого объекта в правой |
|Inheritance (Иерархия) и |части могут быть доступны следующие|
|References (Ссылки). |варианты детального просмотра |
|Управление отображением данных осуществляется с |характеристик: Scope, Inheritance, |
|помощью мыши. |References |
|Для управления параметрами отображенных объектов|Можно отображать или скрывать |
|используется команда Tools/Environment |соответствующие объекты, например |
|Options/Explorer |переменные или константы модуля. |
|5.5. Хранилище объектов |24 |
|Одни и те же объекты можно использовать в |Объекты объединены в группы и |
|качестве шаблонов для разработки приложений. |размещаются на отдельных страницах:|
|Эти объекты находятся в хранилище (Repository). | |
|Их можно просмотреть в окне New Items (Новые |New – Базовые объекты, |
|элементы), вызвав командой File/New… |ActiveX – Объекты ActiveX и OLE, |
| |Multitier – Объекты многопоточного |
| |приложения, |
| |Project 1 – Формы создаваемого |
| |приложения, |
| |Form – Формы, |
| |Dialogs – Диалоги, |
| |Data Modules – Модули данных, |
| |Projects – Проекты, |
| |Business –Мастера форм. |
| | |
| |Название стр. Apple совпадает с |
| |названием создаваемого проекта. |
| |Сама страница содержит уже |
|В хранилище находятся шаблоны приложений, форм, |созданную форму. При изменении |
|отчетов, Мастера форм. |названия проекта или формы |
|Объекты добавляются различными способами: |изменяются их названия в хранилище |
|Copy – в проект добавляется копия из хранилища. |объектов. При добавлении или |
|Все изменения в объекте являются локальными и не|удалении формы ее шаблон |
|затрагивают оригинал; |соответственно добавляется или |
|Inherit – от объекта из хранилища порождается |исключается из хранилища объектов. |
|(наследуется) новый объект и добавляется к |При добавлении объекта к проекту |
|проекту. Все модификации с объектом в проекте |выбирается нужная страница, |
|нельзя удалить. |выделяется объект и подтверждается |
|Use – в проект включается непосредственно сам |ОК. |
|объект из хранилища со всеми файлами. При | |
|изменении в проекте этого объекта изменяется и | |
|объект в хранилище. | |
|5.6. Справочная система | |
| | |
|В состав справочной системы входят: |Вкладка Содержание окна |
|стандартная система справки (с тремя вкладками);|предоставляет доступ к справочной |
| |информации в виде оглавления. |
|справочная помощь через Internet (запуск |Последовательно можно переместиться|
|браузера); |в требуемое место справочной |
|контекстно-зависимая справочная |системы. |
|помощь(клавишаF1) |Вкладка Предметный указатель |
|отображаемая справка зависит от активизации |позволяет выполнить поиск |
|объекта. |информации с помощью ключевого |
| |слова. Пользоваться ей проще, чем |
| |вкладкой Содержание. |
| |Вкладка Поиск позволяет выполнить |
| |поиск и отображение всех разделов |
| |справочной системы, в которых |
| |встречается указанная фраза или |
| |слово. |
| | |
| | |
-----------------------
Степень
автоматизации
Методы проектирования
Принятая
методология
Неавтоматизированное проектирование
Автоматизированное проектирование
Структурное
проектирование
Информационное моделирование
Объектно-ориентированное проектирование
Метод m
Метод 3
Метод 2
Метод 1
Объект D
Объект А
Процедура N
Процедура 2
Процедура 1
Библиотеки процедур, объ-
ектов и методов обработки
Модуль К
Модуль 2
Модуль 1
Головной модуль
Цель 1
Тело цикла
ПодЦель 1S
ПодЦель 11
Функция 1
Программные модули
Модуль 1
Функция 2
Функция M
Функция 2
Приложение2
ПриложениеN
Функция 1k
Функция 11
Приложение1
Функция 1
Модуль v
Функция 3
Модуль q
Модуль p
Модуль m
Модуль n
Модуль k
Функция 5
Модуль p
Модуль 3
Модуль 2
Функция 4
Параметры цикла
Тело цикла
Оператор2 1
Оператор1 1
Нетт
Да
Оператор2
Оператор1
Условие
Глав
ное
окно
Окно
редактора кода
Окно
Конструктора
формы
Окно
Инспектора объектов
Строка заголовка
Строка меню
Панель инструментов Палитра компонентов
Описание
Проект
Модуль
Форма
Модуль
Приложение
Ресурсы
Параметры
Компиляция
|Тип редактора|Как использовать |
|Простой |Задать значение непосредственно |
|(текстовый) |в поле. |
|Список выбора|Выбирается значение из списка |
|Список |Выбирается объект из списка. |
|объектов | |
|Множество |Выполнить двойной щелчок по |
| |знаку "+" и выбрать значение |
| |множества. |
|Цвет |Выбрать цвет в открывающемся |
| |списке или в диалоговом окне. |
|Шрифт |Назначить параметры шрифта в |
| |списке свойств или в диалоговом |
| |окне |
С
П
И
С
О
К
Страницы: 1, 2, 3
|