МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

ПЕНЗЕНСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ПОЛИТЕХНИЧЕСКИЙ ИНСТИТУТ

ФАКУЛЬТЕТ ВЫЧИСЛИТЕЛЬНОЙ ТЕХНИКИ

УТВЕРЖДАЮ

Декан ФВТ

_________________

«_____» ___________________ 2016 г.

РАБОЧАЯ ПРОГРАММА ДИСЦИПЛИНЫ

Б1.2.7 ТЕХНОЛОГИИ ПРОГРАММИРОВАНИЯ

Направление подготовки: 09.03.01 «Информатика и вычислительная техника

Профиль подготовки: «Вычислительные машины, комплексы, системы и сети»

Квалификация (степень) выпускника: бакалавр

Форма обучения очная

Пенза, 2016

1 ЦЕЛИ ОСВОЕНИЯ ДИСЦИПЛИНЫ

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

2 МЕСТО ДИСЦИПЛИНЫ В СТРУКТУРЕ ОПОП ВО

2.1 Дисциплина входит в вариативную часть образовательной программы бакалавра. Изучение данной дисциплины базируется на знаниях, полученных в школе, а также на знаниях, полученные в ходе изучения курсов: «Программирование», «Интерфейсы программирования приложений»

Компетенции, приобретенные в ходе изучения данной дисциплины, готовят студента к освоению следующих профессиональных дисциплин: «Сети ЭВМ и телекоммуникации», «Системное программное обеспечение», «Защита информации в сети Internet», «Разработка кроссплатформенных приложений», выполнения квалификационной работы бакалавра.

НЕ нашли? Не то? Что вы ищете?

2.2 Минимальные требования к «входным» знаниям, которые необходимы для успешного усвоения данной дисциплины, является удовлетворительное усвоение программ по следующим разделам указанных выше дисциплин:

–  «Программирование» – в полном объеме;

–  «Интерфейсы программирования приложений» – в полном объеме.

3 КОМПЕТЕНЦИИ СТУДЕНТА, ФОРМИРУЕМЫЕ В РЕЗУЛЬТАТЕ ОСВОЕНИЯ ДИСЦИПЛИНЫ

Коды компетенции

Наименование компетенции

Структурные элементы компетенции
(в результате освоения дисциплины обучающийся должен знать, уметь, владеть)

1

2

3

ОПК-4

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

Знать:

– современное программное обеспечение;

– особенности объектно-ориентированного подхода к проектированию программ.

Уметь:

– настраивать программное обеспечение;

– применять на практике основные принципы организации пользовательского интерфейса и программного интерфейса приложений.

Владеть:

– навыками настройки и подготовки программного обеспечения к работе.

ПК-3

Способность обосновывать принимаемые проектные решения, осуществлять постановку и выполнять эксперименты по проверке их корректности и эффективности

Знать:

– теоретические основы и современные информационные технологии анализа, проектирования и разработки программного обеспечения.

Уметь:

– использовать основные принципы объектно-ориентированного программирования при разработке программ сложной структуры;

– формировать требования к программным проектам.

Владеть:

– средствами формализации требования к программным проектам;

– навыками разработки, отладки и документирования программы сложной структуры с использованием языков высокого уровня и на основе методов объектно-ориентированного программирования.

4 СТРУКТУРА И СОДЕРЖАНИЕ ДИСЦИПЛИНЫ (МОДУЛЯ)

4.1 Структура дисциплины (модуля)

Общая трудоемкость дисциплины составляет 10зачетных единиц, 360 часов.

п/п

Наименование

разделов и тем

дисциплины (модуля)

Семестр

Недели семестра

Виды учебной работы, включая самостоятельную работу студентов и трудоемкость

(в часах)

Формы текущего контроля успеваемости (по неделям семестра)

Аудиторная работа

Самостоятельная

работа

Всего

Лекция

Практические занятия

Лабораторные занятия

Всего

Подготовка к аудиторным занятиям

Реферат, эссе и др.

Курсовая работа (проект)

Подготовка к экзамену

