Таня Шлюссер - Автостопом по Python
- Название:Автостопом по Python
- Автор:
- Жанр:
- Издательство:Питер
- Год:2017
- Город:СПб.
- ISBN:978-5-496-03023-6
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Таня Шлюссер - Автостопом по Python краткое содержание
и содержит наработки многочисленных профессионалов и энтузиастов, знающих, что такое Python, и чего вы от него хотите. Проверенные методы и новейшие приемы, собранные в этой книге, помогут вам стать профессиональным Python-программистом и во всеоружии встретить наступающую эпоху Python 3.
Автостопом по Python - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
• Anaconda от Continuum Analytics. Дистрибутив Python от Continuum Analytics ( https://www.continuum.io/downloads) выпущен под лицензией BSD и предоставляет множество заранее скомпилированных научных и математических бинарных файлов в своем каталоге бесплатных пакетов ( https://repo.continuum.io/pkgs/). Он использует не pip, а другой менеджер пакетов (conda), который также управляет виртуальными средами, но действует скорее как Buildout (рассматривается в подразделе «Buildout» раздела «Инструменты изоляции» главы 3), а не как virtualenv (управляет библиотеками и другими внешними зависимостями для пользователя). Форматы пакетов несовместимы, поэтому вы не сможете вызвать один установщик из каталога пакетов другого.
Дистрибутив Anaconda поставляется со стеком SciPy и другими инструментами. Anaconda имеет отличную лицензию и максимум бесплатной функциональности. Если вам комфортно работать с командной строкой и нравится R или Scala (идут в комплекте), то лучше выбрать коммерческий дистрибутив. Если подобная функциональность не требуется, используйте вместо него miniconda ( http://conda.pydata.org/miniconda.html). Пользователи получают разнообразные компенсации (связанные с лицензией на ПО с открытым исходным кодом, а также проясняющие, кто, чем и когда может пользоваться и на кого и в каких случаях подадут в суд), коммерческую поддержку и дополнительные библиотеки Python.
• ActivePython от ActiveState. Дистрибутив от ActiveState ( http://www.activestate.com/downloads) выпущен под лицензией ActiveState Community License и бесплатен только во время пробного периода, потом понадобится лицензия. ActiveState предоставляет решения для Perl и Tcl. Основной плюс этого дистрибутива — его широкие возможности по выплате компенсаций (связанных с лицензией на ПО с открытым исходным кодом) для более чем 7000 пакетов, расположенных в его каталоге пакетов ( https://code.activestate.com/pypm/) (их можно получить с помощью инструмента pypm, заменяющего pip).
• Canopy от Enthought. Дистрибутив от Enthought ( https://store.enthought.com/downloads/) выпущен под лицензией Canopy Software License, включает в себя менеджер пакетов enpkg, который используется вместо pip для связи с каталогом пакетов Canopy ( http://bit.ly/enthought-canopy).
Enthought предоставляет бесплатные академические лицензии студентам и работникам учреждений образования. Отличительными особенностями дистрибутива от Enthought являются графические инструменты для взаимодействия с Python, которые включают собственную IDE, напоминающую MATLAB, а также графический менеджер пакетов, графический отладчик и графический инструмент для взаимодействия с данными. Как и у других коммерческих дистрибутивов, в нем предусмотрены механизм возмещения ущерба и коммерческая поддержка, а также дополнительные пакеты для покупателей.
Глава 3. Ваша среда разработки
В этой главе приведен обзор текстовых редакторов, интегрированных сред разработки и других инструментов разработки, популярных в настоящий момент.
Мы предпочитаем использовать Sublime Text в качестве редактора и PyCharm/IntelliJ IDEA (оба рассматриваются в следующем разделе) в качестве IDE, но при этом понимаем, что лучший вариант зависит от решаемых вами задач и используемых языков программирования. В этой главе перечислены самые популярные приложения и их достоинства/недостатки.
Для Python не нужны инструменты сборки вроде Make, Java’s Ant или Maven, поскольку это интерпретируемый, а не компилируемый язык [23] Если вам понадобится создавать расширения для Python с помощью языка C, обратитесь к статье «Расширяем Python с помощью C или C++» ( https://docs.python.org/3/extending/extending.html ). Для получения более подробной информации см. главу 15 книги «Python Cookbook» ( http://bit.ly/python-cookbook ).
, поэтому мы не будем рассматривать эти вопросы. Но в главе 6 опишем, как использовать Setuptools для упаковки проектов и Sphinx для сборки документации.
Мы также не будем рассматривать системы контроля версий, поскольку они не зависят от языка, но программисты, которые поддерживают реализацию Python, написанную на C (ссылочную), не так уж давно перешли с Mercurial на Git (см. PEP 512 ( https://www.python.org/dev/peps/pep-0512/)). Оригинальное обоснование использования Mercurial в PEP 374 ( https://www.python.org/dev/peps/pep-0374/) небольшое, зато представлено сравнение четырех вариантов, популярных в настоящее время: Subversion, Bazaar, Git и Mercurial.
Завершается глава кратким обзором современных способов управления интерпретаторами для воссоздания разных ситуаций, которые могут возникнуть при развертывании, на этапе кодирования.
Текстовые редакторы
Для написания кода Python подойдет любая программа, которая позволяет редактировать текст, однако выбор правильного редактора сэкономит вам несколько часов в неделю. Все текстовые редакторы, перечисленные в этом разделе, поддерживают подсветку синтаксиса и могут быть расширены с помощью надстроек таким образом, чтобы выполнять статическую проверку кода (с помощью средств контроля качества кода) и делать отладку.
В табл. 3.1 перечислены текстовые редакторы, которые нам нравятся (по убыванию предпочтения), и объясняется, почему разработчику следует выбрать именно этот редактор. Далее в главе кратко рассматривается каждый из них. В «Википедии» по адресу https://en.wikipedia.org/wiki/Comparison_of_text_editorsприведена таблица, в которой детально сравниваются текстовые редакторы (поможет тем, кто ищет определенную функциональность).
Инструмент | Доступность | Причина использовать |
---|---|---|
Sublime Text | Открытый API / бесплатный пробный период. OS X, Linux, Windows | Быстро работает и задействует небольшой объем памяти. Способен работать с крупными файлами (> 2 Гбайт). Расширения написаны на Python |
Vim | ПО с открытым исходным кодом / можно вносить пожертвования. OS X, Linux, Windows, Unix | Вам нравится Vi/Vim. Предустановлен (во всяком случае Vi) на каждой ОС кроме Windows. Может быть консольным приложением |
Emacs | ПО с открытым исходным кодом / можно вносить пожертвования. OS X, Linux, Windows, Unix | Вам нравится Emacs. Расширения написаны на Lisp. Может быть консольным приложением |
TextMate | ПО с открытым исходным кодом / нужна лицензия. Только для OS X | Отличный пользовательский интерфейс. Практически все интерфейсы (статическая проверка кода/отладка/тестирование) предустановлены. Хорошие инструменты от Apple, например интерфейс для xcodebuild (его можно найти в Xcode bundle) |
Atom | ПО с открытым исходным кодом / бесплатный. OS X, Linux, Windows | Расширения написаны на JavaScript/HTML/CSS. Хорошая интеграция с GitHub |
Code | Открытый API (в будущем)/бесплатный. OS X, Linux, Windows (но Visual Studio, соответствующая IDE, работает только в Windows) | IntelliSense (автозаполнение кода), предоставляемое VisualStudio. Хорошо подходит для разработчиков на Windows, поскольку поддерживает. Net, C# и F#. Примечание. Имеется недостаток: пока нельзя расширять (в будущем будет исправлен) |
Sublime Text
Интервал:
Закладка: