Меню Закрыть

Среда разработки python для linux

Содержание

Писать на Python, используя IDLE или Python Shell, вполне удобно, если речь идёт о простых вещах, однако с ростом размеров проектов программирование превращается в мучение. С помощью IDE или даже хорошего редактора кода можно значительно упростить себе жизнь. Но вот вопрос — что выбрать?

В этой статье мы пройдёмся по основным инструментам, позволяющим писать на Python. Мы не выберем за вас лучший вариант, но рассмотрим «за» и «против» каждого и поможем сделать взвешенное решение.

Что такое IDE и редактор кода?

IDE (или интегрированная среда разработки) — это программа, предназначенная для разработки программного обеспечения. Как следует из названия, IDE объединяет несколько инструментов, специально предназначенных для разработки. Эти инструменты обычно включают редактор, предназначенный для работы с кодом (например, подсветка синтаксиса и автодополнение); инструменты сборки, выполнения и отладки; и определённую форму системы управления версиями.

Большинство IDE поддерживают множество языков программирования и имеют много функций, из-за чего могут быть большими, занимать много времени для загрузки и установки и требуют глубоких знаний для правильного использования.

«КРОК», Москва, от 100 000 до 250 000 ₽

С другой стороны, есть редакторы кода, которые представляют собой текстовый редактор с подсветкой синтаксиса и возможностями форматирования кода. Большинство хороших редакторов кода могут выполнять код и использовать отладчик, а лучшие даже могут взаимодействовать с системами управления версиями. По сравнению с IDE, хороший редактор кода, как правило, легковесней и быстрее, но зачастую ценой меньшей функциональности.

Требования для хорошей среды разработки

Итак, что нам нужно от среды разработки? Набор функций разных сред может отличаться, но есть набор базовых вещей, упрощающих программирование:

  • Сохранение файлов. Если IDE или редактор не дают вам возможности сохранить работу и позже всё открыть в том же состоянии, в котором оно было во время закрытия, то не такая уж это и IDE;
  • Запуск кода из среды. То же самое, если вам нужно выйти из среды для запуска кода, то это не более, чем простой текстовый редактор;
  • Поддержка отладки. Возможность пошагово выполнить код является базовой функцией всех IDE и большинства хороших редакторов кода;
  • Подсветка синтаксиса. Возможность быстро найти ключевые слова, переменные и прочее делает чтение и понимание кода на порядок проще;
  • Автоматическое форматирование кода. Любой редактор или IDE, который действительно таковым является, распознает двоеточие после while или for выражения и автоматически сделает отступ на следующей строке.

Разумеется, есть множество других функций, от которых вы бы не отказались, но приведённые выше — основные функции, которыми должна обладать хорошая среда разработки.

А теперь давайте взглянем на некоторые инструменты общего назначения, которые можно использовать для разработки на Python.

Редакторы и IDE с поддержкой Python

Eclipse + PyDev

Если вы близки с open-source сообществом, то вы наверняка слышали об Eclipse. Будучи доступным для Linux, Windows и OS X, Eclipse де-факто является open-source IDE для разработки на Java. Существует множество расширений и аддонов, которые делают Eclipse полезным для разного рода задач.

Одним из таких расширений является PyDev, предоставляющий интерактивную консоль Python и возможности для отладки и автодополнения кода. Установить его просто: запустите Eclipse, выберите Help → Eclipse Marketplace, затем найдите PyDev. Нажмите «Install» и при необходимости перезапустите Eclipse.

Преимущества: если у вас уже был установлен Eclipse, то установка PyDev пройдёт быстро и гладко. У опытного пользователя Eclipse не возникнет проблем с изучением этого расширения.

Недостатки: если вы только начинаете изучать Python или разработку в целом, Eclipse может стать непосильной ношей. Помните, мы говорили, что IDE большие и требуют больше опыта для полноценного использования? Всё это можно сказать об Eclipse.

Sublime Text

Sublime Text, написанный инженером из Google с мечтой о лучшем текстовом редакторе, является весьма популярным редактором кода. Доступный на всех платформах, Sublime Text имеет встроенную поддержку редактирования Python-кода, а также богатый набор расширений, называемых пакетами, которые расширяют возможности синтаксиса и редактирования.