Собеседование

Коллоквиум

Проверка тестов

Проверка контрольн. работ

Проверка реферата

Проверка эссе и иных творческих работ

курсовая работа (проект)

5 семестр

1

Введение. Понятие технологии программирования.

5

6

0

4

2

Классы в языке С++.

5

4

6

2

2

3

3

Функции класса в языке С++.

5

6

6

3

4

6

4

Наследование классов в языке С++.

5

6

10

3

6

10

5

Перегрузка операторов и функций в языке С++.

5

6

6

3

4

12

6

Полиморфизм в языке С++.

5

6

6

3

4

15

6 семестр

7

Пространство имен в языке С++.

6

1

2

1

2

2

8

Шаблоны в языке С++.

6

2

6

3

4

4

9

Библиотека STL.

6

2

4

2

2

5

10

Исключения в языке С++.

6

1

4

2

1

6

11

Общие сведения о языке C#.

6

1

0

2

12

Типы значений в языке C#.

6

3

6

2

4

9

13

Ссылочные типы в языке C#.

6

4

8

3

6

12

14

Перегрузка операторов в языке C#.

6

1

2

1

1

14

15

Переопределение функций в языке C#.

6

1

2

1

1

15

16

Свойства и Индексаторы в языке C#.

6

1

0

1

Общая трудоемкость, в часах

51

68

29

20

48

Промежуточная аттестация

Форма

Семестр

Зачет

Экзамен

5,6


4.2 Содержание лекционных разделов дисциплины.

1 Введение. Понятие технологии программирования.

Цели и задачи дисциплины, ее место среди других дисциплин учебного плана. Структура и содержание дисциплины, методика преподавания.

Понятие технологии программирования. Абстракция и декомпозиция. Методы проектирования программ.

Понятие методологии программирования. Процедурно-ориентированное программирование. Объектно-ориентированное программирование. Объектно-ориентированный анализ и проектирование. Системный анализ и системное моделирование.

2 Классы в языке С++.

Описание класса. Конструкторы и деструкторы. Инициализация классов. Спецификаторы доступа и видимость элементов класса. Указатель this.

Создание и удаление объектов класса.

Управление памятью с помощью конструкторов и деструкторов. Операции new и delete для классов. Копирование объектов.

3 Функции класса в языке С++.

Функции класса, встраиваемые функции. Передача параметров и возврат результата: по значению, по указателю, по ссылке.

Значения параметров по умолчанию. Неопределенное (неуказанное) число параметров.

4 Наследование классов в языке С++.

Наследование классов в языке С++. Производные классы. Наследование. Иерархия классов. Защищенные компоненты в производных классах. Спецификаторы доступа для базовых классов. Порядок создания и уничтожения объектов классов.

5 Перегрузка операторов и функций в языке С++.

Перегружаемые операции и функции. Перегрузка операторов new и delete. Разрешение неоднозначности при перегрузке.

6 Полиморфизм в языке С++.

Виртуальные функции. Таблица виртуальных функций Чистая виртуальная функция. Абстрактные классы.

Вложенные классы. Локальные классы.

7 Пространство имен в языке С++.

Пространство имен. Вложенные пространства имен. Доступ к именам, объявленным внутри пространства имен.

8 Шаблоны в языке С++.

Шаблоны и принцип обобщенного программирования. Параметризованные функции и классы.

9 Библиотека STL.

STL — Стандартная Библиотека Шаблонов.

Основные компоненты библиотеки: контейнеры, итераторы, алгоритмы, аллокаторы, функциональные объекты.

10 Исключения в языке С++.

Понятие исключения. Перехват исключений. Спецификация исключений. Повторная генерация исключений. Передача параметров в блок catch.

11 Общие сведения о языке C#.

Платформа. NET Framework. Компоненты языка. Основные типы данных.

12 Типы значений в языке C#.

Числовые типы. Тип логического значения. Перечисления. Структуры. Производные структуры.

13 Ссылочные типы в языке C#.

Интерфейсы. Классы. Делегаты. Объекты. Строки. Массивы.

