Львиную долю своего рабочего времени программисты проводят в редакторах кода. В такой ситуации комфортность и удобство рабочей среды трудно переоценить. Конечно, писать код можно и в простейшем текстовом редакторе и сохранять в .html, но с продвинутым редактором это не сравнится. Особенно если редактор ориентирован на конкретный язык. Так как питон был и остается основным языком, используемым в Data Science, и именно ему мы уделяем особое внимание на наших курсах, делимся с вами переводом статьи, автор которой пишет о знакомых ему редакторах и о том, что он считает привлекательным в них.



Примечание автора: каждый упомянутый в этой статье редактор хорош по-своему. Список — это только краткое руководство, основанное на моем личном опыте. Одни редакторы могут нравиться вам больше других. В конце концов, выбор редактора или среды разработки за вами. Нет неправильного или правильного выбора.

1. Python IDLE




IDLE — редактор, поставляемый вместе с Python. Это базовый, упрощенный режим программирования на Python. Тем не менее, IDLE хороший редактор для начала программирования и понимания основ языка. В нем есть оболочка Python — интерактивный интерпретатор. Его возможности обширны: автозавершение кода, подсветка синтаксиса, подбор отступа и базовый встроенный отладчик.

Плюсы:

  • Легкий.
  • Подходит для начинающих.

Минусы:

  • Не подходит сложным проектам.
  • Не хватает продвинутых функций.

2. Sublime Text



Sublime Text — свободное программное обеспечение с широкой поддержкой сообщества. Редактор работает с несколькими языками программирования. В большинстве случаев можно использовать незарегистрированный Sublime Text, но время от времени вы будете получать всплывающее окно с просьбой зарегистрировать продукт и приобрести лицензию. Sublime Text тонко настраивается и дополняется пакетами для отладки, автозавершения кода, линтинга и т.д.

Плюсы:

  • Простой и по большей части бесплатный.
  • Тонко настраивается.
  • Компактный и эффективный.

Минусы:

  • Для удобства требует дополнительных пакетов.

3. Visual Studio Code




Visual Studio Code — бесплатный редактор кода от Microsoft для Windows, Linux и MacOS. Его возможности — отладка, подсветка синтаксиса, интеллектуальное завершение кода, предопределённые фрагменты кода, рефакторинг и интеграция с Git. Поддерживаются различные языки программирования. Для начала работы с Python может понадобиться несколько дополнительных пакетов, но установить их довольно просто. Редактор постоянно обновляется. Visual Studio Code — один из лучших редакторов не только для Python, но и для других языков программирования. Я часто пользуюсь VSC и очень рекомендую его.

Плюсы:

  • Это фантастическая платформа с непрерывными обновлениями.
  • Потребляет немного памяти по сравнению с другими громоздкими инструментами разработки.
  • Имеет встроенный терминал и прост в использовании.

Минусы:

  • Иногда терминал работает не так, как хотелось бы.

4. Jupyter Notebook



Jupyter Notebook — это веб-приложение с открытым исходным кодом, позволяющее создавать документы с выполняемым интерактивно кодом, уравнениями, визуализациями, простым текстом. Конечно, такими документами просто поделиться. Jupyter Notebook используется для очистки и преобразования данных, численного и статистического моделирования, визуализации данных, машинного обучение и многого другого. Этот редактор — хороший вариант для начала работы с наукой о данных и машинным обучением. Файлами можно поделиться с кем угодно, они помогают эффективнее работать с кодом. Я настоятельно рекомендую Jupyter Notebook, поскольку можно работать с каждым блоком кода отдельно. Также есть возможность использовать разметку. Среда Jupyter Notebook широко используется во многих успешных компаниях.

Плюсы:

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

Минусы:

  • Нет мощных функций из некоторых IDE.

5. PyСharm




PyCharm — это интегрированная среда разработки специально для Python. Разработана чешской [прим. перев. — автор ориентируется на расположение головного офиса] компанией JetBrains. Редактор разработан специально для Python, так что имеет широкий набор возможностей, таких как автозавершение и инспекции кода, подсветка ошибок, исправления, отладка, система контроля версий и рефакторинг. IDE доступна на Microsoft Windows, Linux и MacOS. Есть бесплатная и платная профессиональная версии. Профессиональная IDE имеет несколько дополнительных функций, но бесплатной версии достаточно для большинства задач. Я настоятельно рекомендую PyCharm, если у вас есть как минимум 8 Гб оперативной памяти.