Установить дополнительный Python-пакет может быть непросто — все пакеты Sublime Text написаны на Python, поэтому для установки пакетов сообщества зачастую может потребоваться выполнить Python-скрипт непосредственно в редакторе.

Преимущества:у Sublime Text большое количество поклонников. Как редактор кода, Sublime Text быстрый, лёгкий и имеет хорошую поддержку.

Недостатки: Sublime Text не является бесплатным, хотя вы можете использовать пробный период сколько угодно. Установка расширений может превратиться в тот ещё квест. Кроме того, в редакторе нет поддержки отладки и запуска кода.

Доступный на всех платформах Atom называют «хакабельным текстовым редактором 21 века». Atom написан с использованием Electron — фреймворка для создания кроссплатформенных приложений для десктопа средствами JavaScript, HTML и CSS — и имеет множество расширений. Поддержку Python можно также можно подключить с помощью расширения, которое можно установить прямо в Atom.

Преимущества: поддержка на всех платформах благодаря Electron. Atom лёгкий и быстро скачивается и загружается.

Недостатки: поддержка сборки и отладки не встроенная, а добавляется с помощью расширений. Поскольку Atom написан с помощью Electron, он всегда работает как JavaScript-процесс, а не как нативное приложение.

GNU Emacs

Задолго до войны iPhone с Android, до войны Linux с Windows, даже до войны PC с Mac была война редакторов с GNU Emacs в качестве одного из участников военных действий. Описываемый как «расширяемый, настраиваемый, самодокументированный текстовый редактор», GNU Emacs существует почти столь же долго, сколько и UNIX, и успел завоевать немало поклонников.

Доступный бесплатно на каждой платформе (в той или иной форме) GNU Emacs использует язык Lisp для кастомизации. Само собой, для Python тоже найдутся скрипты кастомизации.

Преимущества: вы знакомы с Emacs, вы используете Emacs, вы любите Emacs. Lisp — ваш второй язык, и вы знаете, что с ним вы способны на всё.

Читайте также:  Датчик пенообразования samsung где находится

Недостатки: кастомизация подразумевает написание (или копипасту) Lisp-кода в различные скрипты. Если таковых не имеется, то вам, возможно, придётся изучить Lisp, чтобы со всем разобраться.

Vi / Vim

По другую сторону баррикад в войне редакторов находится VI/VIM. Доступный по умолчанию на почти каждой UNIX-системе и Mac OS X, VI завоевал не меньшее количество поклонников. VI и VIM — модальные редакторы, которые отделяют просмотр файла от его редактирования. VIM включает в себя всё, что есть в VI, плюс некоторые усовершенствования вроде доступности расширений. Для разного рода Python-задач можно воспользоваться VIMScripts.

Преимущества: вы знакомы с VI, вы используете VI, вы любите VI. VIMScripts вас не пугают, и вы знаете, как подчинить их своей воле.

Недостатки: как и в случае с Emacs, вам не очень удобно искать или писать скрипты для добавления возможности разработки под Python, и вы не имеете ни малейшего понятия, как вообще должен работать модальный редактор.

Visual Studio

Тип: IDE
Сайт: https://www.visualstudio.com/vs/
Python-расширение: Python Tools for Visual Studio, aka PTVS

Visual Studio — полнофункциональная IDE от Microsoft, которая во многом сопоставима с Eclipse. Доступная на Windows и Mac OS, Visual Studio представлена как в бесплатном (Community), так и в платном (Professional и Enterprise) вариантах. Visual Studio позволяет разрабатывать приложения для разных платформ и предоставляет свой собственный набор расширений.

Python Tools for Visual Studio (PTVS) позволяет писать на Python в Visual Studio и включает в себя Intellisense для Python, отладку и другие инструменты.

Преимущества: как и в случае с Eclipse, если у вас уже установлена Visual Studio для других задач, установка PTVS пройдёт без проблем.

Недостатки: как и в случае с Eclipse, Visual Studio будет многовато, если вам нужен только Python. Кроме того, если вы пользуетесь Linux, то вы в пролёте — Visual Studio для этой платформы нет.

Visual Studio Code

