Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СПО юнита 2.doc
Скачиваний:
38
Добавлен:
17.11.2019
Размер:
5.82 Mб
Скачать

Задания для самостоятельной работы

1. Опишите назначение, возможности и классификация систем программирования:

2. Опишите пакеты прикладных программ:

3. Дайте определение объектно-ориентированным системам программирования:

4. Опишите процесс компиляции:

5. Опишите методы определения языков программирования в процессе компиляции:

6. Дайте определение понятия и типов грамматик для определения языков программирования:

7. Опишите генерацию и оптимизацию машинно-независимого кода:

8. Опишите распределение памяти в процессе компиляции:

9. Дайте определение отладчикам:

10. Опишите редактор связей:

Тренинг компетенций

1 Компетенция № 1. Средства автоматизированной разработки программ

1.1 Пример решения типовой задачи

Условие

Общие принципы, используемые при разработке программ.

Решение

п/п

Этап (шаг) алгоритма

Конкретное действие в соответствии с алгоритмом

1

Частотный принцип

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

2

Принцип функциональной избирательности

Проектирование программного обеспечения, объем которого превосходит имеющийся объем оперативной памяти

3

Принцип генерируемости

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

4

Принцип функциональной избыточности

Проведение одной и той же работы (функции) различными средствами

5

Принцип «умолчания»

Хранение в системе базовых описаний структур, модулей, конфигураций оборудования и данных, определяющих условия работы с программой

1.2 Задания для самостоятельной работы

1.2.1 Задача

Общесистемные принципы разработки программ.

1.2.2 Задача

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

1.2.3 Задача

Совместное использование объектов с несколькими приложениями.

2 Компетенция № 2. Пакеты прикладных программ

2.1 Пример решения типовой задачи

Условие

Классификация пакетов прикладных программ по функционально-организационному признаку.

Решение

п/п

Этап (шаг) алгоритма

Конкретное действие в соответствии с алгоритмом

1

Проблемно-ориентированные пакеты прикладных программ

Автоматизированный бухгалтерский учет, управ-ления персоналом, управления производством, банковские информационные системы

2

Пакеты прикладных программ автоматизированного проектирования

Поддержка работы конструкторов и технологов, связанной с разработкой чертежей, схем, графи-ческим моделированием и конструированием

3

Программные системы мультимедиа

Создание и использование аудио- и видеои-нформации для расширения информационного пространства пользователя

4

Настольные издательские системы

Обеспечение информационной технологии ком-пьютерной издательской деятельности

5

Офисные пакеты

Программы, обеспечивающие ориентационное управление деятельностью офиса

2.2 Задания для самостоятельной работы

2.2.1 Задача

Пакеты прикладных программ общего назначения.

2.2.2 Задача

Проблемно-ориентированные пакеты прикладных программ.

2.2.3 Задача

Интеллектуальные системы.

3 Компетенция № 3. Объектно-ориентированное программирование

3.1 Пример решения типовой задачи

Условие

Особенности полиморфизма в ООП.

Решение

п/п

Этап (шаг) алгоритма

Конкретное действие в соответствии с алгоритмом

1

Чистый полиморфизм

Один код функции по-разному интерпретируется в зависимости от типа аргумента

2

Простой полиморфизм

Определение конкретного метода типом объекта при компиляции программы (раннее связывание)

3

Сложный полиморфизм

Определение конкретного метода типом объекта при выполнении программы (позднее связывание)

4

Обобщенные функции или шаблоны

Реализация в языке параметризованных классов, параметрами которых являются типы аргументов методов класса

5

Переопределение

Задание различных реализаций одноименных методов в иерархии классов

6

Перегрузка

Многократное использование имени функции в раз-ных местах программы; определение типами аргу-ментов или областью видимости нужной функции

3.2 Задания для самостоятельной работы

3.2.1 Задача

Особенности инкапсуляции в ООП.

3.2.2 Задача

Особенности наследования в ООП.

3.2.3 Задача

Особенности композиции и наполнения в ООП.

4 Компетенция № 4. Основные концепции трансляторов

4.1 Пример решения типовой задачи

Условие

Инструменты для создания компиляторов.

Решение

п/п

Этап (шаг) алгоритма

Конкретное действие в соответствии с алгоритмом

1

Генераторы синтаксических ана-лизаторов

Разработка синтаксических анализаторов по входной информации, основанной на контекстно-свободной грамматике

2

Генераторы сканеров

Генерация лексических анализаторов с использованием спецификаций, построенных на регулярных выражениях

3

Средства синтаксически управ-ляемой трансляции

Создание наборов программ прохода по дереву разбора и генерации промежуточного кода

4

Автоматические генераторы кода

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

5

Средства работы с потоком дан-ных

Сбор и анализ информации о том, каким образом значения передаются из одной части программы в другую

4.2 Задания для самостоятельной работы

4.2.1 Задача

Лексический анализ – этап компиляции.

4.2.2 Задача

Синтаксический анализ – этап компиляции.

4.2.3 Задача

Семантический анализ – этап компиляции.

5 Компетенция № 5. Редактор связей

5.1 Пример решения типовой задачи

Условие

Управляющий язык редактора связей.

Решение

п/п

Этап (шаг) алгоритма

Конкретное действие в соответствии с алгоритмом

1

Выражения

Использование глобальных имен, констант и операций

2

Оператор присваивания

Определение внешних имен и связывание их с определенными адресами

3

Предложение MEMORY

Указание общего размера виртуальной памяти целевого компьютера

4

Предложение SECTIONS

Указания способа комбинирования входных секций и размещения выходных секций

5

Операторы присваивания ld(1)

Получение имени значения, которое вычисляется при редактировании связей

6

Команда ar(1)

Создание библиотеки из объектных файлов, генерируемых компиляторами

5.2 Задания для самостоятельной работы

5.2.1 Задача

Создание и определение имен при редактировании связей.

5.2.2 Задача

Инкрементальное редактирование связей.

5.2.3 Задача

Синтаксис управляющего языка редактора связей.