Производные классы. Множественное наследование. Виртуальные функции. Абстрактные классы и абстрактные функции.

14 Перегрузка операторов в языке C#.

Понятие и синтаксис перегрузки операторов в языке C#.

15 Переопределение функций в языке C#.

Понятие и синтаксис переопределения функций в языке C#.

16 Свойства и Индексаторы в языке C#.

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

4.3 Перечень и содержание лабораторных занятий.

№ п/п

№ разде лов

Наименование лабораторных работ

Кол. ч

5 семестр

1

2

C++. Класс.

4

2

2, 3

C++. Объекты в динамической памяти.

4

3

2, 3

C++. Копирующий конструктор и значение параметров по умолчанию.

4

4

4

C++. Наследование.

4

5

5

C++. Операторы.

4

6

6

C++. Виртуальные функции и абстрактные классы.

4

7

6

C++. Динамическая структура данных.

4

8

6

C++. Сериализация и восстановление.

6

Итого за семестр

34

6 семестр

9

8

C++. Шаблоны.

4

10

9

C++. Библиотека STL.

4

11

7, 10

C++. Исключения и пространство имен.

4

12

12, 13

C#. Класс и Наследование.

2

13

12, 13

C#. Интерфейсы и Виртуальные функции.

2

14

14

C#. Операторы.

4

15

12, 13

C#. Делегаты.

4

16

13

C#. Стандартные коллекции и файловые потоки.

4

17

15, 16

C#. Маршалинг и работа с внешними библиотеками.

4

Итого за семестр

34

4.4 Тематика и содержание курсового проектирования:

Тема проекта: «Разработка объектно-ориентированной программы с пользовательским интерфейсом»

Целью курсовой работы является приобретение практических навыков проектирования и разработки программной системы с применением современных информационных технологий.

Задание на курсовую работу содержит описание основных функции программы. В процессе работы над курсовой работой студенты должны выполнить планирование разработки, анализ предметной области и проектирование программной системы с формированием соответствующих рабочих продуктов, разработку программной системы с применением соответствующих технологий, верификацию разработанного программного обеспечения. Результат выполнения курсовой работы оформляется в виде пояснительной записки, содержащей описание этапов разработки, основные рабочие продукты и программные документы, а также обоснование принятых решений.

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

4.5 Тематика и содержание реферата:

Тематика реферата связана с обзором различных систем и технологий создания приложений с графическим интерфейсом. Оценке достоинств и недостатков каждого подхода.

5 ОБРАЗОВАТЕЛЬНЫЕ ТЕХНОЛОГИИ

5.1 Чтение лекций по дисциплине проводится с использованием мультимедийного компьютерного проектора с раздачей демонстрируемых слайдов комментарий.

5.2 При изучении материалов лабораторного практикума использовать обучающие программы и Интернет ресурсы с сайта кафедры ВТ (alice. pnzgu. ru и titan. vt).

5.3 При самостоятельной работе используются материалы доступные в сети Интернет, материалы сайта «Интернет-Университет Информационных Технологий (www. intuit. ru).

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

6 УЧЕБНО-МЕТОДИЧЕСКОЕ ОБЕСПЕЧЕНИЕ САМОСТОЯТЕЛЬНОЙ РАБОТЫ СТУДЕНТОВ, ОЦЕНОЧНЫЕ СРЕДСТВА ДЛЯ ТЕКУЩЕГО КОНТРОЛЯ УСПЕВАЕМОСТИ, ПРОМЕЖУТОЧНОЙ АТТЕСТАЦИИ ПО ИТОГАМ ОСВОЕНИЯ ДИСЦИПЛИНЫ

6.1 План самостоятельной работы студентов

№ нед.

Тема

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

Задание

Рекомендуемая литература

Коли-чество

5 семестр

2

Классы в языке С++.

Подготовка к аудиторным занятиям

Изучить способы описания классов.

Герберт Шилдт. Самоучитель C++.

С. Прата. Язык программирования C++.

2

5

Функции класса в языке С++.

