Языку программирования Python исполнилось 30 лет

Моя цель - предложение широкого ассортимента товаров и услуг на постоянно высоком качестве обслуживания по самым выгодным ценам.


Время идет быстро, и Python, одному из самых популярных языков программирования современности, исполнилось 30 лет. Впервые о нем стало известно в конце февраля 1991 года, когда Гвидо ван Россум опубликовал первый выпуск Python в группе alt.sources.

Работа над языком велась два года, изначальной задачей было создание скриптового языка для работы с операционной системой Amoeba. Язык этот должен был быть более высокого уровня, чем Си, плюс представлял бы удобный доступ к системным вызовам операционной системы.

В первой версии языка появилась поддержка классов с наследованием, обработка исключений, плюс система модулей и базовые типы list, dict и str. Такой инструмент, как реализация модулей и исключений был заимствован из языка Modula-3. Стиль кодирования на основе отступов попал в Python из языка АBC, в разработке которого автор тоже принимал непосредственное участие.

Важнейшую роль при разработке языка играли принципы, которые позволяли сэкономить время в процессе кодинга:

  • Заимствование полезных идей из других проектов.
  • Стремление к простоте, но без чрезмерного упрощения (принцип Эйншейна «Всё должно быть изложено так просто, как только возможно, но не проще»).
  • Следование философии UNIX, в соответствии с которой программы реализуют какую-то одну функциональность, но делают это хорошо.
  • Не слишком заботиться о производительности, оптимизации можно добавлять по мере необходимости, когда они понадобятся.
  • Не пытаться бороться с сложившимися вещами, а плыть по течению.
  • Избегать перфекционизма, обычно хватает и уровня «достаточно хорошо».
  • Иногда можно срезать углы, особенно, если что-то можно сделать позднее.

Есть и другие принципы, которыми руководствовался Гвидо ван Россум при разработке Python:

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


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

Источник: https://habr.com/ru/company/selectel/blog/543738/


Интересные статьи

Интересные статьи

Что такое бэкенд, на Хабре рассказывать не нужно, поэтому сразу переходим к сути статьи. В ней рассказывается о наиболее подходящих для бэкенда языках программирования. Кроме того, ав...
Практика показывает, что в современном мире Docker-контейнеров и оркестраторов (Kubernetes, Nomad, etc) проблема с утечкой памяти может быть обнаружена не при локальной р...
Перевод статьи подготовлен специально для студентов курса «Разработчик Python». Внимание: код в этой статье лицензирован под GNU AGPLv3. Я написал это руководство, поскольку не смог найти...
Привет, Хабр! Представляю вашему вниманию перевод статьи «Demystifying memory management in modern programming languages» за авторством Deepu K Sasidharan. В данной серии статей мне бы хотелос...
Как-то у нас исторически сложилось, что Менеджеры сидят в Битрикс КП, а Разработчики в Jira. Менеджеры привыкли ставить и решать задачи через КП, Разработчики — через Джиру.