Visual Studio Code (не путать с Visual Studio) — полнофункциональный редактор кода, доступный на Windows, Linux и Mac OS X. VS Code является расширяемым open-source редактором, который можно настроить под любую задачу. Как и Atom, VS Code построен на Electron, поэтому у него есть те же преимущества и недостатки.

Добавить поддержку Python в VS Code проще простого — выполните поиск по запросу «Python» в Marketplace, нажмите «Install» и перезапустите редактор, если потребуется. VS Code автоматически определит интерпретатор Python и установленные библиотеки.

Преимущества: благодаря Electron, VS Code доступен на всех платформах с удивительно большой функциональностью. Кроме того, исходники можно найти в открытом доступе.

Недостатки: раз замешан Electron, значит VS Code не нативное приложение. Кроме того, некоторым людям религия не позволяет пользоваться продуктами Microsoft.

Редакторы и IDE, разработанные для Python

PyCharm

Одной из лучших полнофункциональных IDE, предназначенных именно для Python, является PyCharm. Существует как бесплатный open-source (Community), так и платный (Professional) варианты IDE. PyCharm доступен на Windows, Mac OS X и Linux.

PyCharm «из коробки» поддерживает разработку на Python напрямую — откройте новый файл и начинайте писать код. Вы можете запускать и отлаживать код прямо из PyCharm. Кроме того, в IDE есть поддержка проектов и системы управления версиями.

Преимущества: это среда разработки для Python с поддержкой всего и вся и хорошим коммьюнити. В ней «из коробки» можно редактировать, запускать и отлаживать Python-код.

Недостатки: PyCharm может медленно загружаться, а настройки по умолчанию, возможно, придётся подкорректировать для существующих проектов.

Spyder

Spyder — open-source IDE для Python, оптимизированная для data science. Spyder идёт в комплекте с менеджером пакетов Anaconda, поэтому вполне возможно, что он у вас уже установлен.

Что в Spyder интересно, так это то, что его целевой аудиторией являются data scientist’ы, использующие Python. Например, Spyder хорошо взаимодействует с такими библиотеками для data science, как SciPy, NumPy и Matplotlib.

Spyder обладает той функциональностью, которую вы можете ожидать от стандартной IDE, вроде редактора кода с подсветкой синтаксиса, автодополнения кода и даже встроенного обозревателя документации.

Отличительной особенностью Spyder является наличие проводника переменных. Он позволяет просмотреть значения переменных в форме таблицы прямо внутри IDE. Также хорошо работает интеграция с IPython/Jupyter.

Про Spyder можно сказать, что он более «приземлённый», чем другие IDE. Его можно рассматривать как инструмент для определённой цели, а не как основную среду разработки. Что в нём хорошо, так это, что он бесплатный, open-source и доступный на Windows, macOS и Linux.

Преимущества: вы data scientist, который пользуется Anaconda.

Недостатки: более опытные разработчики на Python могут найти Spyder недостаточно функциональным для повседневной работы и сделают свой выбор в пользу более функциональной IDE или редактора.

Thonny

Thonny называют IDE для новичков. Написанный и поддерживаемый Институтом информатики Тартуского университета в Эстонии, Thonny доступен на всех основных платформах.

По умолчанию Tonny устанавливается с версией Python, идущей в комплекте, поэтому вам не понадобится устанавливать ещё что-нибудь. Продвинутым пользователям, возможно, придётся изменить эту настройку, чтобы IDE нашла и использовала уже установленные библиотеки.

Преимущества: вы начинающий Python-программист и вам нужна IDE, с которой можно сразу идти в бой.

Недостатки: продвинутым пользователям будет недостаточно функциональности, а встроенный интерпретатор они заменят. Кроме того, учитывая новизну IDE, могут возникнуть проблемы, решения которых на данный момент нет.

Так что из этого выбрать?

Решать только вам, но вот пара рекомендаций:

  • Начинающим питонистам следует взять что-то с наименьшими возможностями кастомизации. Чем меньше препятствий, тем лучше;
  • Если вы уже пользуетесь каким-нибудь редактором для других задач, то посмотрите в сторону редакторов кода;
  • Ну а если у вас уже стоит IDE для другого языка, то попробуйте добавить в неё поддержку Python.

Интересуетесь ещё и вебом? Тогда загляните в нашу аналогичную подборку IDE для веб-разработки.

