• A
  • A
  • A
  • АБB
  • АБB
  • АБB
  • А
  • А
  • А
  • А
  • А
Обычная версия сайта
Бакалавриат 2020/2021

Программирование

Лучший по критерию «Полезность курса для Вашей будущей карьеры»
Лучший по критерию «Полезность курса для расширения кругозора и разностороннего развития»
Статус: Курс обязательный (Бизнес-информатика)
Направление: 38.03.05. Бизнес-информатика
Когда читается: 1-й курс, 3, 4 модуль
Формат изучения: без онлайн-курса
Преподаватели: Ефремов Сергей Геннадьевич, Калашников Сергей Владимирович, Репецкая Татьяна Олеговна
Язык: русский
Кредиты: 6

Программа дисциплины

Аннотация

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

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

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

Планируемые результаты обучения

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

Содержание учебной дисциплины

  • Архитектура компьютеров. Представление данных
  • Основы языка программирования Python
    Командный и скриптовый режим. Значения, выражения и типы данных. Арифметические операторы
  • Условный оператор
    Логические выражения. Алгебра логики. Условный оператор Python
  • Циклы
    Циклы с предусловием и с постусловием. Типовые шаблоны циклов в программах
  • Структуризация программы. Функции и модули
    Структурное программирование и его принципы. Функции в языке Python. Области видимости и правила разрешения имен
  • Модель памяти Python
    Многоуровневая память компьютера. Понятие ссылки. Копирование ссылок. Изменяемые и неизменяемые типы данных
  • Стандартные коллекции Python: списки и кортежи
    Тип списка (list) в Python и его базовые операции. Внутренняя организация списка. Кортежи.
  • Введение в алгоритмическую сложность
    Методы оценки алгоритмической сложности
  • Обработка строк
    Кодировочные таблицы. Тип bytes. Специальные функции обработки строк в Python. Регулярные выражения
  • Ассоциативные контейнеры. Специальные структуры данных
  • Элементы функционального программирования. Генераторы
    Функции высшего порядка. Лямбда функции. Генераторы
  • Файловый ввод-вывод
    Файл и файловая система. Форматы файлов. Работа с текстовыми файлами в Python
  • Введение в обеъектно-ориентированное программирование
    Классы и объекты, атрибуты, методы. Элементы объекта и элементы класса. Ассоциация объектов. Коллекции объектов
Элементы контроля

Элементы контроля

  • неблокирующий Лекционные тесты
  • неблокирующий Контрольные работы
  • неблокирующий Домашние работы
  • неблокирующий Экзамен
Промежуточная аттестация

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

  • Промежуточная аттестация (4 модуль)
    0.2 * Домашние работы + 0.2 * Контрольные работы + 0.1 * Лекционные тесты + 0.5 * Экзамен
Список литературы

Список литературы

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

  • Downey, A. (2015). Think Python : How to Think Like a Computer Scientist (Vol. Second edition). Sebastopol, CA: O’Reilly Media. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1105725

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

  • Baka, B. (2017). Python Data Structures and Algorithms. Birmingham, U.K.: Packt Publishing. Retrieved from http://search.ebscohost.com/login.aspx?direct=true&site=eds-live&db=edsebk&AN=1528144