Закреплена за кафедрой | Кафедра теоретической кибернетики и прикладной математики |
---|---|
Направление подготовки | 02.03.02. Фундаментальная информатика и информационные технологии |
Форма обучения | Очная |
Общая трудоемкость | 4 ЗЕТ |
Учебный план | 02_03_02_ФИиИТ-3-2020 |
|
|
Распределение часов по семестрам
Курс (семестр) | 4 (7) | Итого | ||
---|---|---|---|---|
Недель | 18,5 | |||
Вид занятий | УП | РПД | УП | РПД |
Лекции | 18 | 18 | 18 | 18 |
Лабораторные | 36 | 36 | 36 | 36 |
Сам. работа | 90 | 90 | 90 | 90 |
Итого | 144 | 144 | 144 | 144 |
Визирование РПД для исполнения в очередном учебном году
Рабочая программа пересмотрена, обсуждена и одобрена для
исполнения в 2020-2021 учебном году на заседании
кафедры
Кафедра теоретической кибернетики и прикладной математики
Протокол от 30.06.2020 г. № 6
Заведующий кафедрой к.т.н., доцент, Хворова Л.А.
1.1. | Цель - овладеть основными принципами программирования на высокоуровневом языке Python и прикладыми аспектами его применения. Изучение дисциплины направлено на: - развитие у обучающихся алгоритмического мышления, - формирование навыков реализации различных алгоритмов на высокоуровневом языке программирования, - применение знаний к решению прикладных задач. |
---|
Цикл (раздел) ООП: Б1.В.ДВ.01.02 |
ОК-3 | способностью использовать основы экономических знаний в различных сферах жизнедеятельности |
ПК-3 | способностью использовать современные инструментальные и вычислительные средства |
ПК-5 | способностью критически переосмысливать накопленный опыт, изменять при необходимости вид и характер своей профессиональной деятельности |
В результате освоения дисциплины обучающийся должен | |
3.1. | Знать: |
---|---|
3.1.1. | - Парадигмы, архитектурные черты, семантику и синтаксис языка программирования Python, - Назначение, устройство и свойства основных структур данных и конструкций языка Python - Модули и пакеты для решения различных прикладных и научных задач |
3.2. | Уметь: |
3.2.1. | - Разрабатывать математические методы и алгоритмы решения различных задач - Использовать для разработки и отладки программ интегрированные среды разработки |
3.3. | Иметь навыки и (или) опыт деятельности (владеть): |
3.3.1. | - Навыками чтения, написания, отладки и тестирования программ на высокоуровневом языке программирования в интегрированной среде разработки |
Код занятия | Наименование разделов и тем | Вид занятия | Семестр | Часов | Компетенции | Литература |
---|---|---|---|---|---|---|
Раздел 1. Введение в Python | ||||||
1.1. | История создания. Области примерения и перспективы. Инструкции и структура программы. | Лекции | 7 | 2 | ОК-3 | Л2.5, Л1.4, Л1.2 |
1.2. | Установка Python. Доступ к документации. Вввод и вывод данных. Первая программа на языке Python. | Лабораторные | 7 | 2 | ОК-3 | Л2.5, Л1.4, Л1.2 |
Раздел 2. Типы данных и операции | ||||||
2.1. | Переменные: именование переменных, присваивание значения переменным, удаление переменных. Операторы: математические операторы, двоичные операторы, приоритет выполнения операторов. | Лекции | 7 | 2 | ПК-3 | Л2.5, Л1.4, Л1.2 |
2.2. | Переменные. Операторы. | Сам. работа | 7 | 4 | ПК-3 | Л2.1, Л2.5, Л1.4, Л1.2 |
2.3. | Типы данных: числовые типы, строки, списки, кортежи, множества, диапазоны, словари. Операторы для работы с последовательностями и отображениями. | Лекции | 7 | 2 | ПК-3 | Л2.5, Л1.4, Л1.2 |
2.4. | Типы данных. Базовые функции для работы с различными типами данных. | Лабораторные | 7 | 2 | ПК-3 | Л2.5, Л1.4, Л1.2 |
2.5. | Типы данных. | Сам. работа | 7 | 4 | ПК-3 | Л2.1, Л2.5, Л1.4, Л1.2 |
Раздел 3. Инструкции и синтаксис | ||||||
3.1. | Простые и составные инструкции в Python. Условные операторы и циклы. | Лекции | 7 | 2 | ПК-3 | Л2.1, Л1.4, Л1.2 |
3.2. | Условные операторы и циклы. Обработка исключений. | Лабораторные | 7 | 4 | ПК-3 | Л2.1, Л1.4, Л1.2 |
3.3. | Условные операторы и циклы. Обработка исключений. | Сам. работа | 7 | 6 | ПК-3 | Л2.1, Л1.4, Л1.2 |
Раздел 4. Функции, модули и пакеты | ||||||
4.1. | Встроенные и пользовательские функции. Итераторы и функции-генераторы. Декораторы функций. | Лабораторные | 7 | 2 | ПК-3 | Л2.5, Л1.4, Л1.2 |
4.2. | Функции. Создание пользовательских функций. Аргументы функций. Область видимости. Модули, импортирование модулей. Пакеты модулей. | Лекции | 7 | 2 | ПК-3 | Л2.5, Л1.4, Л1.2 |
4.3. | Создание пользовательских функций. | Сам. работа | 7 | 8 | ПК-3 | Л2.1, Л2.5, Л1.4, Л1.2 |
4.4. | Модули. Основы программирования модулей. Модули стандартной библиотеки. | Лабораторные | 7 | 2 | ПК-3 | Л2.5, Л1.4, Л1.2 |
4.5. | Модули и пакеты модулей. | Сам. работа | 7 | 6 | ПК-3 | Л2.1, Л2.5, Л1.4, Л1.2 |
4.6. | Работа с файлами. Модули для работы с файлами. | Лабораторные | 7 | 2 | ПК-3 | Л2.5, Л1.4, Л1.2 |
4.7. | Работа с файлами. Модули для работы с файлами. | Сам. работа | 7 | 6 | ПК-3 | Л2.1, Л2.5, Л1.4, Л1.2 |
Раздел 5. Объектно-ориентированное программирование (ООП) | ||||||
5.1. | Объектно-ориентированное программирование. Основы программирования классов. Создание экземпляров класса. Конструктор и деструктор класса. | Лекции | 7 | 2 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.3, Л1.4 |
5.2. | Объектно-ориентированное программирование. Основы программирования классов. Создание экземпляров класса. Конструктор и деструктор класса. | Лабораторные | 7 | 2 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.3, Л1.4 |
5.3. | Объектно-ориентированное программирование. Основы программирования классов. Перегрузка операторов. | Лабораторные | 7 | 2 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.3, Л1.4 |
5.4. | Объектно-ориентированное программирование. Основы программирования классов. Создание экземпляров класса. Конструктор и деструктор класса. Перегрузка операторов. | Сам. работа | 7 | 10 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.3, Л1.4 |
5.5. | Объектно-ориентированное программирование. Наследование. Композиция. Дополнительные возможности классов: абстрактные методы, декораторы классов. | Лабораторные | 7 | 2 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.3, Л1.4 |
5.6. | Объектно-ориентированное программирование. Наследование. Композиция. | Лекции | 7 | 2 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.4 |
5.7. | Объектно-ориентированное программирование. Наследование. Композиция.Абстрактные методы классов. Декораторы классов. | Сам. работа | 7 | 10 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.4 |
Раздел 6. Графический интерфейс пользователя | ||||||
6.1. | Графический интерфейс пользователя (GUI). Событийно-ориентированное программирование. Инструменты для создания графического интерфейса пользователя: модуль стандартной библиотеки tkinter, фреймворк PyQt. | Лекции | 7 | 2 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.3, Л1.4 |
6.2. | Модуль tkinter. Класс Tk. Основные виджеты, упаковщики. Привязка событий. | Лабораторные | 7 | 2 | ПК-3 | Л2.2, Л2.5, Л1.3 |
6.3. | Модуль tkinter. | Сам. работа | 7 | 8 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.3 |
6.4. | Разработка оконного приложения. | Сам. работа | 7 | 10 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.3 |
6.5. | Расширенные возможности tkinter: модуль ttk. Разработка оконного приложения. | Лабораторные | 7 | 2 | ПК-3, ПК-5 | Л2.2, Л2.5, Л1.3 |
Раздел 7. Взаимодействие с интернетом. Разработка web-приложений | ||||||
7.1. | Web-фреймворк Flask. Разработка web-приложения. | Лабораторные | 7 | 6 | ПК-3, ПК-5 | Л1.1, Л1.4, Л2.4 |
7.2. | Основы web-программирования. Разбор URL-адреса, HTML-эквивалентов. Фреймворки для разработки web-приложений: Flask, Django. | Лекции | 7 | 2 | ПК-3, ПК-5 | Л1.1, Л1.4, Л2.4 |
7.3. | Web-фреймворк Flask. Разработка web-приложения. | Сам. работа | 7 | 10 | ПК-3, ПК-5 | Л1.1, Л1.4, Л2.4 |
Раздел 8. Доступ к базам данных из Python | ||||||
8.1. | Основы SQLite. Доступ к базам данных SQLite из Python. Выполнение запросов, обработка результатов. Управление транзакциями. | Лабораторные | 7 | 4 | ПК-3, ПК-5 | Л2.3, Л1.4 |
8.2. | Доступ к базам данных MySQL. Библиотека MySQLClient. | Лабораторные | 7 | 2 | ПК-3, ПК-5 | Л2.3, Л1.4 |
8.3. | Доступ к базам данных SQLite из Python. | Сам. работа | 7 | 4 | ПК-3, ПК-5 | Л2.3, Л1.4 |
8.4. | Доступ к базам данных MySQl из Python. | Сам. работа | 7 | 4 | ПК-3, ПК-5 | Л2.3, Л1.4 |
5.1. Контрольные вопросы и задания для проведения текущего контроля и промежуточной аттестации по итогам освоения дисциплины |
См. приложение |
5.2. Темы письменных работ для проведения текущего контроля (эссе, рефераты, курсовые работы и др.) |
Не предусмотрено |
5.3. Фонд оценочных средств для проведения промежуточной аттестации |
См. приложение |
6.1. Рекомендуемая литература | ||||
6.1.1. Основная литература | ||||
Авторы | Заглавие | Издательство, год | Эл. адрес | |
Л1.1 | Гринберг М. | Разработка веб-приложений с использованием Flask на языке Python: | Издательство "ДМК Пресс", 2014 | e.lanbook.com |
Л1.2 | Северенс Ч. | Введение в программирование на Python: Учебная литература для ВУЗов | Национальный Открытый Университет «ИНТУИТ», 2016 | biblioclub.ru |
Л1.3 | Федоров Д.Ю. | ПРОГРАММИРОВАНИЕ НА ЯЗЫКЕ ВЫСОКОГО УРОВНЯ PYTHON. Учебное пособие для прикладного бакалавриата: Гриф УМО ВО | М.:Издательство Юрайт, 2018 | biblio-online.ru |
Л1.4 | Златопольский Д.М. | Основы программирования на языке Python: Учебники | Издательство "ДМК Пресс", 2017 | e.lanbook.com |
6.1.2. Дополнительная литература | ||||
Авторы | Заглавие | Издательство, год | Эл. адрес | |
Л2.1 | Хахаев И. А. | Практикум по алгоритмизации и программированию на Python: курс | М.: Национальный Открытый Университет «ИНТУИТ», 2016//ЭБС «Университетская библиотека online» | biblioclub.ru |
Л2.2 | Тузовский А.Ф. | Объектно-ориентированное программирование: Учебное пособие для прикладного бакалавриата | М.: Издательство Юрайт, 2018 // ЭБС "Юрайт" | urait.ru |
Л2.3 | Шелдон Р., Мойе Дж. | MySQL. Базовый курс. Пер. с англ.: | М.: Вильямс, 2007 | |
Л2.4 | Митчелл Р. | Скрапинг веб-сайтов с помощю Python: Самоучители и руководства | Издательство "ДМК Пресс", 2016 | e.lanbook.com |
Л2.5 | Л. Рамальо | Python. К вершинам мастерства: | ДМК Пресс, 2016//ЭБС издательства «Лань» | e.lanbook.com |
6.2. Перечень ресурсов информационно-телекоммуникационной сети "Интернет" | ||||
Название | Эл. адрес | |||
Э1 | Основы алгоритмизации и программирования на языке Python | portal.edu.asu.ru | ||
6.3. Перечень программного обеспечения | ||||
Microsoft Windows Microsoft Office Дистрибутив Anaconda 7-Zip AcrobatReader | ||||
6.4. Перечень информационных справочных систем | ||||
1. Основы алгоритмизации и программирования на языке Python [Электронный ресурс]: https://portal.edu.asu.ru/course/view.php?id=3237 2. Издательство «Лань» - электронно-библиотечная система [Электронный ресурс]: http://e.lanbook.com 3. Издательство МЦНМО. Свободно распространяемые книги издательства Московского центра непрерывного математического образования [Электронный ресурс]: www.mccme.ru/free-books 4. Электронная библиотечная система Алтайского государственного университета [Электронный ресурс]: http://elibrary.asu.ru 5. Электронная база данных ZBMATH: https://zbmath.org/ |
Аудитория | Назначение | Оборудование |
---|---|---|
Учебная аудитория | для проведения занятий лекционного типа, занятий семинарского типа (лабораторных и(или) практических), групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации, курсового проектирования (выполнения курсовых работ), проведения практик | Стандартное оборудование (учебная мебель для обучающихся, рабочее место преподавателя, доска) |
408Л | лаборатория математического моделирования - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации | Учебная мебель на 15 посадочных мест; рабочее место преподавателя; доска меловая 1 шт.; компьютер Depo - 10 шт., 5 шт. с мониторами LG и 5 шт. с мониторами Philips; мультимедиа-проектор Sony - 1 шт.; МФУ Canon - 1 шт.; стационарный экран: марка Digis Optima C - 1 шт. |
203Л | лаборатория информационных технологий - компьютерный класс - учебная аудитория для проведения занятий семинарского типа (лабораторных и(или) практических); проведения групповых и индивидуальных консультаций, текущего контроля и промежуточной аттестации | Учебная мебель на 14 посадочных мест; компьютеры: марка ASUS модель i5-6500 - 14 единиц |
Для успешного освоения дисциплины студент должен посещать лекции и лабораторные занятия, вовремя выполнять все задания и тесты, пользоваться основной и дополнительной литературой, рекомендованной настоящей программой. Во время лекции рекомендуется вести краткий конспект. Навыки программирования на языке Python студент приобретает на лабораторных занятиях. Для выполнения лабораторных заданий каждому студенту необходимо: - получить вариант задания у преподавателя; - скачать документ с описанием задания с образовательного портала (https://portal.edu.asu.ru/course/view.php?id=3237); - внимательно прочитать задание. Вопросы, возникающие в процессе выполнения лабораторных работ, необходимо грамотно сформулировать и обратиться за помощью к преподавателю на консультации или ближайшем занятии; - разработать, отладить и оттестировать программы, решающие поставленные задачи. Для каждого лабораторного задания предусмотрена процедура защиты, в ходе которой преподаватель проводит устный опрос студентов для контроля понимания выполненных ими заданий. Тестовые задания на образовательном портале предназначены для контроля усвоения теоретического материала, а также умения читать и понимать программный код. Тесты выполняются только в присутствии преподавателя на практическом занятии или на консультации. Количество попыток ограничено тремя. Готовясь к тестированию, студент должен изучить конспекты лекций и учебно-методические материалы, рекомендуемые преподавателем. При подготовке к экзамену в дополнение к изучению конспектов лекций и учебной литературы, рекомендуется посещать консультации и пользоваться свободными Интернет-ресурсами. |