РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ...

8
МИНОБРНАУКИРОССИИ Федеральное государственное автономное образовательное учреждение высшего образования «Национальный исследовательский университет «Московский институт электронной техники» й работе и.г. Игнатова ~~~--~~--~-- 2019 г. ff-----'------ РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫ «ФУНКЦИОНАЛЬНОЕ ПРОГР АММИРОВАНИЕ» Направление подготовки - 01.04.04 «Прикладная математика» Программа - «Математические методы и моделирование в естественнонаучной и технической сферах» Программа - «Цифровая обработка сигналов и изображений» 2019 г.

Upload: others

Post on 15-Sep-2020

14 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫemirs.miet.ru/oroks-miet/upload/ftp/pub/orioks3/2019/7/RP_FP_01.0… · 2 2 Классы типов. 4 2 Трансформеры

МИНОБРНАУКИРОССИИФедеральное государственное автономное образовательное учреждение высшего образования

«Национальный исследовательский университет«Московский институт электронной техники»

й работеи.г. Игнатова~~~--~~--~--

2019 г.ff-----'------

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

«ФУНКЦИОНАЛЬНОЕ ПРОГР АММИРОВАНИЕ»

Направление подготовки - 01.04.04 «Прикладная математика»Программа - «Математические методы и моделирование в естественнонаучной и

технической сферах»Программа - «Цифровая обработка сигналов и изображений»

2019 г.

Page 2: РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫemirs.miet.ru/oroks-miet/upload/ftp/pub/orioks3/2019/7/RP_FP_01.0… · 2 2 Классы типов. 4 2 Трансформеры

1. ПЕРЕЧЕНЬ ПЛАНИРУЕМЫХ РЕЗУЛЬТАТОВ ОБУЧЕНИЯ

Дисциплина участвует в формировании следующих компетенций образовательныхпрограмм:

Компетенции,формируемые в

Подкомпетенции,формируемые в

Индикаторы достижениякомпетенций/подкомпетенций

дисциплине дисциплинеОПК-3 «Способен опк.з.опразрабатыватьнаукоемкоепрограммноеобеспечение

Способен Знания:разрабатывать наукоемкое ИД-l(ОПК-З.фП) Знатьпрограммное обеспечение основные понятиядля автоматизации систем и функционального

с программирования, лямбда-для процессовавтоматизации систем использованием языков и исчисления, синтаксис ии процессов, а также приёмов функционального семантика языка Haskell илиразвивать программирования другого функционального языка.информационно-коммуникационныетехнологии»

Умения:ИД-2(ОПК-З.ФП) Уметьразрабатывать и тестироватьпрограммы в функциональнойпарадигме.

Опыт деятельности:ИД-l(ОПК-З.фП) Иметь опытразработки программногообеспечения для автоматизациисистем и процессов сиспользованием языков иприёмов функциональногопрограммирования

2. МЕСТО ДИСЦИПЛИНЫ В СТРУКТУРЕ ОБРАЗОВАТЕЛЬНОЙПРОГРАММЫ

Дисциплина входит в обязательную часть Блока 1 «Дисциплины (модули)»образовательной программы.

Входные требования к дисциплине: знакомство спрограммированием, объектно-ориентированным программированием.

императивным:

2

Page 3: РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫemirs.miet.ru/oroks-miet/upload/ftp/pub/orioks3/2019/7/RP_FP_01.0… · 2 2 Классы типов. 4 2 Трансформеры

3. ОБЪЕМ ДИСЦИПЛИНЫ И ВИДЫ УЧЕБНОЙ РАБОТЫ

1 2 з 108

Контактная работа

8 24 76 ЗаО

4. СОДЕРЖАНИЕ ДИСЦИПЛИНЫ

Контактная работа

Х!!И наименованиемодуля

1. Основы Haskell

2. Разработка библиотеки программ на Haskell

12

12

4

4

~C"J

=~~~~ Формы текущего контроляеf-o C"J1;,1 f-oQ Q::;;: \.сC"J C"JU ~

20

20

4.1. Лекционные занятияНе предусмотрены

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

Лабораторная работа NQ 1Лабораторная работа NQ2Лабораторная работа NQЗЛабораторная работа NQ4

е ):=••• :=... е f-o~ ~ t:I::

~ = 1;,1 =~ := ~ C"J Краткое содержание~ ::r м~ = := ::;;: --=:= f-oе :r ~ ~ ~~ 1;,1 C"J ~ ~~ ё ~

= о':1 2 Парадигмы программирования. Функциональное программирование.

1 Классификация функциональных языков. Базовые типы и основысинтаксиса языка Haskell.

2 2 Сопоставление с образцом. Алгебраические типы данных. Списки какалгебраический тип данных. Работа со списками. Выборки из списков.Параметризованные типы, классы типов.

3 2 Функции высшего порядка. Замыкания. Частичное применениефункций. Лямбда-исчисление.

4 2 Абстракция данных. Основные структуры данных в стандартнойбиблиотеке Haskell.

з

Page 4: РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫemirs.miet.ru/oroks-miet/upload/ftp/pub/orioks3/2019/7/RP_FP_01.0… · 2 2 Классы типов. 4 2 Трансформеры

