МИНОБРНАУКИ РОССИИ
федеральное государственное бюджетное образовательное учреждение высшего образования
«Алтайский государственный университет»

Современное программирование

рабочая программа дисциплины
Закреплена за кафедройКафедра радиофизики и теоретической физики
Направление подготовки03.06.01. Физика и астрономия
НаправленностьПриборы и методы экспериментальной физики
Форма обученияОчная
Общая трудоемкость5 ЗЕТ
Учебный план03_06_01_Приб_-34-2020
Часов по учебному плану 180
в том числе:
аудиторные занятия 36
самостоятельная работа 117
контроль 27
Виды контроля по семестрам
экзамены: 4

Распределение часов по семестрам

Курс (семестр) 2 (4) Итого
Недель 20
Вид занятий УПРПДУПРПД
Лекции 36 36 36 36
Сам. работа 117 117 117 117
Часы на контроль 27 27 27 27
Итого 180 180 180 180

Программу составил(и):
к.ф.-м.н., доцент, Волков Николай Викторович

Рецензент(ы):
к.ф.-м.н., доцент, Рудер Давыд Давыдович

Рабочая программа дисциплины
Современное программирование

разработана в соответствии с ФГОС:
Федеральный государственный образовательный стандарт высшего образования по направлению подготовки 03.06.01 ФИЗИКА И АСТРОНОМИЯ (уровень подготовки кадров высшей квалификации). (приказ Минобрнауки России от 30.07.2014г. №867)

составлена на основании учебного плана:
03.06.01 Физика и астрономия
утвержденного учёным советом вуза от 30.06.2020 протокол № 6.

Рабочая программа одобрена на заседании кафедры
Кафедра радиофизики и теоретической физики

Протокол от 06.06.2019 г. № 9/2018-19
Срок действия программы: 2019-2020 уч. г.

Заведующий кафедрой
д.ф.-м.н., профессор, Лагутин Анатолий Алексеевич


Визирование РПД для исполнения в очередном учебном году

Рабочая программа пересмотрена, обсуждена и одобрена для
исполнения в 2020-2021 учебном году на заседании кафедры

Кафедра радиофизики и теоретической физики

Протокол от 06.06.2019 г. № 9/2018-19
Заведующий кафедрой д.ф.-м.н., профессор, Лагутин Анатолий Алексеевич


1. Цели освоения дисциплины

1.1.Знакомство молодого аспиранта-исследователя с современными проблемами разработки программных комплексов.
Освоение классических средств и инструментов разработки.
Выработка навыков работы с распределенными системами управления редакциями, а также системами учета проблем.

2. Место дисциплины в структуре ООП

Цикл (раздел) ООП: Б1.В.ДВ.02

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

УК-1 способностью к критическому анализу и оценке современных научных достижений, генерированию новых идей при решении исследовательских и практических задач, в том числе в междисциплинарных областях
УК-5 способностью планировать и решать задачи собственного профессионального и личностного развития
ОПК-1 способностью самостоятельно осуществлять научно-исследовательскую деятельность в соответствующей профессиональной области с использованием современных методов исследования и информационно-коммуникационных технологий
ПК-1 Способность демонстрировать системное понимание в профессиональной области и получать научные результаты, удовлетворяющие установленным требованиям к содержанию диссертаций на соискание ученой степени кандидата наук по направленности Приборы и методы экспериментальной физики
В результате освоения дисциплины обучающийся должен
3.1.Знать:
3.1.1.Современные проблемы организации разработки программ и некоторые пути их решения
Стандартные системы учета проблем
Системы управления редакциями
Типовые средства и инструменты разработки
3.2.Уметь:
3.2.1.Работать в проектной группе по разработке программ
Выявить ошибку в коде, разместить сообщение об ошибке в одной из систем учета проблем
Пользоваться современными средствами и инструментами разработки
3.3.Иметь навыки и (или) опыт деятельности (владеть):
3.3.1.Аргументировать свою точку зрения по важности и критичности проблемы в исходном коде программы и способах ее устранения
Самостоятельного выявления и устранения уязвимостей и ошибок в коде

4. Структура и содержание дисциплины