Python очень популярный язык программирования. Благодаря открытому исходному коду и использованию в качестве скриптового языка, языка веб программирования, мобильных и настольных приложений. Все это возможно благодаря безграничным опциям модулей Python. При написании кода в Python, интегрирования модулей и библиотек для построения больших систем, текстового редактора недостаточно, нам нужна хорошо интегрированная среда разработки для этих целей. Мы провели небольшое исследование и составили следующий список лучших IDE для Python (начиная с лучшего):

Читайте также:  Яндекс погода расширение для опера

PyCharm

  • Создатель JetBrains
  • Закрытый исходник
  • Поддержка Windows, MacOS и Linux

Разработан под Python, Javascript, Coffeescript, Typescript, HTML/CSS, AngularJS, Node.js и другие языки. Возможности интегрированного модульного тестирования, проверки кода, интегрированного контроля версий, инструменты рефакторинга кода, набор инструментов для навигации проекта, выделения и автоматического завершения. Поддержка ряда сторонних фреймворков для веб-разработки, таких как Django, Pyramid, web2py, Google App Engine и Flask, что делает его универсальной IDE для быстрой разработки приложений.

PyDev

  • Плагин Python для Eclipse
  • Поддерживается всеми известными операционными системами
  • Источники в свободном доступе по публичной лицензии Eclipse
  • Обработка доработки кода, интеграция отладки Python, добавление токен-браузера, инструменты рефакторинга и многое другое
  • Возможность создания новых проектов Django, выполнение команд Django при помочи горячих клавиш и использование отдельной конфигурации запуска только для Django.

WingWare

  • Отличный IDE, разработанный WingWare
  • Поддержка Windows, Linux и MacOS
  • Это закрытый исходник

Содержит мощный инструмент отладки, который позволяет устанавливать контрольные точки, возможность пошагового выполнения кода, проверка данных, удаленная отладка и отладка шаблонов Django. Поддержка matplotlib, с автоматическим обновлением графиков. Также предоставляется доработка кода, подсветка синтаксиса, исходный браузер, графический отладчик и поддержка систем управления версиями.

Komodo IDE

  • IDE для динамических языков, таких как Python, PHP и RUBY
  • Поддержка Windows, MacOS и Linux
  • Закрытый исходник с собственной лицензией

Поддержка Django: подсветка синтаксиса и завершение кода для шаблонов (кстати, я так и не столкнулся с ситуацией, где это было бы применимо). Содержит базовые функции, такие как рефакторинг кода, автозаполнение, calltips, сопоставление скобок, браузер кода, переход к определению, графическая отладка, многопроцессная отладка, многопоточная отладка, конфигурация точки остановки, профилирование кода, интеграция с тестируемым юнитом и интеграция со сторонними библиотеками, такими как pyWin32. Также в наличии такие функции как интеграция менеджера пакетов, отслеживание изменений, инструмент просмотра заметок, быстрые закладки, переход ко всему (Commando) и многое другое.

  • IDE и по совместительству редактор Python от Detlev Offenbach.
  • С открытым кодом
  • Поддержка Windows

Содержит такие функции как отладчик Python и Ruby, покрытие кода, автоматическая проверка кода, оболочка Python и Ruby, браузер класса и многое другое. Также имеются функции для совместного редактирования. Диалоги Regex и Qt, опции для создания сторонних приложений прямо в редакторе, диаграммы приложения, возможности управления проектами, а также интерактивная оболочка Python. Многоязычный пользовательский интерфейс, который включает в себя Английский, Немецкий, Русский, Французский, Испанский, Итальянский, Турецкий и Китайский языки, контроль версии для Subversion, Mercurial и Git, использование объявлений в плагинах, и многое другое.

Eclipse

  • Платформа общего назначения
  • Поддержка всеми операционными системами
  • Открытый код и поддержка всех ведомых языков
  • Великое множество плагинов

Geany

  • Доступно по лицензии GPL
  • Поддержка Linux, Windows и OSX
  • Поддержка сопоставления скобок, встроенный отладчик, автозаполнение и поддержка нескольких языков
  • Плагин поддержки

Spyder

  • IDE с открытым кодом для Python
  • Находится в свободном доступе под лицензией MIT

