- •1)Стандартные операции языка Си.
- •2)Линейные списки, операции с линейными списками.
- •3)Модели жизненного цикла по
- •Итерационная модель
- •Спиральная модель жизненного цикла по
- •II билет)
- •1)Обработка нештатных ситуаций. Объекты исключения. Примеры.
- •Вопрос 1: какова дальнейшая судьба этих ресурсов, будут ли они освобождены?
- •Вопрос 2: как распознавать подобные ситуации и корректно их обрабатывать?
- •2) Основные понятия ооп: абстракция, инкапсуляция, наследование, полифморфизм
- •3)Диаграммы классов. Нотация, отношения.
- •III билет)
- •1)Язык Си: указатели и массивы. Определения, примеры.
- •2)Абстрактные классы. Их назначение, пример.
- •3)Диаграммы прецедентов. Нотация, семантика, примеры.
- •Основные обозначения на диаграммах прецедентов:
- •IV билет)
- •1)Язык Си: объявление функций, передача аргументов. Примеры.
- •2)Язык Си: Работа с файловой системой. Примеры.
- •3)Сценарий выполнения прецедентов(пример).
- •V билет)
- •1)Язык Си: строки и указатели. Определения, примеры.
- •2)Язык Си: Низкоуровневый ввод/вывод. Пример.
- •3) Атрибуты на диаграммах классов. Нотация и семантика. Примеры.
- •VI билет)
- •1)Язык Си: аргументы командной строки. Перегруженные функции. Примеры.
- •2)Альтернативное определение ооп.
- •3)Операции на диаграммах классов. Нотация и семантика. Примеры.
- •VII билет)
- •1)Язык Си: организация ввода/вывода. Пример: слияние файлов.
- •Открытие файла
- •Закрытие файла
- •Ввод из файла
- •Вывод в файл
- •Особые ситуации
- •Пример: слияние файлов
- •2)Объекты классов. Статические, автоматические, динамические. Примеры.
- •3)Полиморфный контейнер(пример).
- •VIII билет)
- •1)Язык Си: структуры. Пример.
- •2)Управление доступом к элементам классов. Пример.
- •3)Двоичные деревья. Алгоритмы обхода, поиска, вставки, сортировки.
- •IX билет)
- •1)Язык Си: Произвольный доступ к файлам. Пример.
- •2) Конструкторы и деструкторы. Их виды. Вызов конструктора при наследовании Примеры.
- •3)Проектирование по и uml. Основные понятия.
- •Uml (основные понятия)
- •Канонические диаграммы языка uml 2.X
- •X билет)
- •1)Язык Си: оператор определения типа. Примеры.
- •2)Наследование классов. Пример с Абстрактными фигурами.
- •XI билет)
- •1)Язык Си: Препроцессор. Директивы препоцессора. Примеры.
- •2)Множественное наследование. Виртуальная схема наследования. Пример.
- •П оскольку классы-потомки наследуют все данные и методы классов-предков, в итоге имеем следующую картину:
- •3)Шаблоны Функций и шаблоны классов. Примеры.
- •XII билет)
- •1)Язык Си: программный стек. Пример работы стека.
- •2)Виртуальные функции. Раннее и позднее связывание.
- •3)Hash-таблицы(Таблицы с перемешиванием).
3)Проектирование по и uml. Основные понятия.
Проектирование ПО (основные понятия)
Проектирование – это этап жизненного цикла ПО, во время которого разрабатывается структура и взаимосвязи элементов ПО. Результатом является проект, содержащий достаточно количество артефактов, необходимых для реализации ПО.
В российской практике результат проектирования ПО представляется в виде комплекса документов под названием «Технический проект» или «Эскизный проект», а в зарубежной практике – Software Architecture Document или Software Design Document.
Проектирование выполняется на основе: моделей предметной области, требований к ПО, паттернов (шаблонов) проектирования, опыта проектировщиков.
Предметная область – это часть реального мира, которая имеет существенное значение или непосредственное отношение к процессу функционирования ПО.
Требования к ПО – это документ, задающий внешние (видимые) свойства ПО, рассматриваемого как черный ящик.
Проектированию обычно подлежат: архитектура ПО, пользовательские интерфейсы, модули и компоненты ПО.
Архитектура ПО – это схемы, диаграммы и другие артефакты, которые дают представления о компонентах, составляющих систему, о взаимосвязях между этими компонентами и правилах, регламентирующих эти взаимосвязи.
Проектирование, кодирование, тестирования и внедрение ПО выполняют команды разработчиков. Для организации работ применяются методы проектного управления.
В зависимости от уровня сложности создаваемого ПО, процесс проектирования может осуществляться «вручную» или при помощи специальных CASE-средств.
CASE-средство – программный комплекс, который автоматизирует технологический процесс проектирования, реализации, тестирования и сопровождения сложного ПО.
Проектирование в лаб. Работе №3 выполняется на языке UML в Visual Paradigm.
Uml (основные понятия)
Unified Modeling Language – унифицированный язык моделирования, который предназначен для описания, визуализации и документирования объектно-ориентированных систем в процессе их анализа и проектирования.
Язык UML обеспечивает стандартный способ написания проектной документации для ПО, включая концептуальные аспекты (бизнес процессы, функции системы, др.), и конкретные аспекты (классы, объекты, выражения языков программирования, схемы баз данных, повторно используемые компоненты, др.).
Язык UML не является методологией, процессом, языком программирования или формальный языком. UML = нотация + семантика.
Здесь под нотацией понимается система условных обозначений для графического представления визуальных моделей. Семантика – это система правил и соглашений, определяющая смысл и интерпретацию конструкций языка.
В языке UML различают диаграммы (модели) следующих двух видов:
Структурные модели (structured models) – модели, предназначенные для описания статической структуры сущностей или элементов некоторой системы, включая классы, интерфейсы, атрибуты и отношения.
Модели поведения (behavioral models) – модели, предназначенные для описания процесса функционирования элементов системы, включая методы и правила взаимодействия между ними, а также процесс изменения состояний отдельных элементов и системы в целом.