Код занятия Наименование разделов и тем Вид занятия Семестр Часов Компетенции Литература
Раздел 1. Современные проблемы организации разработки программ и некоторые пути их решения
1.1. Специфика современного программирования. Проблема организации группы программистов для работы над проектом. Способы решения проблем. Web-системы для разработчиков. Лекции 4 4 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
1.2. Специфика современного программирования. Проблема организации группы программистов для работы над проектом. Способы решения проблем. Web-системы для разработчиков. Сам. работа 4 10 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
Раздел 2. Классические средства разработки свободного программного обеспечения
2.1. Специализированная платформа Emacs и расширения для работы с языками программирования. Классический редактор Vim. Лекции 4 6 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
2.2. Специализированная платформа Emacs и расширения для работы с языками программирования. Классический редактор Vim. Сам. работа 4 30 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
Раздел 3. Системы учета проблем
3.1. Система отслеживания ошибок Debian. GNU Bug Tracker. Bugzilla. Система RT. Лекции 4 4 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
3.2. Система отслеживания ошибок Debian. GNU Bug Tracker. Bugzilla. Система RT. Сам. работа 4 10 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
Раздел 4. Системы управления редакциями
4.1. Историческая система RCS. Централизованная система CVS. Распределенная система Git. Лекции 4 10 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
4.2. Историческая система RCS. Централизованная система CVS. Распределенная система Git. Сам. работа 4 20 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
Раздел 5. Системы размещения софта
5.1. Ресурс GitHUB. Платформа GitLab. Лекции 4 2 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
5.2. Ресурс GitHUB. Платформа GitLab. Сам. работа 4 7 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
Раздел 6. Инструменты современного разработчика
6.1. Пакет разработчика GCC. Утилита сборки GNU Make. Система управления сборкой GNU Automake. Лекции 4 10 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1
6.2. Пакет разработчика GCC. Утилита сборки GNU Make. Система управления сборкой GNU Automake. Сам. работа 4 40 ОПК-1, ПК-1, УК-1, УК-5 Л1.2, Л1.1, Л2.1

5. Фонд оценочных средств

5.1. Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины
5.2. Темы письменных работ для проведения текущего контроля (эссе, рефераты, курсовые работы и др.)
5.3. Фонд оценочных средств для проведения промежуточной аттестации
см. приложение

6. Учебно-методическое и информационное обеспечение дисциплины