Плюсы IDE:

  • Имеет важные встроенные функции.
  • Разработана профессионалами специально для Python.
  • Поддерживает виртуальные среды Anaconda.

Минусы:

  • Основная проблема PyCharm: если у вас недорогой ПК или ноутбук и в нем нет 8 Гб оперативной памяти, то IDE немного притормаживает и работает довольно медленно.

6. Thonny




IDE Thonny предустановлена на системы Linux и системы на ее основе. Мой опыт работы с этим редактором в основном связан с Raspberry Pi. Это отличная, простая среда разработки для начинающих. Thonny хорошо подходит Raspberry Pi. Некоторые возможности: подсветка синтаксических ошибок, отладчик, автозавершение кода, пошаговое вычисление выражений.

Плюсы:

  • Интерактивная среда.
  • Подходит для начинающих.
  • Может использоваться для проектов Raspberry Pi.

Минусы:

  • Редактор склонен к проблемам.
  • Имеет не очень много возможностей.

7. Spyder



Spyder — это мощная научная интегрированная среда программирования, написанная на Python, для Python. Она разработана учеными, инженерами и аналитиками данных для них самих. Spyder обладает уникальным сочетанием возможностей. Продвинутое редактирование, анализ, отладка и профилирование сочетается с возможностями исследования данных, интерактивного выполнения, глубокой инспекции кода и красивой визуализацией. Установить Spyder просто: скачайте его как часть дистрибутива Anaconda. Разработчики рекомендуют последнюю 64-битную версию Python 3, если у вас нет особых требований.

Плюсы:

  • Бесплатный редактор, поставляется с Anaconda.
  • Хорошее рабочее окружение для просмотра интерпретаций и кодирования в два окна.
  • Широкий выбор опций исключительно для Python.

Минусы:

  • Немного старый интерфейс.

8. Atom




Эта IDE похожа на текстовый редактор Sublime. Она очень настраиваемая и поддерживает многие необходимые пакеты. У меня меньше опыта работы с этим редактором, поэтому я рекомендую скорее Sublime Text, чем Atom. Но перечислю некоторые часто используемые пакеты Atom для разработки на Python: autocomplete-python, linter-flake8, python-debugger.

Плюсы:

  • Работать с Atom легко.
  • Поддерживает Python после дополнительных установок.

Минусы:

  • Требуется дополнительный плагин для Python.
  • Больше подходит для работы с git.

9. VIM




Vim — это текстовый редактор, предустановленный в системах MacOS и UNIX. Большинство экспертов любят vim за развитые вычислительные возможности и легкую, компактную среду разработки. Он не рекомендуется начинающим, так как изучать его трудно. Можно добавить плагины подсветки синтаксиса, автозавершения кода, отладки, рефакторинга и другие к Vim и использовать его как Python IDE. [Прим. перев. На скриншоте GVim — версия Vim с графическим интерфейсом].

Плюсы:

  • Легкий.
  • Эффективный.
  • Производительный.

Минусы:

  • Нужно посвятить время изучению редактора, у него крутая кривая обучения.

9. Notepad++




Notepad++ — это редактор текста и исходного кода, работающий на Microsoft Windows. Поддерживается редактирование с вкладками, что позволяет работать с несколькими открытыми файлами в одном окне. Название проекта происходит от оператора инкремента языка С. Notepad++ распространяется как свободное программное обеспечение. Редактор поддерживает множество языков программирования и может быть полезным. На мой взгляд, есть и лучшие варианты. Кроме того, нужно установить дополнительные пакеты, чтобы сделать редактор функциональным для программирования на Python.

Плюсы:

  • Заменяет блокнот.
  • Может использоваться для нескольких языков программирования, включая Python.

Минусы:

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

10. Онлайн редакторы


На Programiz, tutorials point, w3schools и некоторых других сайтах есть редакторы с удивительными возможностями.

Плюсы:

  • Никаких дополнительных установок и настроек.
  • Простой код запускается без особых хлопот.

Минусы:

  • Не такие мощные, как IDE.

Это был длинный список. Я охватил почти все редакторы из моего опыта работы. Самое смешное: есть вероятность, что я многое упустил. Есть множество настраиваемых, удобных пользователям редакторов. Также сегодня существует множество облачных IDE именно в онлайне. GitHub работает над Codespaces — облачной версией VSCode. И Vim настраивается так гибко, что может иметь множество других плюсов и минусов.

Расскажите, в каком редакторе для Python вы пишете код и почему?

image

Получить востребованную профессию с нуля или Level Up по навыкам и зарплате, можно, пройдя онлайн-курсы SkillFactory: