
- •Экзаменационные вопросы Дисциплина: «Технология разработки программных продуктов»
- •Определение технологии конструирования программного обеспечения. Технология программирования. Программная инженерия.
- •Требования к программному средству.
- •Существенные черты программных средств как сложных систем.
- •Характеристики качества программного изделия.
- •Структура жизненного цикла. Большой жизненный цикл.
- •Структура жизненного цикла. Малый жизненный цикл.
- •Классический жизненный цикл пи. Водопадная модель. Классический жизненный цикл
- •Макетирование.
- •Стратегии конструирования по: инкрементная модель.
- •Стратегии конструирования по: быстрая разработка приложений.
- •Стратегии конструирования по: спиральная модель.
- •Руководство проектом. Планирование расписания работ.
- •Руководство проектом. Ввод, распределение ресурсов, анализ полученного расписания. Ввод и распределение ресурсов для выполнения проекта
- •Анализ полученного расписания
- •Руководство проектом. Контроль за исполнением проекта.
- •Особенности ценообразования программных продуктов.
- •Конструктивная модель стоимости: затратный подход.
- •Конструктивная модель стоимости: рыночный подход.
- •Конструктивная модель стоимости: доходный подход.
- •Проектирование программного изделия. Основные этапы.
- •Системный анализ. Требования при разработке технического задания. Техническое задание
- •Общие положения
- •Содержание разделов технического задания
- •Стадии разработки программ: эскизный проект.
- •Стадии разработки программ: технический проект.
- •Стадии разработки программ: рабочий проект.
- •Виды схем и их особенности.
- •Модульно – иерархическое построение программы. Основные принципы структурной методологии.
- •Типовая структура модуля.
- •Модуль. Виды связности.
- •Модуль. Виды сцепления.
- •Сцепление по управлению
- •Общие правила проектирования программного средства: связь по управлению.
- •Общие правила проектирования программного средства: связь по информации.
- •Стиль программирования
- •Стандарты структурного программирования.
- •Внешнее проектирование модулей.
- •Проектирование и кодирование логики модулей.
- •Проектирование программных средств: разработка архитектуры.
- •Проектирование программных средств: процедурная разработка.
- •Принципы объектно-ориентированного программирования: инкапсуляция.
- •Принципы объектно-ориентированного программирования: полиморфизм.
- •Принципы объектно-ориентированного программирования: наследование.
- •Объектно-ориентированный подход в программировании: области доступности элементов класса.
- •Сущность объектного подхода к разработке программных средств: классы, объекты, методы.
- •Основные принципы создания пользовательского интерфейса.
- •Типичные ошибки разработки интерфейса.
- •Современные компоненты интерфейса пользователя. Размещение информации на экране
- •Выделение элементов интерфейса яркостью
- •Использование цвета при проектировании эргономичного интерфейса
- •Непротиворечивость и стандартизация
- •Тексты и диалоги
- •Средства управления графического интерфейса пользователя.
- •Изображения (Иконки)
- •Ментальная модель пользовательского интерфейса.
- •Модель пользователя.
- •Модель программиста.
- •Основные принципы создания меню. Меню
- •Основные принципы создания меню
- •Предотвращение, обнаружение и исправление ошибок.
- •Обработка ошибок в формах ввода
- •Средства организации и работы с графикой.
- •Файлы проекта Delphi.
- •Структура модуля программы Delphi.
- •Окна программы Delphi.
- •Библиотека визуальных компонентов vcl и ее базовые классы.
- •Управление свойствами визуальных компонент в процессе выполнения.
- •Организация ветвлений при разработке программ.
- •Средства организации и обработки событий.
- •Средства организации и работы с файлами.
- •Подпрограммы работы с файлами
- •Компоненты tOpenDialog и tSaveDialog
- •Средства организации и работы с модулями.
Окна программы Delphi.
Главное окно всегда присутствует на экране и предназначено для управления процессом создания программы. Основное меню (прил.1)содержит все необходимые средства для управления проектом. Пиктограммы облегчают доступ к наиболее часто применяемым командам основного меню. Через меню компонентов (прил. 2) осуществляется доступ к набору стандартных сервисных программ среды DELPHI, которые описывают некоторый визуальный элемент (компонент), помещенный программистом в окно формы. Каждый компонент имеет определенный набор свойств (параметров), которые программист может задавать. Например, цвет, заголовок окна, надпись на кнопке, размер и тип шрифта и др.
Окно инспектора объектов (вызывается c помощью клавиши F11) предназначено для изменения свойств выбранных компонентов и состоит из двух страниц. Страница Properties (Свойства) предназначена для изменения необходимых свойств компонента, страница Events (События) – для определения реакции компонента на то или иное событие (например, нажатие определенной клавиши или щелчок “мышью ” по кнопке).
Окно формы представляет собой проект Windows-окна программы. В это окно в процессе написания программы помещаются необходимые компоненты. Причем при выполнении программы помещенные компоненты будут иметь тот же вид, что и на этапе проектирования.
Окно текста программы предназначено для просмотра, написания и редактирования текста программы. В системе DELPHI используется язык программирования Object Pascal. При первоначальной загрузке в окне текста программы находится текст, содержащий минимальный набор операторов для нормального функционирования пустой формы в качестве Windows-окна. При помещении некоторого компонента в окно формы текст программы автоматически дополняется описанием необходимых для его работы библиотек стандартных программ (раздел uses) и типов переменных (раздел type).
Программа в среде DELPHI составляется как описание алгоритмов, которые необходимо выполнить, если возникает определенное событие, связанное с формой (например щелчок “мыши” на кнопке – событие OnClick, создание формы – OnCreate). Для каждого обрабатываемого в форме события, с помощью страницы Events инспектора объектов в тексте программы организуется процедура (procedure), между ключевыми словами begin и end которой программист записывает на языке Object Pascal требуемый алгоритм.
Переключение между окном формы и окном текста программы осуществляется с помощью клавиши F12.
Библиотека визуальных компонентов vcl и ее базовые классы.
Все классы библиотеки визуальных компонентов произошли от группы базовых классов, которые лежат в основе иерархии VCL. Самый общий предок компонентов — это класс TObject, инкапсулирующий простейший объект. Каждый объект наследует свойства и методы родительского класса. К объекту можно добавить новые свойства и методы, но нельзя удалить унаследованные. Объект-наследник в свою очередь может стать родительским для нового класса, который унаследует возможности всех своих предков.
Поэтому иерархия базовых классов VCL продумана чрезвычайно тщательно — ведь на их основе создано все множество компонентов, используемых в Delphi. Особое место среди базовых классов, помимо TObject, занимают TComponent (от него происходят все компоненты) и TControl (от него происходят все элементы управления).
В основе всего многообразия классов и компонентов, используемых в Delphi, лежат всего лишь пять базовых классов. Они обеспечивают выполнение основных функций любого объекта — будь это стандартный компонент VCL или специализированный объект, выполняющий некоторые операции в приложении.
Благодаря механизму наследования свойств и методов, потомки базовых классов умеют "общаться" друг с другом; работают в среде разработки, взаимодействуя с Палитрой компонентов и Инспектором объектов; распознаются операционной системой как элементы управления и окна.
В основе иерархии классов лежит класс TObject. Он обеспечивает выполнение важнейших функций "жизнедеятельности" любого объекта. Благодаря ему, каждый класс получает в наследство механизмы создания экземпляра объекта и его уничтожения.
Обычно разработчик даже не задумывается о том, как объект будет создан и что необходимо сделать для его корректного уничтожения. Компоненты VCL создаются и освобождают занимаемые ресурсы автоматически. Иногда разработчику приходится создавать и удалять объекты самостоятельно. Но даже в этом случае ему достаточно вызвать соответствующие конструктор и деструктор:
Благодаря механизму наследования свойств и методов, потомки базовых классов умеют "общаться" друг с другом; работают в среде разработки, взаимодействуя с Палитрой компонентов и Инспектором объектов; распознаются операционной системой как элементы управления и окна.
В основе иерархии классов лежит класс TObject. Он обеспечивает выполнение важнейших функций "жизнедеятельности" любого объекта. Благодаря ему, каждый класс получает в наследство механизмы создания экземпляра объекта и его уничтожения.
Обычно разработчик даже не задумывается о том, как объект будет создан и что необходимо сделать для его корректного уничтожения. Компоненты VCL создаются и освобождают занимаемые ресурсы автоматически. Иногда разработчику приходится создавать и удалять объекты самостоятельно. Но даже в этом случае ему достаточно вызвать соответствующие конструктор и деструктор:
var SomeList: TStrings;
...
SomeList := TStrings.Create;
...
SomeList.Free;
За кажущейся простотой этих операций скрывается довольно сложная реализация указанных процессов. Практически весь исходный код класса TObject написан на ассемблере для обеспечения наибольшей эффективности операций, которые будут выполняться в каждом его потомке.
Кроме этого, класс TObject обеспечивает создание и хранение информации об экземпляре объекта и обслуживание очереди сообщений.
Класс TPersistent происходит непосредственно от класса TObject. Он обеспечивает своих потомков возможностью взаимодействовать с другими объектами и процессами на уровне данных. Его методы позволяют передавать данные в потоки, а также обеспечивают взаимодействие объекта с Инспектором объектов.
Класс TComponent является важнейшим для всех компонентов. Непосредственно от него можно создавать любые невизуальные компоненты. Механизмы, реализованные в классе TComponent, обеспечивают взаимодействие компонента со средой разработки, главным образом с Палитрой компонентов и Инспектором объектов. Благодаря возможностям этого класса, компоненты начинают работать на форме проекта уже на этапе разработки.
Класс TControl происходит от класса TComponent. Его основное назначение — обеспечить функционирование визуальных компонентов. Каждый визуальный компонент, произошедший от TControl, наделяется основными признаками элемента управления. Благодаря этому, каждый визуальный компонент умеет работать с GUI (Graphic User Interface — графический интерфейс пользователя ОС) и отображать себя на экране.
Класс TWinControl расширяет возможности разработчиков по созданию элементов управления. Он наследуется от класса TControl и обеспечивает создание оконных элементов управления.
На основе класса TWinControl создан еще один дополнительный класс — TCustomControl. Он обеспечивает создаваемые на его основе компоненты возможностями по использованию канвы — специального объекта, предназначенного для отображения Класс TCustomControl является общим предком для целой группы классов, обеспечивающих создание различных нестандартных типов оконных (получающих фокус) элементов управления Windows: редакторов, списков и т. д.
Для создания неоконных (не получающих фокус) элементов управления используется класс TGraphicControl, являющийся потомком класса TControli.
В целом иерархия базовых классов обеспечивает полноценную работу разработчиков в Delphi, позволяя проектировать любые типы приложений.
Класс TComponent является важнейшим для всех компонентов. Непосредственно от него можно создавать любые невизуальные компоненты. Механизмы, реализованные в классе TComponent, обеспечивают взаимодействие компонента со средой разработки, главным образом с Палитрой компонентов и Инспектором объектов. Благодаря возможностям этого класса, компоненты начинают работать на форме проекта уже на этапе разработки.
Класс TControl происходит от класса TComponent. Его основное назначение — обеспечить функционирование визуальных компонентов. Каждый визуальный компонент, произошедший от TControl, наделяется основными признаками элемента управления. Благодаря этому, каждый визуальный компонент умеет работать с GUI (Graphic User Interface — графический интерфейс пользователя ОС) и отображать себя на экране.
Класс TWinControl расширяет возможности разработчиков по созданию элементов управления. Он наследуется от класса TControl и обеспечивает создание оконных элементов управления.
На основе класса TWinControl создан еще один дополнительный класс — TCustomControl. Он обеспечивает создаваемые на его основе компоненты возможностями по использованию канвы — специального объекта, предназначенного для отображения графики
Класс TCustomControl является общим предком для целой группы классов, обеспечивающих создание различных нестандартных типов оконных (получающих фокус) элементов управления Windows: редакторов, списков и т. д.
Для создания неоконных (не получающих фокус) элементов управления используется класс TGraphicControl, являющийся потомком класса TControli.
В целом иерархия базовых классов обеспечивает полноценную работу разработчиков в Delphi, позволяя проектировать любые типы приложений.