Разработка прикладных программ на языке программирования Python

Материалы

Тема

Лектор

Запись
(скачать все)

0

Введение в разработку. Использование VCS

Георгий Курячий

смотреть

1

Событийное программирование и PyGame

Георгий Курячий

смотреть

2

Веб-программирование и Django

Павел Сутырин

смотреть

3

Интерпретатор командной строки

Георгий Курячий

смотреть

4

Научное программирование и Sage

Павел Сутырин

смотреть

5

Интерфейс между Python и C

Георгий Курячий

смотреть

6

Совместная разработка

Георгий Курячий

смотреть

7

Проектирование

Павел Сутырин

смотреть

8

Стиль программирования, комментарии и документирование

Георгий Курячий

смотреть

9

Тестирование

Павел Сутырин

смотреть

10

Интернационализация и локализация

Георгий Курячий

смотреть

11

Пакетирование и деплоймент

Георгий Курячий

смотреть

Экзамен

Аннотация

Язык программирования Python — объектно-ориентированный ЯП, сочетающий в себе простоту начального освоения, наличие современных конструкций и приёмов программирования, богатую инструментально-прикладную поддержку и огромное поле практического применения во всех отраслях знания, включая естественные и гуманитарные науки.

Цель данного курса — сформировать у слушателей комплекс знаний, умений и навыков, необходимых для самостоятельной разработки произвольного прикладного программного обеспечения на языке программирования Python. Для этого необходимо решить три задачи:

  1. познакомить с несколькими различными инструментальными библиотеками для Python и способами разработки ПО с их помощью;
  2. дать возможность ориентироваться в информационном пространстве инструментальных средств Python, выбирать и использовать инструменты в соответствие с решаемой задачей;
  3. дать представление о жизненном цикле разработки ПО и его особенностях в Python.

В процессе изучения предполагается самостоятельная практическая работа.

По окончанию курса планируется защита учебной работы, выполенной индивидуально или в составе группы (в этом случае оценивается вклад).

Требования к уровню знаний слушателей: знание ЯП Python и навыки программирования на этом языке в объёме курса «Язык программирования Python» (ВМК МГУ, осень 2014 г.)

Ссылки

Тематический план курса

Примерный план:

  1. Использование git/Github, обязательная регистрация
  2. Инструмент: GUI (PyQt /!\ ?)

    • создание и публикация репозитория с решением Д/З
  3. Инструмент: Web (WebPy /!\ ?)

    • создание и публикация репозитория с решением Д/З
  4. Инструмент: Математическое окружение (Sage /!\ ?)

    • создание и публикация репозитория с решением Д/З
  5. Инструмент: Мультимедиа (PyGame)

    • создание и публикация репозитория с решением Д/З
  6. Инструмент: Системное программирование

    • создание и публикация репозитория с решением Д/З
  7. Принципы совместной разработки (включая teamlead), примеры учебных проектов; контроль качества кода (pylint) как требование
    • должны быть готовы учебные проектные планы (достаточно простые, чтобы быть реализованными!)

    • объединение участников в team-ы, выбор проектного плана, публикация пустого team-репозитория (с несколькими коммитами каждого из team)
    • консультации team по выбранным инструментальным направлениям
  8. Принципы объектного проектирования
    • подтверждение проектных планом team-ами
    • начало программирования собственно проекта
    • консультации по инструментальным направлениям
  9. Тестирование
    • продолжение реализации проекта
    • оснащение проекта тестами
    • консультации team по выбранным инструментальным направлениям
  10. Документирование
    • продолжение реализации проекта
    • оснащение проекта технической документацией
    • консультации team по выбранным инструментальным направлениям
  11. Локализация и интернационализация
    • продолжение реализации проекта
    • оснащение проекта переводом на русский
    • консультации team по выбранным инструментальным направлениям
  12. Пакетирование и деплоймент
    • окончание программирования проекта
    • создание финальной версии (setuptools?)


CategoryLectures

LecturesCMC/PythonDevelopment2015 (last edited 2015-05-16 01:23:18 by PavelSutyrin)