Различия между версиями 6 и 7
Версия 6 от 2014-09-24 19:31:14
Размер: 10468
Редактор: FrBrGeorge
Комментарий:
Версия 7 от 2014-09-24 20:43:41
Размер: 10539
Редактор: FrBrGeorge
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 76: Строка 76:
  * [[FrBrGeorge/PythonBenefits|Агитка про Python]], не помню уже зачем написанная, явно для госзаказчика :)   * [[http://vimeo.com/58700558|Видео этого доклада]]
* [[FrBrGeorge/PythonBenefits|Агитка про Python]], не помню уже зачем написанная, явно для госзаказчика :)

Язык программирования Python

  • Лектор: Курячий Георгий Владимирович

  • Время и место проведения: УТОЧНЯЕТСЯ

  • Лицам, не имеющим пропуск на факультет ВМК МГУ, рекомендуется на первую лекцию принести одну матовую фотографию 3×4 и паспортные данные для оформления пропуска.

Экзамен

  • Для сдачи надо заранее (не менее, чем за два дня до экзамена) записаться, написав письмо с темой «Экзамен дата» по адресу <frbrgeorge@gmail.com>. Внимание: от количества записавшихся зависит количество приглашённых экзаменаторов, и, соответственно, сдающих экзамен.

  • О времени и месте проведения экзамена будет объявлено дополнительно.
  • Темы для экзамена (см. также замечание о методах сдачи-приёмки экзамена, материалы по теме курса).

Вступительное слово

В результате обсуждения в списке рассылки в рамках воззвания я принял решение в этом учебном году «взять паузу» по части Linux и спланировать (в идеале — постоянный) спецкурс по языку программирования Python и его применению.

Для меня Python оказался в своё время настоящим открытием. Создавалось ощущение, что Гвидо планировал его по принципу «в других языках неудобно, надо сделать попроще». Основной упор в своей версии курса я постараюсь делать на вот этой простоте.

Несмотря на то, что предполагается изучать Python «с начала», я буду весьма благодарен, если на наших встречах появятся люди, у которых есть что рассказать про особенности, вкусности и прочие интересности языка.

Аннотация

  • Название: Язык программирования Python

  • Title: Python programming language

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

  1. по возможности всесторонне ознакомить слушателей с языком программирования,
  2. предоставить возможность наработки навыков программирования на языке во время решения домашних заданий,
  3. представить эффективные приёмы программирования на Python на примере некоторых инструментально-прикладных компонент,
  4. осветить современные тенденции программирования, нашедшие отражение в структуре языка, в том числе мультипарадигмальный подход при разработке программ.

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

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

Требования к уровню знаний слушателей:

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

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

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

Поскольку объём тем неодинаковый, разбивка на лекции и их именование пока черновые.

  1. Введение: история, основные свойства языка
    • Введение: история, основные свойства языка. Работа в командной строке и её настройка (13). Именование и видимость объектов, функция dir() (6.3). Подсистема помощи.

    • Понятие о счётчике ссылок, стандартных типах данных и свойства python на неформальных примерах (1, 2, 3)

  2. Условный оператор и операторы цикла
    • Решение домашних заданий, использование редактора. Понятие командного сценария (14). Условный оператор; нулевой объект как False; неполное вычисление (5.7). Операторы цикла и клауза else (4).

  3. Функции
    • Определение и свойства функций (4). Утиная типизация.

  4. Структуры данных и их свойства
    • Структуры данных и их свойства, в т. ч. не упомянутые в (5). Выражения-конструкторы.

  5. Модули и пакеты
    • Модули и пакеты (6)

  6. Классы: определение и использование
    • Объектное планирование и объектно-ориентированные ЯП
    • Классы в Python 2 (9)

  7. Классы: динамическая объектная модель
    • Наследование (9)

    • Перегрузка полей
    • Декораторы
  8. Исключения
    • Исключения (8)

    • Оператор with

  9. Итераторы и генераторы
    • Итераторы и генераторы (9.9 и далее)

  10. Стандартные модули
    • Стандартные модули (несколько примеров из 10 и 11) — /!\ Каких?

Материалы

Ссылки

Наработки FrBrGeorge:

--- CategoryLectures

LecturesCMC/PythonIntro2014 (последним исправлял пользователь PavelSutyrin 2015-01-22 23:37:16)