Подготовка к аудиторным занятиям

Изучить синтаксис описания функций класса и спецификаторы доступа.

Герберт Шилдт. Самоучитель C++.

С. Прата. Язык программирования C++.

3

8

Наследование классов в языке С++.

Подготовка к аудиторным занятиям

Изучить механизмы наследования классов и способы описания.

Герберт Шилдт. Самоучитель C++.

С. Прата. Язык программирования C++.

3

12

Перегрузка операторов и функций в языке С++.

Подготовка к аудиторным занятиям

Изучить способы описания перегрузки операторов и перегрузки имен функций.

Герберт Шилдт. Самоучитель C++.

С. Прата. Язык программирования C++.

3

15

Полиморфизм в языке С++.

Подготовка к аудиторным занятиям

Изучить виртуальные функции и абстрактные классы.

Герберт Шилдт. Самоучитель C++.

С. Прата. Язык программирования C++.

3

6 семестр

2

Пространство имен в языке С++.

Подготовка к аудиторным занятиям

Изучить пространства имен и способы их описания.

Герберт Шилдт. Самоучитель C++.

С. Прата. Язык программирования C++.

1

4

Шаблоны в языке С++.

Подготовка к аудиторным занятиям

Изучить синтаксис описания шаблонных классов и функций.

Вандевурд, Джосаттис. Шаблоны C++.

Герберт Шилдт. Самоучитель C++.

3

6

Библиотека STL.

Подготовка к аудиторным занятиям

Изучить библиотеку STL.

Вандевурд, Джосаттис. Шаблоны C++.

А. Степанов. Руководство по STL.

2

8

Исключения в языке С++.

Подготовка к аудиторным занятиям

Изучить механизмы генерации и обработки исключений.

Вандевурд, Джосаттис. Шаблоны C++.

Герберт Шилдт. Самоучитель C++.

2

10

Типы значений в языке C#.

Подготовка к аудиторным занятиям

Изучить значимые типы языка.

Герберт Шилдт. Полное руководство С#4.0

2

12

Ссылочные типы в языке C#.

Подготовка к аудиторным занятиям

Изучить ссылочные типы языка (интерфейсы, классы).

Герберт Шилдт. Полное руководство С#4.0

3

14

Перегрузка операторов в языке C#.

Подготовка к аудиторным занятиям

Изучить способы перегрузки операторов.

Герберт Шилдт. Полное руководство С#4.0

1

15

Переопределение функций в языке C#.

Подготовка к аудиторным занятиям

Изучить способы переопределения функций.

Герберт Шилдт. Полное руководство С#4.0

1

6.2. Методические указания по организации самостоятельной работы студентов

Планируются следующие виды самостоятельной работы (внеаудиторной) относятся:

–  подготовка к лабораторным работам занятиям;

–  оформление отчётов по лабораторным работам;

–  подготовка к выполнению курсовой работы;

–  оформление пояснительной записки по курсовой работе;

–  работа с конспектом лекций и изучение рекомендованной литературы при подготовке к экзаменам.

6.3. Материалы для проведения текущего и промежуточного контроля знаний студентов

Контроль освоения компетенций

№ п/п

Вид контроля

Контролируемые разделы

Компетенции, компоненты которых контролируются

1

Текущий: собеседование при защите лаб. заданий

Промежуточный: экзамен.

Разделы 1-6

ОПК-4, ПК-3

2

Текущий: собеседование при защите лаб. заданий.

Промежуточный: экзамен.

Разделы 7-16

ОПК-4, ПК-3

Текущий контроль выполняется:

–  путем защиты выполненных студентом лабораторных работ (контрольные вопросы проведены в приложении 1) и курсового проекта;

–  путем зачета в 5 семестре, который проводится по результатам защиты лабораторных работ.

Промежуточная аттестация по итогам освоения дисциплины проводится в форме экзамена в 5 и 6 семестрах.

Контроль освоения компетенции выполняется:

–  для компетенции (ОПК-4) ‑ путем оценки способности студента самостоятельно настраивать и налаживать программное обеспечение, подготавливаться к лабораторным занятиям, курсовом проектировании и подготовки реферата.

–  для компетенции (ПК-3) ‑ путем оценки способности студента принимать решения при выполнении практических задач, осуществлять проверку их корректности и эффективности, использовать современные программные средства для решения поставленных задач.

6.4 Вопросы для собеседования

1.  Что такое класс в языке С++?

2.  Как определяется класс?

3.  Что такое спецификатор доступа?

4.  Поясните назначение конструкторов и деструкторов.

5.  Поясните особенности конструкторов с параметрами и способы передачи параметров в конструкторы.

6.  Какие существуют способы создания объекта класса и чем они отличаются?

7.  Чем отличается класс от объекта класса (экземпляра класса)?

8.  Как создаются объекты класса?

9.  Как создать объект в динамической памяти? Как его уничтожить?

10.  Что делают операторы new и delete?

11.  Опишите жизненный цикл объекта.

12.  Что такое копирующий конструктор? В чем его назначение.

13.  Какие существую способы передачи параметров в C++?

14.  Что такое значение параметров по умолчанию?

15.  Сколько можно задавать значений параметров по умолчанию?

16.  Что такое наследование?

17.  Как описывается производный класс?

18.  Как определяется видимость членов производных классов?

19.  В чем заключается особенность вызова конструкторов при наследовании?

20.  В чем заключается множественное наследование?

21.  Что такое перегрузка операторов?

22.  С какой целью выполняется перегрузка операторов?

23.  Как переопределить оператор в языке С++?

24.  Какие оператор можно перегружать в языке С++?

25.  Как определяется приоритет перегружаемого оператора?

26.  Как называется механизм, когда для одного оператора выполнено несколько реализаций с разным набором параметров?

27.  Что такое полиморфизм и как он связан с виртуальными функциями?

28.  Что такое виртуальная функция?

29.  Что такое абстрактный класс?

30.  Когда включается механизм виртуализации?

31.  Каким образом осуществляется выбор требуемого варианта реализации виртуальной функции?

32.  Что такое таблица виртуальных функций?

33.  Что такое вложенный класс?

34.  Как задать видимость вложенного класса?

35.  Каково назначение виртуального деструктора?

36.  Что такое сериализация и восстановление (десериализация)?

37.  Каково назначение шаблонов?

38.  Каким образом описывается тип данных, для которого реализуется шаблон?

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

40.  В чем заключается отличие в реализации между перегрузкой операторов и параметризованными функциями (на примере сравнения двух объектов)?

41.  Каково назначение библиотеки STL?

42.  Какие компоненты включает библиотека STL?

43.  Какие типы контейнеров включает библиотека STL?

44.  Что такое итератор?

45.  Что такое исключение?

46.  Что такое пространство имен и как оно описывается?

47.  Как генерируется исключение?

48.  Как перехватывается исключение?

49.  Зачем необходимо использовать пространство имен?

6.5 Экзаменационные вопросы

5 семестр

1.  Технология программирования. Понятие технологии программирования. Методология процедурно-ориентированного программирования. Абстракция и декомпозиция.

2.  Технология программирования. Методология объектно-ориентированного программирования. Основные принципы ООП: наследование, инкапсуляция, полиморфизм.

3.  Технология программирования. Методология объектно-ориентированного анализа и проектирования.

4.  Технология программирования. Методология системного анализа и системного моделирования.

5.  Методы проектирования программ. Метод нисходящего проектирования программ. Метод восходящего проектирования программ. Метод смешанного проектирования. Метод объектно-ориентированного проектирования.

6.  С++. Понятие класса. Объявление класса. Объявление экземпляров класса. Спецификаторы доступа. Указатель this.

7.  С++. Конструкторы. Деструктор. Создание и удаление объекта класса. Операторы new и delete. Указание размещения.

8.  С++. Функции класса. Объявление функции. Реализация функции. Вызов функции. Встраиваемые функции.

9.  С++. Функции. Передача параметров. Возвращаемое значение.

