Различия между версиями 5 и 6
Версия 5 от 2021-02-15 18:28:08
Размер: 6856
Редактор: FrBrGeorge
Комментарий:
Версия 6 от 2021-02-15 18:45:14
Размер: 6909
Редактор: FrBrGeorge
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 50: Строка 50:
Недостаток «больших» IDE в плане обучения: Особенности «больших» IDE в плане обучения:
Строка 52: Строка 52:
 * Готовая преднастройка того, в чём планируется разобраться  * Готовая преднастройка того, в чём планируется разобраться в этом курсе (⇒ кнопки вместо процесса)
Строка 56: Строка 56:
 * !PyCharm, !WingIDE, !VSCode
 * [[https://www.spyder-ide.org|Spyder]], [[https://github.com/pyscripter/pyscripter|PyScripter]]
 * !PyCharm, !WingIDE, !VSCode, …
 * [[https://www.spyder-ide.org|Spyder]], [[https://thonny.org|Thonny]]

Python и открытая разработка

  • (повторение) Свободное лицензирование и Python
  • Открытая разработка:
    • Низкий порог входа-выхода
    • Произвольная мотивация
    • Динамическая профессиональная иерархия
    • Свободное распространение как условие развития
    • Распределённая совместная разработка
    • Информационное пространство (документация/взаимодействие)

Сообщество Python и разработка

  • Сам Python:
    • PEP-ы

      • Примеры: (разные), pep-635 и его товарищи

      • Гвидо
      • pep-0572 — формальная причина «выхода на пенсию» (письмо)

      • ⇒ комитет по принятию
  • Python Package Index

    • 2021-02-10: 288,767 projects, 2,378,715 releases, 3,869,692 files, 484,667 users

      • Несколько сотен несвободных проектов, остальные — свободные

    • Python Packaging User Guide

    • https://readthedocs.org — документация

    • (никто не мешает использовать GH или вообще что угодно)
    • История с pip search (баг, картинка)

  • Python Packaging Authority

    • См. выше про packaging
    • Разработка стандартов (egg, wheel)
    • Поддержка утилит (pip, setuptools, venv, pipenv)

О разработке

  • Структура каталогов с Python и системными модулями
  • Linux: пользовательские модули в ~/.local/lib/python3

  • pip

    • Куда приезжают .py и запускаемые файлы
    • {i} Установка модуля pyfiglet

  • venv

    • раздельные yнаборы модулей
    • только манипуляция $PATH, никакой изоляции/виртуализации

    • стандартные именования (python вместо python3 и т. п.)
    • . bin/activate

    • deactivate

  • Pipenv (если успеем)

Об IDE

Особенности «больших» IDE в плане обучения:

  • Ориентация на тех, кто уже понимает процесс разработки

  • Готовая преднастройка того, в чём планируется разобраться в этом курсе (⇒ кнопки вместо процесса)
  • Эффективно при большом объёме работ

Тем не менее:

  • PyCharm, !WingIDE, !VSCode, …

  • Spyder, Thonny

  • Geany и просто UI-специфичные редакторы с поддержкой языка, например Kate

  • IDLE — часть дистрибутива Python

  • командная строка, iPython, bPython и т. д.

Д/З

  • Зарегистрировать публичный репозиторий (SourceHut, GitHub, GitLab, где угодно)

  • Установить и научиться пользоваться командной строкой git в объёме
  • Для windows рекомендуется официальый клиент, в состав которого входит unix-подобная командная строка — для совместимости с лекциями

LecturesCMC/PythonDevelopment2021/00_OpenDevelopment (последним исправлял пользователь FrBrGeorge 2021-02-15 18:45:14)