6.1. Рекомендуемая литература
6.1.1. Основная литература
Авторы Заглавие Издательство, год Эл. адрес
Л1.1 Г.В. Курячий Операционная система UNIX : методические рекомендации: Москва : Интернет-Университет Информационных Технологий, 2004 // ЭБС "Университетская библиотека онлайн" biblioclub.ru
Л1.2 Б. Страуструп Язык программирования C++ для профессионалов: Москва : Интернет-Университет Информационных Технологий, 2006 // ЭБС "Университетская библиотека онлайн" biblioclub.ru
6.1.2. Дополнительная литература
Авторы Заглавие Издательство, год Эл. адрес
Л2.1 В.И. Лебедев, О.Л. Серветник, А.А. Плетухина и др. Современные информационные технологии : учебное пособие: Ставрополь : СКФУ, 2014 // ЭБС "Университетская библиотека онлайн" biblioclub.ru
6.2. Перечень ресурсов информационно-телекоммуникационной сети "Интернет"
Название Эл. адрес
Э1 https://gcc.gnu.org/
Э2 https://www.gnu.org/software/emacs/
Э3 https://about.gitlab.com/
Э4 https://github.com/github
Э5 https://www.debian.org/Bugs/
Э6 https://debbugs.gnu.org/
Э7 https://www.bugzilla.org/
Э8 Курсна Едином образовательном портале АлтГУ portal.edu.asu.ru
6.3. Перечень программного обеспечения
Windows 7 Professional, № 60674416 от 17.07.2012 (бессрочная);
Office 2010 Professional, № 49464762 от 14.12.2011 (бессрочная);
Open Office, http://www.openoffice.org/license.html
Visual Studio, https://code.visualstudio.com/license
Python c расширениями PIL, Py OpenGL, https://docs.python.org/3/license.html
FAR, http://www.farmanager.com/license.php?l=ru
7-Zip, http://www.7-zip.org/license.txt
AcrobatReader, http://wwwimages.adobe.com/content/dam/Adobe/en/legal/servicetou/Acrobat_com_Additional_TOU-en_US-20140618_1200.pdf
Chrome; http://www.chromium.org/chromium-os/licenses
Eclipse (PHP,C++, Phortran), http://www.eclipse.org/legal/eplfaq.php
DjVu reader, http://djvureader.org/
Lazarus, http://wiki.lazarus.freepascal.org/Lazarus_Faq#Licensing
Putty, https://putty.org.ru/licence.html
QTEPLOT, http://www.qtiplot.com/doc/manual-en/index.html
NETBEANS, https://netbeans.org/about/legal/index.html
R STUDIO (open source), http://www.rstudio.com/
MingGW, http://mingw.org/license
Scilab, http://www.scilab.org/en/scilab/license
6.4. Перечень информационных справочных систем
Система учета проблем RT (Лицензия: Стандартная общественная лицензия GNU (GENERAL PUBLIC LICENSE) https://www.gnu.org/licenses/gpl-3.0.ru.html)
Cистемы управления редакциями CVS, Git (Лицензия: Стандартная общественная лицензия GNU (GENERAL PUBLIC LICENSE) https://www.gnu.org/licenses/gpl-3.0.ru.html)
Пакет GCC (Лицензия: Стандартная общественная лицензия GNU (GENERAL PUBLIC LICENSE) https://www.gnu.org/licenses/gpl-3.0.ru.html)
Утилита сборки GNU Make (Лицензия: Стандартная общественная лицензия GNU (GENERAL PUBLIC LICENSE) https://www.gnu.org/licenses/gpl-3.0.ru.html)
Система сборки GNU Autotools (Лицензия: Стандартная общественная лицензия GNU (GENERAL PUBLIC LICENSE) https://www.gnu.org/licenses/gpl-3.0.ru.html)
Специализированный редактор Emacs (Лицензия: Стандартная общественная лицензия GNU (GENERAL PUBLIC LICENSE) https://www.gnu.org/licenses/gpl-3.0.ru.html)
Редактор Vim (Лицензия: Стандартная общественная лицензия GNU (GENERAL PUBLIC LICENSE) https://www.gnu.org/licenses/gpl-3.0.ru.html)
https://www.gnu.org/software/emacs/ GNU Emacs
https://gcc.gnu.org/ GCC, the GNU Compiler Collection
https://about.gitlab.com/ Complete DevOps
https://github.com/github How people build software.
https://www.debian.org/Bugs/ Система отслеживания ошибок Debian
https://debbugs.gnu.org/ GNU Bug Tracker
https://www.bugzilla.org/ Bugzilla is server software designed to help you manage software development.

7. Материально-техническое обеспечение дисциплины

Аудитория Назначение Оборудование
001вК склад экспериментальной мастерской - помещение для хранения и профилактического обслуживания учебного оборудования Акустический прибор 01021; виброизмеритель 00032; вольтметр Q1202 Э-500; вольтметр универсальный В7-34А; камера ВФУ -1; компьютер Турбо 86М; масспектрометр МРС -1; осциллограф ЕО -213- 2 ед.; осциллограф С1-91; осциллограф С7-19; программатор С-815; самописец 02060 – 2 ед.; стабилизатор 3218; терц-октавный фильтр 01023; шкаф вытяжной; шумомер 00026; анализатор АС-817; блок 23 Г-51; блок питания "Статрон" – 2 ед.; блок питания Ф 5075; вакуумный агрегат; весы; вольтметр VM -70; вольтметр В7-15; вольтметр В7-16; вольтметр ВУ-15; генератор Г-5-6А; генератор Г4-76А; генератор Г4-79; генератор Г5-48; датчик колебаний КВ -11/01; датчик колебаний КР -45/01; делитель Ф5093; измеритель ИМП -2; измеритель параметров Л2-12; интерферометр ИТ 51-30; источник "Агат" – 3 ед.; источник питания; источник питания 3222; источник питания ЭСВ -4; лабораторная установка для настройки газовых лазеров; лазер ЛГИ -21; М-кальк-р МК-44; М-калькул-р "Электроника"; магазин сопротивления Р4075; магазин сопротивления Р4077; микроскоп МБС -9; модулятор МДЕ; монохроматор СДМС -97; мост переменного тока Р5066; набор цветных стекол; насос вакумный; насос вакуумный ВН-01; осциллограф С1-31; осциллограф С1-67; осциллограф С1-70; осциллограф С1-81; осциллоскоп ЕО -174В – 2 ед.; пентакта L-100; пирометр "Промень"; пистонфон 05001; преобразователь В9-1; прибор УЗДН -2Т; скамья оптическая СО 1м; спектограф ДФС -452; спектограф ИСП -51; стабилизатор 1202; стабилизатор 3217 – 4 ед.; стабилизатор 3218; стабилизатор 3222 – 3 ед.; станок токарный ТВ-4; усилитель мощности ЛВ -103 – 4 ед.; усилитель У5-9; центрифуга ВЛ-15; частотомер Ч3-54А; шкаф металлический; эл.двигатель; электродинамический калибратор 11032
Учебная аудитория для проведения занятий лекционного типа, занятий семинарского типа (лабораторных и(или) практических), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации, курсового проектирования (выполнения курсовых работ), проведения практик Стандартное оборудование (учебная мебель для обучающихся, рабочее место преподавателя, доска)
Помещение для самостоятельной работы помещение для самостоятельной работы обучающихся Компьютеры, ноутбуки с подключением к информационно-телекоммуникационной сети «Интернет», доступом в электронную информационно-образовательную среду АлтГУ
308К лаборатория компьютерных технологий - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации Учебная мебель на 15 посадочных мест; рабочее место преподавателя; доска маркерная; компьютеры Aquarius STd MS_SC140, монитор BENQ 17'' (5шт.), компьютеры Парус 945 MSI, монитор LG 17'' (5 шт.) Fast Ethernet Swich Allied Telesyn 1; методические рекомендации по выполнению лабораторных работ по курсам "Алгоритмы и языки программирования", "Численные методы и математическое моделирование", "Вычислительная физика", "Компьютерная радиофизика".

8. Методические указания для обучающихся по освоению дисциплины

При изучении курса предполагается, что слушатель знаком с программированием на языках высокого уровня C, C++, Фортран. Лекционный материал содержит массу примеров, которые следует самостоятельно проверить. Для этого исходные коды предлагаемых программ следует скопировать в специализированный редактор (например Emacs), откомпилировать и запустить программы.

Экзамен по дисциплине ставится по итогам представления и защиты аспирантом итогового проекта.