10.  С++. Функции. Перегрузка имен функций. Перегрузка и возвращаемые типы. Перегрузка и область видимости.

11.  С++. Функции. Перегрузка имен функций. Явное разрешение неоднозначности. Разрешение в случае нескольких параметров. Перегрузка функций класса.

12.  С++. Функции. Значения параметров по умолчанию. Неопределенное число параметров.

13.  С++. Наследование. Производные классы. Конструкторы и деструкторы базовых и производных классов. Порядок создания и удаления классов и членов классов.

14.  С++. Наследование. Спецификаторы доступа для базовых классов. Доступ к базовым классам. Доступ к членам базового класса. Стандартные преобразования типов.

15.  С++. Наследование. Множественное наследование. Множественное вхождение базового класса.

16.  С++. Перегрузка операторов. Перегрузка операторов new и delete.

17.  С++. Полиморфизм. Поля типа.

18.  С++. Полиморфизм. Виртуальные функции. Таблица виртуальных функций.

19.  С++. Полиморфизм. Чистая виртуальная функция. Абстрактные классы. Виртуальные и перегруженные функции.

20.  С++. Вложенные классы. Локальные классы.

6 семестр

1.  С++. Пространство имен. Using-объявление и using-директива.

2.  С++. Шаблоны. Параметризованные функции. Шаблоны функций с несколькими параметрами. Перегрузка шаблонов функций. Взаимозаменяемость параметризованных функций.

3.  С++. Шаблоны. Параметризованные классы. Специализация шаблонов класса. Частичная специализация шаблонов класса.

4.  STL. Контейнеры. Типы контейнеров. Вектор (vector), список (list), дек (deque). Множество (set), словарь (map), стек (stack).

5.  STL. Итераторы. Типы итераторов. Алгоритмы.

6.  STL. Аллокаторы. Функциональные объекты. Строки.

7.  С++. Исключения. Спецификация исключений. Повторная генерация исключений. Передача параметров в блок catch.

8.  C#. Общие сведения. Платформа. NET Framework. Типы данных. Типы значений: простые типы.

9.  C#. Структуры. Конструкторы и деструктор. Объявление экземпляра структуры. Производные структуры.

10.  C#. Ссылочные типы: общие сведения. Интерфейсы. Наследование интерфейсов.

11.  C#. Классы. Спецификаторы доступа. Конструкторы и деструктор. Производные классы. Множественное наследование.

12.  C#. Классы. Виртуальные функции. Абстрактные классы и абстрактные функции.

13.  C#. Классы. Запрещение наследования. Вызов конструктора базового класса. Доступ к членам базового класса.

14.  C#. Делегаты. Групповая адресация. Управление объектами.

15.  C#. Объекты. Строки. Пустой тип. Неявный тип. Тип объекта (Type). Типы, допускающие значение NULL.

16.  C#. Массивы. Инициализация массива. Ступенчатый массив. Свойство Length.

17.  C#. Перегрузка операторов.

18.  C#. Переопределение функций.

19.  C#. Свойства и Индексаторы.

6.6 Примеры экзаменационных билетов

5 семестр

Билет №5

1. Методы проектирования программ. Метод нисходящего проектирования программ. Метод восходящего проектирования программ. Метод смешанного проектирования. Метод объектно-ориентированного проектирования.

2. С++. Перегрузка операторов. Перегрузка операторов new и delete.

Билет №9

1. С++. Функции класса. Объявление функции. Реализация функции. Вызов функции. Встраиваемые функции.

2. С++. Вложенные классы. Локальные классы.

Билет №12

1. Технология программирования. Методология системного анализа и системного моделирования.

2. С++. Функции. Перегрузка имен функций. Явное разрешение неоднозначности. Разрешение в случае нескольких параметров. Перегрузка функций класса.

6 семестр

Билет №3

1. С++. Шаблоны. Параметризованные классы. Специализация шаблонов класса. Частичная специализация шаблонов класса.

2. C#. Классы. Виртуальные функции. Абстрактные классы и абстрактные функции.

Билет №7

1. Исключения. Спецификация исключений. Повторная генерация исключений. Передача параметров в блок catch.

2. C#. Массивы. Инициализация массива. Ступенчатый массив. Свойство Length.

Билет №11

1. STL. Итераторы. Типы итераторов. Алгоритмы.

2. C#. Переопределение функций.

7 УЧЕБНО-МЕТОДИЧЕСКОЕ И ИНФОРМАЦИОННОЕ ОБЕСПЕЧЕНИЕ УЧЕБНОЙ ДИСЦИПЛИНЫ (МОДУЛЯ)

7.1 Основная литература:

1.  Герберт Шилдт. Самоучитель С++. СПб.: БХВ-Петербург, 2005.– 688 с.

2.  Дэвид Вандевурд, Николаи Джосаттис. Шаблоны C++: справочник разработчика. М.: Издательский дом «Вильямс», 2003. – 544 с.

3.  Стэнли Липпман. Основы программирования на С++. Серия С++. – М.: Издательский дом «Вильямс», 2002. – 256 с.

4.  Герберт Шилдт. С# 4.0: полное руководство. М. , 2011. – 1056 с.

5.  Герберт Шилдт. С#: учебный курс. – СПб.: Питер; К.: Издательская группа BHV, 2003. – 512 с.

6.  Герберт Шилдт. Полное руководство С# 4.0

7.2 Дополнительная литература:

1.  зык программирования С++.-М.: БИНОМ, 1999.

2.  Visual C++ 6. Киев:. BHV, 2000.

3.  . UML в кратком изложении. Москва: Мир, 1999.

4.  еллор С. Объектно-ориентированный анализ: моделирование мира в состояниях. - Киев: Диалектика, 1993.

5.  бъектно-ориентированный анализ и проектирование с примерами приложений на С++.- М: БИНОМ, 1998.

6.  CASE структурный системный анализ (автоматизацияи применение).- М.: ЛОРИ, 1996.

7.3 Интернет-ресурсы:

1.  Материалы раздела Учебные пособия» сайта «Кафедра ВТ» http://alice. pnzgu. ru

2.  Материалы раздела «Программирование» сайта «Интернет-Университет Информационных Технологий» http://www. intuit. ru/

7.4 Программное обеспечение:

1.  Среда разработки Microsoft Visual Studio 2005/2008/2010/2012/2015.

2.  Среда разработки отчетов по выполненным лабораторным работам: пакет Open Office.

3.  Программное обеспечение для чтения электронных книг и литературы Acrobat Reader, WinDjView.

8 МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ УЧЕБНОЙ ДИСЦИПЛИНЫ (МОДУЛЯ)

Лабораторные занятия проводятся в классе, оснащенным ПЭВМ, с операционной системой Windows XP/7/10 средой разработки Microsoft Visual Studio.

Для лиц с ограниченными возможностями здоровья по ходатайству заведующего кафедрой устанавливается специальный индивидуальный набор программного обеспечения (Scype, Viber и т. д.) на вычислительную технику, выделенную для освоения дисциплины для лица с ограниченными возможностями здоровья.

Рабочая программа дисциплины «Технологии программирования» составлена в соответствии с требованиями ФГОС ВО с учетом рекомендаций ПрООП по направлению подготовки «Информатика и вычислительная техника»

Программу составили:

Доцент

Настоящая программа не может быть воспроизведена ни в какой форме без предварительного письменного разрешения кафедры-разработчика программы.

Программа одобрена на заседании кафедры ВТ

Протокол № ______________от «____» ___________________ года

Зав. кафедрой ВТ

Программа одобрена методической комиссией ФВТ

Протокол № ______________от «____» ___________________ года

Председатель методической комиссии ФВТ .

Сведения о переутверждении программы на очередной учебный год и регистрации изменений

Учебный

год

Решение кафедры

(№ протокола,
дата, подпись зав. кафедрой)

Внесенные изменения

Номера листов (страниц)

заменен-

ных

новых

аннулиро-ванных