Быстрый в изучении - мощный в программировании
>> Telegram ЧАТ для Python Программистов

Свободное общение и помощь советом и решением проблем с кодом! Заходите в наш TELEGRAM ЧАТ!

>> Python Форум Помощи!

Мы создали форум где отвечаем на все вопросы связанные с языком программирования Python. Ждем вас там!

>> Python Канал в Telegram

Обучающие статьи, видео и новости из мира Python. Подпишитесь на наш TELEGRAM КАНАЛ!

Почему программисты используют Python?

Это самый типичный вопрос, который задают начинающие программисты, потому что на сегодняшний день существует масса других языков  программирования. Учитывая, что число пользователей Python составляет порядка миллиона человек, достаточно сложно однозначно ответить на этот вопрос. 

Выбор средств разработки иногда зависит от уникальных особенностей и личных предпочтений. Однако после обучения примерно 225 групп и более 3000 студентов за  последние 12 лет у меня накопились некоторые общие мысли по этому поводу.  Основные факторы, которые приводятся пользователями Python, примерно таковы:

Качество программного обеспечения

Для многих основное преимущество языка Python заключается в 

удобочитаемости, ясности и более высоком качестве, отличающими его от других

инструментов в мире языков сценариев. Программный код на языке Python

читается легче, а значит, многократное его использование и 

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

других языках сценариев. Единообразие оформления программного кода

на языке Python облегчает его понимание даже для тех, кто не участвовал

в его создании. Кроме того, Python поддерживает самые современные 

механизмы многократного использования программного кода, каким является

объектно-ориентированное программирование (ООП).

Высокая скорость разработки

По сравнению с компилирующими или строго типизированными языками,

такими как С, C++ и Java, Python во много раз повышает 

производительность труда разработчика. Объем программного кода на языке Python 

обычно составляет треть или даже пятую часть эквивалентного программного

кода на языке C++ или Java. Это означает меньший объем ввода с 

клавиатуры, меньшее количество времени на отладку и меньший объем трудозатрат

на сопровождение. Кроме того, программы на языке Python запускаются

сразу же, минуя длительные этапы компиляции и связывания, 

необходимые в некоторых других языках программирования, что еще больше 

увеличивает производительность труда программиста.

Переносимость программ

Большая часть программ на языке Python выполняется без изменений на

всех основных платформах. Перенос программного кода из операционной

системы Linux в Windows обычно заключается в простом копировании 

файлов программ с одной машины на другую. Более того, Python предоставляет

массу возможностей по созданию переносимых графических интерфейсов,

программ доступа к базам данных, веб-приложений и многих других типов

программ. Даже интерфейсы операционных систем, включая способ 

запуска программ и обработку каталогов, в языке Python реализованы 

переносимым способом.

Библиотеки поддержки

В составе Python поставляется большое число собранных и переносимых

функциональных возможностей, известных как стандартная 

библиотека. Эта библиотека предоставляет массу возможностей, востребованных

в прикладных программах, начиная от поиска текста по шаблону и 

заканчивая сетевыми функциями. Кроме того, Python допускает расширение как

за счет ваших собственных библиотек, так и за счет библиотек, созданных

сторонними разработчиками. Из числа сторонних разработок можно 

назвать инструменты создания веб-сайтов, программирование 

математических вычислений, доступ к последовательному порту, разработку игровых

программ и многое другое. Например, расширение NumPy 

позиционируется как свободный и более мощный эквивалент системы программирования

математических вычислений Mathlab.

Интеграция компонентов

Сценарии Python легко могут взаимодействовать с другими частями 

приложения благодаря различным механизмам интеграции. Эта интеграция

позволяет использовать Python для настройки и расширения 

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

программный код на языке Python имеет возможность вызывать функции

из библиотек на языке C/C++, сам вызываться из программ, написанных

на языке C/C++, интегрироваться с программными компонентами на языке

Java, взаимодействовать с такими платформами, как СОМ и .NET, и 

производить обмен данными через последовательный порт или по сети с помощью

таких протоколов, как SOAP, XML-RPC и CORBA. Python - не 

обособленный инструмент.

Удовольствие

Благодаря непринужденности языка Python и наличию встроенных 

инструментальных средств процесс программирования может приносить 

удовольствие. На первый взгляд это трудно назвать преимуществом, тем не

менее, удовольствие, получаемое от работы, напрямую влияет на 

производительность труда.

Из всех перечисленных факторов наиболее существенными для большинства

пользователей являются первые два (качество и производительность).

Качество программного обеспечения

По своей природе Python имеет простой, удобочитаемый синтаксис и ясную 

модель программирования. Согласно лозунгу, выдвинутому на недавней 

конференции по языку Python, основное его преимущество состоит в том, что Python

«каждому по плечу» - характеристики языка взаимодействуют ограниченным

числом непротиворечивых способов и естественно вытекают из небольшого

круга базовых концепций. Это делает язык простым в освоении, понимании

и запоминании. На практике программистам, использующим язык Python,

почти не приходится прибегать к справочным руководствам - это 

непротиворечивая система, на выходе которой, к удивлению многих, получается 

профессиональный программный код.

Философия Python по сути диктует использование минималистского подхода.

Это означает, что даже при наличии нескольких вариантов решения задачи

в этом языке обычно существует всего один очевидный путь, небольшое 

число менее очевидных альтернатив и несколько взаимосвязанных вариантов 

организации взаимодействий. Более того, Python не принимает решения за вас,

когда порядок взаимодействий неочевиден - предпочтение отдается явному

описанию, а не «волшебству». В терминах Python явное лучше неявного, а 

простое лучше сложного.1

Помимо философии Python обладает такими возможностями, как модульное

и объектно-ориентированное программирование, что естественно упрощает

возможность многократного использования программного кода. Поскольку

качество находится в центре внимания самого языка Python, оно также 

находится в центре внимания программистов.

Высокая скорость разработки

Во время бума развития Интернета во второй половине 1990-х годов было 

сложно найти достаточное число программистов для реализации программных 

проектов - от разработчиков требовалось писать программы со скоростью 

развития Интернета. Теперь, в эпоху экономического спада, картина изменилась.

Сегодня от программистов требуется умение решать те же задачи меньшим

числом сотрудников.

В обоих этих случаях Python блистал как инструмент, позволяющий 

программистам получать большую отдачу при меньших усилиях. Он изначально

оптимизирован для достижения высокой скорости разработки - простой 

синтаксис, динамическая типизация, отсутствие этапа компиляции и встроенные

инструментальные средства позволяют программистам создавать программы

за меньшее время, чем при использовании некоторых других инструментов.

В результате Python увеличивает производительность труда разработчика во

много раз по сравнению с традиционными языками программирования. Это

значительное преимущество, которое с успехом может использоваться как во

время бума, так и во время спада, а также во время любого промежуточного

этапа развития индустрии программного обеспечения.

Комментариев: 1
  1. Регина | 2017-06-14 в 09:36:10

    Дорогой автор, прошу указывать свое имя, так как иначе в дипломе нельзя сделать ссылку на вашу статью в списке литературы.