Голосов: 0
#1
Разработчик прикладного программного обеспечения (Язык Python) [2021]
Высшая инженерная школа СПбПУ (Санкт-Петербургский Политехнический Университет)
Марина Абрамова, Роман Бельтюков, Иван Брык, Светлана Городецкая, Алексей Журкин, Наталия Костина, Любовь Курафеева, Андрей Лемец, Алексей Маслаков, Алексей Первушин, Марина Полубенцева, Евгения Тучкевич, Дмитрий Федоров
Язык Python является самым популярным языком программирования 2018 года.
Программа построена по принципу от простого к сложному.
В программу интегрированы курсы Python Institute, а слушатели программы могут подготовиться к сдаче сертификационного экзамена Python Certified Associated Programmer.
Слушатели программы изучат как простые так и продвинутые технологии программирования на языке Python, позволяющие выполнять достаточно сложные проекты.
1. Этапы получения исполняемого файла;
2. Встроенные типы данных в языках программирования, основные синтаксические конструкции языка Python;
3. Основные способы организации данных;
4. Понятия, относящиеся к функциям;
5. Стандартные исключения и способы их перехвата и обработки;
6. Понятие виртуального окружения;
7. Особенности отладки кода и анализа выполнения программы;
8. Принципы работы с итерируемыми объектами;
9. Способы создания выражений и функций генераторов;
10. Синтаксис регулярных выражений;
11. Правила оформления и анализа кода;
12. Базовые понятия алгоритмизации и процедурного программирования;
13. Основные алгоритмы работы с различными структурами данных;
14. О-нотацию и правила вычисления;
15. Итерационные алгоритмы;
16. Рекурсию и рекурсивные алгоритмы;
17. Основы динамического программирования;
18. Алгоритмы работы с графами и деревьями, обработки строковых данных, сортировки;
19. Базовые понятия объектно-ориентированного программирования;
20. Отличия процедурных и объектно-ориентированных языков программирования высокого уровня;
21. Понятия инкапсуляции, наследования и полиморфизма;
22. Возможности использования классов для решения практических задач.
23. Основные модули PySide2 и их назначение (QtCore, QtGui, QtWidgets);
24. Основные классы виджетов и их свойства;
25. Стандартные стили оформления, способы отладки GUI в Qt.
26. Возможности и особенности фреймворка Django;
27. Идеи MVC-подхода;
28. Системы привязки интернет-адресов в фреймворке;
29. Что такое представления, встроенные представления и функции представления;
30. Способы хранения данных, модели Django;
31. Назначение миграций и их использование;
32. Что такое шаблоны и формы, их назначение и использование;
33. Принципы обеспечения безопасности Web-приложений.Тема 1. Введение в программирование на языке Python
1.1 Краткий обзор аспектов языка Python. Установка и настройка среды разработки.Тема 2. Базовые объектные типы языка Python и работа с ними. Переменные и динамическая типизация
1.2 Структура программы на языке Python.
1.3 Модель выполнения программ на языке Python.
Практические занятия:
Установка и настройка среды разработки.
Выполнение инструкций в интерактивном режиме.
2.1 Обзор объектных типов языка Python. Особенности работы с простыми объектными типами.Тема 3. Базовые инструкции языка Python
2.2 Особенности работы с составными объектными типами.
2.3 Переменные и динамическая типизация.
2.4 Разделяемые ссылки и изменяемые объекты.
Практические занятия:
Установка и настройка среды разработки.
Выполнение инструкций в интерактивном режиме.
Ссылки и изменяемые объекты.
3.1 Обзор основных управляющих инструкций языка Python. Условная инструкция if и синтаксические правила.Тема 4. Функции. Создание и использование функций
3.2 Циклы while и for.
Практические занятия:
Использование условной инструкции if.
Использование цикла for.
Использование цикла while.
4.1 Функции. Создание функций.Тема 5. Модули и пакеты. Работа с библиотеками
4.2 Аргументы функции.
Практические занятия:
Создание простой функции.
Создание функции с аргументами.
Использование функции.
5.1 Модули и пакеты. Способы создания и использования.Тема 6. Исключения и обработка ошибок
5.2 Работа с библиотеками.
Практические занятия:
Создание модулей и пакетов.
Импортирование кода.
Документирование кода.
Работа со стандартными библиотеками.
6.1 Исключения.
6.2 Обработка исключений.
Практические занятия:
Использование Try… Except.
Использование Raise, Assert.Тема 1. Виртуальное окружение и пакеты
1.1 Виртуальное окружение.Тема 2. Отладка кода и анализ выполнения программы
1.2 Система управления виртуальными пространствами Anaconda.
Практические занятия:
Создание виртуального окружения.
Переключение между виртуальными окружениями.
Установка и удаление пакетов.
Создание списков зависимостей.
2.1 Отладка кода.Тема 3. Создание и обработка итерируемых объектов
2.2 Аннотация типов.
Практические занятия:
Работа с точками останова.
Использование контрольных значений.
Типизация аргументов функций.
3.1 Итераторы.Тема 4. Расширенные возможности использования функций
3.2 Функциональные преобразования списков.
3.3 Выражения-генераторы.
Практические занятия:
Исследование свойств объекта iterator.
Использование функций enumerate, map, filter.
Создание и использование выражений-генераторов.
4.1 Функции генераторы.Тема 5. Работа с файловой системой
4.2 Рекурсивные функции.
4.3 Декораторы.
Практические занятия:
Создание функций генераторов и корутинов.
Создание и использование lambda-функций.
Написание декораторов.
5.1 Работа с файловой системой.Тема 6. Регулярные выражения и основы синтаксического разбора
5.2 Параметры командной строки.
Практические занятия:
Работа с файлами и папками.
Обработка параметров командной строки.
6.1 Регулярные выражения.Тема 7. Оформление и анализ кода
6.2 Составление и применение регулярных выражений.
Практические занятия:
Работа с файлами и папками.
Обработка параметров командной строки.
7.1 Правила оформления кода.Тема 8. Основы git
7.2 Анализ кода.
Практические занятия:
Использование PEP 8 и style guide.
Использование pylint (linting tools).
8.1 Основы контроля версиями.
8.2 Работа с удаленным репозиторием.
Практические занятия:
Установка и настройка Git.
Создание нового репозитория.
Подключение к удаленному репозиторию. Отправка изменений на сервер.Тема 1. Введение в алгоритмы и структуры данных. О-нотация. Простые структуры данных
1.1 Введение в алгоритмы и структуры данных.Тема 2. Итерационные алгоритмы. Рекурсия и рекурсивные алгоритмы
1.2 О-нотация.
1.3 Простые структуры данных.
Практические работы:
Проверка числа на простоту.
Решето Эратосфена.
Работа со стеком.
Работа со списками.
2.1 Итерационные алгоритмы и применение.Тема 3. Динамическое программирование
2.2 Рекурсия и рекурсивные алгоритмы.
Практические работы:
Ряды Тейлора.
Вычисление факториала числа.
Вычисление числа Фибоначчи.
3.1 Динамическое программирование.Тема 4. Графы и деревья.
3.2 Метод «разделяй и властвуй».
Практические работы:
Проверка корректности скобочной последовательности.
Задача о возможных прыжках кузнечика.
4.1 Графы и их свойства.Тема 5. Алгоритмы сортировки
4.2 Деревья и их свойства.
Практические работы:
Поиск кратчайшего пути.
Операции на деревьях.
5.1 Введение в алгоритмы сортировки.Тема 6. Алгоритмы работы со строками
5.2 Основные алгоритмы сортировки.
Практические работы:
Реализация сортировки вставками.
Реализация сортировки слиянием.
Реализация быстрой сортировки Хоара.
6.1 Введение в алгоритмы работы со строками.Тема 7. Расширенные методы решения алгоритмических задач
Практические работы:
Реализация алгоритма КМП (Кнута-Морриса-Пратта).
7.1 Обзор расширенных методов решения алгоритмических задач.Тема 1. Основы объектно-ориентированного программирования
1.1 Базовые понятия объектно-ориентированного программирования.Тема 2. Инкапсуляция, наследование и полиморфизм
1.2 Класс и экземпляр класса.
1.3 Атрибуты класса. Атрибуты экземпляра класса.
1.4 Классы «нового типа».
Практические занятия:
Создание простого класса.
Создание экземпляра класса.
Создание класса, использующего различные типы атрибутов.
2.1 Инкапсуляция.Тема 3. Разработка пользовательских Exception’ов
2.2 Наследование.
2.3 Полиморфизм.
2.4 Перегрузка «магических» методов.
Практические занятия:
Написание класса на основе базового класса.
Переопределение методов базового класса.
3.1 Особенности использования исключений.Тема 4. Дополнительные возможности классов
3.2 Объекты исключений. Использование исключений.
Практические занятия:
Работа со встроенными исключениями.
Создание пользовательского класса исключений.
Использование вложенных обработчиков исключений.
4.1 Расширение встроенных типов.
4.2 Декораторы классов.
4.3 Типичные проблемы при работе с классами.
Практические занятия:
Простой декоратор проверки значений позиционных аргументов на вхождение в заданный диапазон.
Применение декораторов к методам.Тема 1. Введение в Django
1.1 Общее представление о WEB.Тема 2. Представления и привязки URL
1.2 Введение в разработку серверной части Web-сайтов.
1.3 Введение в Django.
Практические занятия:
Установка и настройка Django.
Проверка установки.
Запуск сервера.
2.1 Маршрутизация.Тема 3. ORM и работа с базой данных
2.2 Представления.
2.3 Представления-классы.
2.4 Работа с файлами.
Практические занятия:
Создание шаблонов url.
Привязка шаблонов url к функциям-обработчикам.
Работа с представлениями.
3.1 Модели Django.Тема 4. Шаблоны и формы
3.2 Работа с данными.
3.3 Миграции.
Практические занятия:
Создание модели. Подключение и создание базы данных. Использование Django ORM.
Выполнение запросов. Получение объектов из базы данных.
Работа с миграциями.
4.1 Шаблоны Шаблонизатор Django: шаблонные фильтры, наследование шаблонов.Тема 5. Разграничение прав доступа пользователей
4.2 Формы, валидация форм Формы в Django.
Практические занятия:
Работа с шаблонами. Передача данных из приложения в шаблоны.
Использование встроенных фильтров.
Работа с формами. Создание собственных форм.
5.1 Общие вопросы безопасности.
Практические занятия:
Создание пользователей.
Настройка безопасности.Тема 1. Модули Qt для создания приложений с графическим интерфейсом
1.1 Состав Qt.Тема 2. Событийно-ориентированное программирование
1.2 Виджеты и окна.
1.3 Локализация приложения.
Практические занятия:
Знакомство с основными библиотеками.
Создание простого оконного приложения.
Локализация приложения.
Создание исполняемого файла приложения.
2.1 Обработка событий средствами Qt.Тема 3. Базовая компоновка графического приложения
2.2 Взаимодействие элементов управления посредством сигналов/слотов.
2.3 Аппаратно-независимый ввод/вывод.
Практические занятия:
Обработка событий. Реализация пользовательских обработчиков событий: рисования, таймера, изменения размеров, мыши и клавиатуры.
Создание и использование сигналов и слотов.
Рисование двумерной графики средствами Qt.
3.1 Класс QMainWindow.
3.2 QtDesigner.
3.3 Стиль оформления.
3.4 Отладка GUI.
Практические занятия:
Использование всех элементов QMainWindow при разработке программы на Qt.
Создание виджетов с помощью QtDesigner.
Использование QAction, сигналов/слотов.
Использование стилей. Отладка GUI.7.1 Выпускная квалификационная работа
Для просмотра содержимого вам необходимо зарегистрироваться!Для просмотра содержимого вам необходимо зарегистрироваться!
Последнее редактирование модератором:
- Статус
- В этой теме нельзя размещать новые ответы.