Содержит такие функции как многоязычный редактор, интерактивная консоль, просмотр документации, обозреватель переменных, поисковик файлов, поисковик в файлах, и многое другое. Хотя Spyder и является автономным IDE, который поддерживается множеством платформ, такими как Windows, Linux, Mac Os, Mac OS X, он также может быть использован в качестве библиотеки расширения PyQt и может быть встроен в приложения PyQt5.

PyScripter

  • Находящийся в свободном доступе бесплатный IDE для Python, разработанный Kiriakos Vlahos.
  • Поддержка Windows
  • Поддержка проектов, редактирования файлов и отладки
  • Различные инструменты редактирования
  • Утилиты исходного кода Python

Python-IDLE

Часть стандартной библиотеки Python.
Весьма полезно при работе с небольшими фрагментами Python и экспериментами с различными функциями в Python.

От автора: для продвинутого разработчика, Linux-системы всегда роднее «окон» и «яблок», ведь они более свободные, доступные для полноценного администрирования, а все неудобные моменты можно персонализировать под свой стиль работы. В то же время, ассортимент программного обеспечения для них не так широк, как для коммерческих операционных систем. В особенности это касается интегрированных сред разработки. Сегодня мы рассмотрим Ubuntu Python IDE, которые подходят для программирования на Python. Мы покажем, что для линуксоидов тоже есть неограниченный выбор.

Почему Ubuntu?

Это открытая операционная система, которая разрабатывается и поддерживается компанией Canonical. Она разработана на основе монолитного ядра Linux и интуитивно понятного интерфейса GNOME, который впоследствии был заменен на Unity. Правда современная версия Ubuntu снова выпущена на GNOME, и так Canonical намерены поступать впоследствии.

Интерфейс имеет высокую ценность для разработчика в вебе. Он не пишет конкретную функцию или элемент программы. Как правило, веб-разработка — это создание конкретного продукта, который нужно видеть целиком, как его видит заказчик. Угнаться за всем этим у Canonical не получилось, и единая оболочка для всех Linux больше не будет украшать Ubuntu.

В период, пока Ubuntu не был под GNOME, он был менее интересен для веб-разработчиков, разве что как операционная система для сервера. Потому, обычные пользователи скорее устанавливали себе Mint – такой же бесплатный, но более легкий. На Ubuntu всё работало медленнее, чем на других операционных системах, но с приходом новых версий, он снова стал легким и востребованным для разработчика. А недочеты, вроде использования шрифтов True Type, легко исправляются установкой виртуальных машин.

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

Читайте также:  Рубли перевести в тыс руб

Как правило, программисты выбирают Ubuntu для Python и веб-разработки в целом из-за нескольких факторов:

она бесплатна. Cреди западных разработчиков, использование пиратского ПО – исключено. Отчасти, это из-за правосознания, отчасти – из-за действий правоохранительных органов, которые штрафуют компании и частных разработчиков за нелегальное программное обеспечение. Да и в странах СНГ уже не найдешь крупную компанию, с взломанной операционной системой.

серверное администрирование. Как только приложение или сайт будет выпущено в сеть, необходима его поддержка. И ни одна ОС не справляется с этой задачей лучше, чем Ubuntu-дистрибутивы. Кстати, некоторые из них даже лишены рабочего стола, для быстрого доступа к задачам.

удобство в использовании. Среди всех операционных систем на ядре Linux, Ubuntu является одной из наиболее дружественных к пользователю. А если учесть, что веб-разработка это не сплошной кодинг, а и дизайнерская работа, то без хорошего интерфейса здесь не обойтись.

В поиске среды разработки

О IDE уже сказано много – это универсальный инструмент, как для создания веб-продуктов, так и программного обеспечения для устройств. С некоторыми из них вы уже знакомы. Например, Visual Studio – одна из самых распространённых в мире IDE. Но наша задача подобрать среду разработки, которая будет хороша для программирования на Python и «прямо» устанавливается на Ubuntu.

Пока круг слишком широк, чтобы начать наш топ-рейт. Существует масса IDE, которые являются кроссплатформенными и поддерживают синтаксис разных языков, в том числе Python, который набирает популярность. Нам нужен тот, который идеален для питона и не имеет конфликтов с операционной системой Ubuntu: быстродействие и стабильность на уровне Windows, или лучше.