5 2 Порядок вычислений. Ленивость и строгость.6 2 Свёртки И развёртки списков и других алгебраических типов.

Моноиды.2 7 2 Тестирование программ на Haskell. Библиотеки HUnit, QuickCheck.

8 2 Подход к конструированию программ «сверху вниз». Библиотекикомбинаторов.

9 2 Доказательство свойств функций. Рассуждение с помощью равенств.10 2 Типы высших сортов. Функторы, аппликативные функторы, монады.11 2 Ввод/вывод. Реализация исполняемых программ.12 2 Параллелизм и многозадачность.

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

2 3 2 Функторы и монады

1- 1 2 Реализация простых функций на языке Haskell.2 2 Классы типов.

4 2 Трансформеры монад, написание исполняемых программ

4.4. Самостоятельная работа студентов

,==•.. ==..с ~== 1:1:

1:1:== ==~ ~ ~ Вид СРСЕ' 1: м

==~ .-•..с> ::r Q) ..с

~ <:.1 ,Q <:.1

~~~ ~о ="''-'

1 38 Изучение других языков ФП, подготовка к лабораторным работам2 38 Изучение других языков ФП, подготовка к лабораторным работам,

подготовка к зачету

4.5. Примерная тематика курсовых работ (проектов)Не предусмотрены

5. ПЕРЕЧЕНЬ УЧЕБНО-МЕТОДИЧЕСКОГО ОБЕСПЕЧЕНИЯ ДЛЯСАМОСТОЯТЕЛЬНОЙ РАБОТЫ

Учебно-методическое обеспечение для самостоятельной работы студентов в составеУМК дисциплины (ОРИОКС, httР://OIiоks.шiеt.щ[):Модуль 1 «Основы Haskell»../ Примерные задания лабораторных работ М] и М2

4

Page 5: РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫemirs.miet.ru/oroks-miet/upload/ftp/pub/orioks3/2019/7/RP_FP_01.0… · 2 2 Классы типов. 4 2 Трансформеры

./ Онлайн-ресурсы, указанные в разделах б и 7Модуль 2 «Разработка библиотек и программ на Haskell»./ Примерные задания лабораторных работ М!3 и М!4./ Онлайн-ресурсы, указанные в разделах б и 7

6. ПЕРЕЧЕНЬ УЧЕБНОЙ ЛИТЕРАТУРЫ

Литература

1. Функциональное программирование: Учебник и практикум для академическогобакалавриата / А.А. Кубенский, - М. : Юрайт, 2019. - 348 с. - (Бакалавр.Академический курс).

2. Практика работы на языке Haskell [Электронный ресурс] / р.в. Душкин. - М. : ДМКПресс, 2010. - 288 с. - Доступ к электронной версии книги открыт на сайтеhttp://e.lanbook. com/.

7. ПЕРЕЧЕНЬ РЕСУРСОВ СЕТИ «ИНТЕРНЕТ»

1. А. Холомьёв. Учебник по Haskell. Онлайн-ресурс, http://anton-k.github.io/ru-l1askell-ЬооklЬооklhоше.htшl (PDF версия http://anton-k.github.io/ru-l1askell-booklfiles/ru-haskell- book. pdf)

2. Bryan O'Sullivan, Don Stewart, and John Goerzen, Real World Haskell. Онлайн-ресурс,http://book.realw01'ldhaskell.01'g/read/

3. Miran Цроуаба, Leam Уои а Haskell for Great Good! Онлайн-ресурс,httр://lеаmуоuаl1аskеll.сош/

4. Siшоп Marlow, Paтallel and Сопсuпепt Рrоgrarnшiпg in Haskell. Онлайн-ресурс,llttр://сl1i111еrа.lаЬs.О1'еillу.сош/Ьооks/1230000000929 /il1dеХ.htшl

5. Документация GHC11ttрs://dОW1110аds.hаskеll.оrg/~gllс/1аtеst/dосs/htшl/usеl'S guidе/iпdех.htшl иhttps:/ /d0Wl110ads.haskell.org/~ghc/1atest/ dосs/htшl/liЬrаl'iеs/iпdеХ.htшl

6. Haskell Wiki http://www.haskell.01'g/haskellwiki/Haskell

8. ПЕРЕЧЕНЬ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ

Компилятор языка Haskell.Текстовый редактор (Visual Studio Code или другой).Корпоративная

(httР://О1'iоks.шiеt.ru).информационно-технологическая платформа ОРИОКС

5

Page 6: РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫemirs.miet.ru/oroks-miet/upload/ftp/pub/orioks3/2019/7/RP_FP_01.0… · 2 2 Классы типов. 4 2 Трансформеры

9. МАТЕРИАЛЬНО-ТЕХНИЧЕСКОЕ ОБЕСПЕЧЕНИЕ ДИСЦИПЛИНЫ

НаименованиеОснащенность специальных

специальныхпомещений и помещений для

Переченьпомещений и

самостоятельной работыпрограммного

помещений для обеспечениясамостоятельной работыМультимедийная учебная Компьютер с ПО и возможностьюаудитория для проведения подключения к сети Интернет ипрактическихзанятий обеспечением доступа в электронно-

образовательную среду МИЭТ;телевизоры;акустическое оборудование(микрофон, звуковые колонки)

Учебная аудитория для КлассПК GHCi (Haskell) 2007проведения лабораторныхработУчебные аудитории для Компьютерная техника ссамостоятельной работы возможностью подключения к сети

«Интернет» и обеспечением доступа вэлектронно-образовательную средуМИЭТ

10. АКТИВНЫЕ И ИНТЕРАКТИВНЫЕ ФОРМЫ ПРОВЕДЕНИЯ ЗАНЯТИЙ

Х!!Тип занятия или Вид и тематика (название)

п\пвнеаудиторной работы интерактивного занятия

1 Практическое занятие 1 Семинар-дискуссия по теме «Парадигмы иклассификация языков программирования»

2 Практическое занятие 2 Семинар-дискуссия по теме «Алгебраические типыданных»

3 Практическое занятие 3 Семинар-дискуссия по теме «Функции высшегопорядка»

4 Практическое занятие 4 Семинар-дискуссия по теме «Абстракция данных»5 Практнческое занятие 5 Семинар-дискуссия по теме «Ленивость и строгость»6 Практическое занятие 6 Семинар-дискуссия по теме «Свёртки и развёртки

алгебраических типов данных»7 Практическое занятие 7 Семинар-дискуссия по теме «Тестирование программ

на Haskell»8 Практическое занятие 8 Семинар-дискуссия по теме «Конструирование

программ на Haskell»9 Практическое занятие 9 Семинар-дискуссия по теме «Доказательство свойств

функций»10 Практическое занятие 1О Семинар-дискуссия по теме «Типы высших сортов»11 Практическое занятие 11 Семинар-дискуссия по теме «Ввод/вывод»

6

Page 7: РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫemirs.miet.ru/oroks-miet/upload/ftp/pub/orioks3/2019/7/RP_FP_01.0… · 2 2 Классы типов. 4 2 Трансформеры

12 Практическое занятие 12 Семинар-дискуссия по теме «Параллелизм имногозадачность»

11. ФОНД ОЦЕНОЧНЫХ СРЕДСТВ ДЛЯ ПРОВЕРКИСФОРМИРОВАННОСТИ КОМПЕТЕНЦИЙ

Х!! Код компетенции/ТипФОС Перечень элементов ФОС

п\п подкомпетенции

1 ФОСпо ОПК-3.ФП. Практико-ориентированныеподкомпетенции задания в рамках зачета

2 ФОС по элементам Знания: Лабораторные работы 1,2,3,4подкомпетенции ИД-1(ОПК-3.ФП)

Умения: Лабораторные работы 1,2,3,4ИД-1(ОПК-3.ФП)

12. МЕТОДИЧЕСКИЕ УКАЗАНИЯ ДЛЯ ОБУЧАЮЩИХСЯ ПО ОСВОЕНИЮДИСЦИПЛИНЫ

12.1. Особенности организации процесса обученияПосещение семинаров обязательно. Лабораторные работы могут сдаваться как

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

12.2. Система контроля и оцениванияДля оценки успеваемости студентов по дисциплине используется накопительная

балльная система. Баллами оцениваются: выполнение каждого контрольного мероприятияв семестре (в сумме 80 баллов) и сдача зачёта (20 баллов). При несвоевременной сдачелабораторных работ максимальная оценка уменьшается.

По сумме баллов выставляется итоговая оценка по предмету. Структура и графикконтрольных мероприятий приведены ниже в таблице (см. также журнал успеваемости наОРИОКС, l1ttP://OIioks.miet.ruL).

Структура и график контрольных мероприятий

NQнедели 4 8 12 16 18Контрольное

ЛР 1 ЛР2 ЛР3 ЛР4 Зачётмероприятиемаксимальный балл 20 20 20 20 20 100

РАЗРАБОТЧИК:

Должность, степень, звание /Романов А.В.!

7

Page 8: РАБОЧАЯ ПРОГРАММА УЧЕБНОЙ ДИСЦИПЛИНЫemirs.miet.ru/oroks-miet/upload/ftp/pub/orioks3/2019/7/RP_FP_01.0… · 2 2 Классы типов. 4 2 Трансформеры

Рабочая программа дисциплины «Функциональное программирование» по направлениюподготовки 01.04.04 «Прикпадная математика», программы «Математические методы имоделирование в естественнонаучной и технической сферах», «Цифровая обработкасигналов и изображений» разработана на кафедре Высшей математики-1 и утверждена назаседании кафедры 2!)_ Об 2019 года, протокол NQ10

Заведующий кафедрой ~ ~ /Прокофьев А.А.!

ЛИСТ СОГЛАСОВАНИЯ

Рабочая программа согласована с Центром подготовки к аккредитации инезависимойоценки качества

Начальник АНОК А-------___ ~~'77"'~ ---,/никулина И.М.!

Рабочая про грамма согласована с библиотекой миэт

/ Директор библиотеки _----';$:.........,.,..~-+----------'/Филиппова т.п/

8