
- •Динамическая память и указатели. Типы указателей. Описание указателей.
- •Операции над указателями. Выделение динамической памяти для типизированных и нетипизированных указателей. Проблема утечки памяти.
- •Стеки и очереди.
- •Модули.
- •Классы, объекты. Объявление класса, принципы ооп.
- •Инкапсуляция и разграничение доступа к членам класса.
- •Методы (виды методов), конструктор и деструктор.
- •Перекрытие методов, перекрытие конструктора, inherited
- •Поля, Свойства. События
- •Полиморфизм is, as.
- •Дерево классов delphi. Класс tObject. Класс tPersistent. Класс tСomponent.
- •Класс tСontrol.
- •Свойства и методы для обеспечения отношения родительский-дочерний
- •Свойства позиционирования и выравнивания
- •Свойства, определяющие внешний вид элементов управления. Property Color Cursor:Tcursor; Enabled:Boolean; Font, Hint, ShowHint
- •События при нажатии мышью на левую кнопку. Общие события, возникающие при манипулировании мышью.
- •События, предназначенные для поддержки перетаскивания.
- •Свойства и методы, поддерживающие связь родительский-дочерний.
- •События клавиатуры TwinControl. События активизации оконного элемента и потери фокуса.
- •Класс tGraphicControl. Метка Tlabel. Компонент Timer.
- •Interval: cardinal; - интервал в милисекундах после которого начинается событие OnTimer.
- •Класс tCustomEdit. Строка ввода Edit.
- •Класс tStrings. Текстовый редактор Memo.
- •Кнопки.Button, BitBtn, SpeedButton
- •Список ListBox.
- •Комбинированная строка ввода ComboBox.
- •Items:tString;-содержит список названий переключателей.
- •Классы и компоненты, предназначенные для создания изображений. Класс tCanvas. Класс tFont. Класс tPen. Класс Tbrush.
- •Компонент Image. Компонент Shape. Компонент PaintBox.
- •Диалоговые окна. OpenDialog SaveDialog
- •Этапы развития технологии программирования.
- •Первый этап - «стихийное» программирование (50-60-е годы).
- •Второй этап - структурный подход к программированию
- •Третий этап -объектный подход к программированию(с середины 80-х до конца 90-х годов XX )
- •Четвертый этап – компонентный подход и case-технологии (с середины 90-х годов до нашего времени).
- •Проблемы разработки сложных программных систем.
- •Блочно-иерархический подход к созданию сложных систем.
- •Жизненный цикл по и этапы его разработки. Гост 19.102-77 «Стадии разработки»
- •Постановка задачи. Анализ требований и определение спецификаций. Проектирование. Реализация. Сопровождение.
- •Эволюция моделей жизненного цикла по.
- •Жизненный цикл по при использовании case-технологий. Технология rad
- •Оценка качества процессов создания по.
- •5. Оптимизирующий уровень (optimizing level)
- •Понятие технологичности программного обеспечения. Нисходящая и восходящая разработка по
- •Последовательность проектирования и реализации (Иерархический , Операционный , Комбинированный)
- •Модульное программирование. Модули и их свойства. Сцепление модулей. Связность модулей.
- •Предпроектные исследования предметной области
- •Разработка технического задания. Последовательность разработки тз.
- •Принципиальные решения начальных этапов проектирования: Выбор архитектуры программного обеспечения. Выбор типа пользовательского интерфейса. Выбор подхода к разработке.
- •Стадии тестирования. Принципы тестирования. Формирование тестовых наборов ст иФн.
- •Ручной контроль по: инспекция исходного текста, сквозные просмотры, проверка за столом.
- •Структурное тестирование.
- •Функциональное тестирование.
- •Тестирования модулей и комплексное тестирование.
- •Критерии завершения тестирования и отладки. Оценочное тестирование
Постановка задачи. Анализ требований и определение спецификаций. Проектирование. Реализация. Сопровождение.
Постановка задачи
В процессе постановки задачи четко формулируют назначение ПО и определяют основные требования к нему.
Каждое требование представляет собой описание необходимого свойства ПО. Требования к ПО, имеющему прототипы, обычно определяют по аналогии с ним. Для формулирования требований к ПО, не имеющему аналогов, иногда необходимо провести специальные предпроектные исследования.
Этап постановки задачи заканчивается разработкой технического задания (ТЗ), фиксирующего принципиальные требования.
Анализ требований и определение спецификаций.
Спецификациями называют точное формализованное описание функций и ограничений разрабатываемого ПО.
Для получения спецификаций: - выполняют анализ требований ТЗ; - формулируют содержательную постановку задачи; - выбирают математический аппарат формализации; - строят модель предметной области; - определяют подзадачи и выбирают или разрабатывают методы их решения.
Часть спецификаций может быть определена в процессе предпроектных исследований и, соответственно, зафиксирована в техническом задании.
На этом этапе также целесообразно сформировать тесты для поиска ошибок в ПО, указав ожидаемые результаты.
Проектирование
Основной задачей этого этапа является определение подробных спецификаций разрабатываемого ПО. Процесс проектирования сложного программного обеспечения обычно включает:
• проектирование общей структуры – определение основных компонентов и их взаимосвязей;
• декомпозицию компонентов и построение структурных иерархий в соответствии с рекомендациями блочно-иерархического подхода;
• проектирование компонентов.
Результатом проектирования является детальная модель разрабатываемого ПО вместе со спецификациями его компонентов всех уровней.
Реализация
Реализация представляет собой процесс поэтапного написания кодов программы на выбранном языке программирования (кодирование), их тестирование и отладку
Сопровождение
Сопровождение – это процесс создания и внедрения новых версий программного продукта.
Причинами выпуска новых версий могут служить:
необходимость исправления ошибок, выявленных в процессе эксплуатации предыдущих версий;
необходимость совершенствования предыдущих версий;
изменение среды функционирования (появление новых АО или ПО, с которыми взаимодействует сопровождаемое программное обеспечение).
На этом этапе в программный продукт вносят необходимые изменения, которые так же, как в остальных случаях, могут потребовать пересмотра проектных решений, принятых на любом предыдущем этапе.
Эволюция моделей жизненного цикла по.
Каскадная модель. (1970-1985 годы)
Переход на следующую стадию осуществляется после того, как полностью будут завершены проектные операции предыдущей стадии и получены все исходные данные для следующей стадии.
Достоинствами такой схемы являются:
• получение в конце каждой стадии законченного набора проектной документации, отвечающего требованиям полноты и согласованности;
• простота планирования процесса разработки.
Данная схема оказалась применимой только к созданию систем, для которых в самом начале разработки удавалось точно и полно сформулировать все требования.
В целом необходимость возвратов на предыдущие стадии обусловлена следующими причинами:
• уточнение спецификации в процессе разработки может привести к необходимости пересмотра уже принятых решений;
• изменение требований заказчика непосредственно в процессе разработки;
• быстрое моральное устаревание используемых технических и программных средств.
Модель с промежуточным контролем.
После завершения каждого этапа, позволяется при необходимости вернуться на любой уровень и внести необходимые изменения. Опасность такой схемы связана с тем, что разработка никогда не будет завершена «лучшее - враг хорошего» .
Спиральная модель. В этой схеме ПО создается не сразу, а итерационно с использованием метода прототипирования. Появление прототипирования привело к тому модификация ПО перестала быть «необходимым злом», а стала отдель-ным процессом.
Достоинства. Начиная с некоторой итерации продукт можно предоставлять пользователю, что позволяет:
сократить время до появления первых версий ПО;
заинтересовать большое количество пользователей, обеспечивая быстрое продвижение следующих версий продукта на рынке;
ускорить формирование и уточнение спецификаций за счет появления практики использования продукта;
уменьшить вероятность морального устаревания системы за время разработки.
Основной проблемой использования спиральной схемы является определение моментов перехода на следующие стадии. Для ее решения обычно ограничивают сроки прохождения каждой стадии, основываясь на экспертных оценках.