Также, хорошая IDE должна уметь запустить код непосредственно со своего интерфейса. Если она не будет этого уметь, тогда лучше установить лёгкий, непривередливый Sublime Text и забыть о среде разработки. Но в случае, когда комфорт и скорость действительно важны, запуск написанного является определяющим фактором.

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

Хорошая IDE для Python, также должна уметь находить «кривые» участки кода и, хотя бы подсвечивать их. Намного лучше, когда она умеет исправлять их на лету. Так поступает IDEA с кодом на Java. Теперь нам предстоит выбрать что-то подобное и для питона.

Ну и финальным фактором станет цена за использование IDE. Приоритетным является бесплатное программное обеспечение. Не стоит разбирать целый список сред разработки, если они стоят больших денег и вы даже не станете испытывать это ПО. Как минимум, у IDE должен быть free edition либо бесплатный пробный период.

Начало хит-парада

Итак, мы собрали три среды разработки, которые должны решить проблемы Python-разработчика, работающего на Ubuntu. Он не желает мирится с тем, что толковое программное обеспечение необходимо запускать через Wine.

Это одна из тех IDE, с которой начинают программирования на Python. Формально, она соответствует всем нашим требованиям. На Ubuntu любая среда разработки будет запущена без проблем, как и на остальных платформах семейства Linux. В то же время, трудно найти ту, которая лучше бы подходила для Python – для него среда и была создана.

IDLE – это среда разработки, ориентированная на обучение Python. Ее интерфейс интуитивно понятен, все предельно просто, а программы без труда запускаются прямо из IDE. В то же время, IDLE – объект шуток среди разработчиков. Даже сами создатели, скорее всего, подшутили над своим проектом. Ведь idle переводится как «нерабочий», «бесполезный», «праздный» и прочие слова, подразумевающие разную степень непригодности.

Да, IDLE не безупречный выбор. Тем не менее, его активно используют разработчики по всему миру. Особенно это касается продуктов для веба – они не так объемны, как создание программного обеспечения, и IDLE справляется со своими задачами. К тому же, опытный программист знает, сколько скрытых функций таит в себе эта среда разработки. К примеру, она сама может помочь в расстановке синтаксических элементов и отступов, если правильно обращаться с текстовым полем.

Если вы юзер Ubuntu, значит в меру любите две вещи: бесплатное программное обеспечение и настраиваемые системы. Если да, значит Eric удовлетворит ваши требования. Ведь он, по сути, является шаблоном IDE с инструментами для персонализации.

Это среда разработки с гораздо более широким функционалом, чем IDLE. Так же, как и предыдущая IDE, создана исключительно для кодинга на Python. Но что еще более важно – написанная на языке, с которым предстоит работать разработчику. Все, что не нравится, может убрать сам пользователь, как и добавить то, чего ему не хватает для полноценной работы. Оснащен средствами для работы с репозиториями и системами контроля версий, такими как Git.

Прямо из Эрика можно попасть в хранилище плагинов, которые расширяют функциональность программы. Кроме того, при установке у пользователя есть выбор, какие элементы он хочет установить. Так что, удалять «менюшки» через код не придется, если вы их не установили.

PyCharm

Помните, мы говорили о том, что нужно найти для Python то, чем стала IDEA для Java. Так вот это решение! PyCharm был создан компанией JetBrains – родителями IDEA. Они полностью переработали свою среду разработки, чтобы составить конкуренцию существующему тогда программному обеспечению. В итоге, получилась одна из самых мощных, функциональных и кроссплатформенных IDE, которые представлены на рынке. Так и IDEA, она является умной: умеет подсвечивать код, анализировать, вносить исправления и все в этом духе.

PyCharm также хороша тем, что поддерживает веб-разработку на Django – c ним ваш код достигнет DRY-стандарта. У программы есть бесплатная версия – Community Edition. А у нас все.

JavaScript. Быстрый старт

Изучите основы JavaScript на практическом примере по созданию веб-приложения

Редактор Sublime Text

Посмотрите видео по работе с редактором Sublime Text

Рекомендуем к прочтению

Добавить комментарий

Ваш адрес email не будет опубликован.