Марк Лутц - Изучаем Python, Четвертое издание (1184811), страница 15
Текст из файла (страница 15)
Python в вопросах и ответахски все, что только может потребоваться, – от поиска с использованием регулярных выражений до работы в сети. Библиотечные инструменты языкаPython – это то место, где выполняется большая часть операций.Утилиты сторонних разработчиковPython – это открытый программный продукт и поэтому разработчикимогут создавать свои предварительно скомпилированные инструментыподдержки задач, решить которые внутренними средствами невозможно.В Сети вы найдете свободную реализацию поддержки COM, средств для работы с изображениями, распределенных объектов CORBA�����������������������������������, XML, механизмов доступа к базам данных и многое другое.Несмотря на широкие возможности, Python имеет чрезвычайно простой синтаксис и архитектуру.
В результате мы имеем мощный инструмент программирования, обладающий простотой и удобством, присущими языкам сценариев.Он соединяемыйПрограммы на языке Python с легкостью могут «склеиваться» с компонентами, написанными на других языках программирования. Например, прикладной интерфейс C API в Python позволяет программам на языке C вызыватьи быть вызываемыми из программ на языке Python. Из этого следует, что выможете расширять возможности программ на языке Python и использоватьпрограммный код на языке Python в других языковых средах и системах.Возможность смешивать Python с библиотеками, написанными на таких языках, как C или C++, например, превращает его в удобный язык для созданияинтерфейсов к этим библиотекам и в средство настройки программных продуктов. Как уже говорилось выше, все это делает Python прекрасным средством разработки прототипов – система может быть сначала реализована наязыке Python, чтобы повысить скорость разработки, а позднее в зависимостиот требований к производительности системы по частям перенесена на язык C.Он удобенЧтобы запустить программу на языке Python, достаточно просто ввести ееимя.
Не требуется выполнять промежуточную компиляцию и связывание, какэто делается в языках программирования, подобных C или C++. Интерпретатор Python немедленно выполняет программу, что позволяет производитьпрограммирование в интерактивном режиме и получать результаты сразу жепосле внесения изменений – в большинстве случаев вы сможете наблюдать эффект изменения программы с той скоростью, с которой вы вводите измененияс клавиатуры.Безусловно, скорость разработки – это лишь один из аспектов удобства Python.Кроме того, он обеспечивает чрезвычайно простой синтаксис и набор мощныхвстроенных инструментов. Поэтому некоторые даже называют Python «исполняемым псевдокодом». Поскольку большая часть сложностей ликвидируетсядругими инструментами, программы на языке Python проще, меньше и гибчеэквивалентных им программ, написанных на таких языках, как C, C++ и Java!Какими преимуществами обладает Python перед языком X? 57Он прост в изученииЭто самый важный аспект данной книги: по сравнению с другими языкамипрограммирования базовый язык Python очень легко запоминается.
В действительности вы сможете писать на языке Python более или менее значимыепрограммы уже через несколько дней (или даже через несколько часов, если выуже опытный программист). Это отличная новость для разработчиков, стремящихся изучить язык для применения его в своей работе, а также для конечныхпользователей, которые применяют Python для настройки или управленияпрограммным продуктом.Сегодня многие системы исходят из того, что конечные пользователи могутбыстро изучить Python в достаточной степени, чтобы самостоятельно создатьсвой собственный программный код настройки системы при незначительнойподдержке со стороны разработчика.
И хотя в Python имеются сложные инструменты программирования, основа языка по-прежнему остается простойдля изучения как начинающими, так и опытными программистами.Он назван в честь Монти ПайтонаЭто не имеет отношения к технической стороне дела, но похоже, что эта тайна, которую я собираюсь открыть, на удивление хорошо охраняется. Несмотряна то, что на эмблеме Python изображена рептилия, правда состоит в том, чтосоздатель Python, Гвидо ван Россум, назвал свое детище в честь комедийного сериала «Летающий цирк Монти Пайтона» (Monty Python’s Flying Circus),который транслировался по телеканалу BBC. Он большой поклонник МонтиПайтона, как и многие программисты (похоже, что между разработкой программного обеспечения и цирком есть что-то общее).Это обстоятельство неизбежно добавляет юмора в примеры программного кодана языке Python.
Например, традиционные имена переменных «foo» и «bar»,в языке Python превратились в «spam» и «eggs». Встречающиеся иногда имена«Brian», «ni» и «shrubbery», точно также появились благодаря своим тезкам.Это даже оказывает влияние на сообщество в целом: дискуссии на конференциях по языку Python обычно именуются «Испанская инквизиция».Все это, конечно, очень забавно, если вы знакомы с сериалом, в противном случае это кажется непонятным. Вам не требуется знать сериал, чтобы пониматьпримеры, где используются ссылки на Монти Пайтона (включая многие примеры в этой книге), но, по крайней мере, вы теперь знаете, откуда что берется.Какими преимуществами обладает Pythonперед языком X?Наконец, чтобы разместить язык Python среди уже, возможно, известных вампонятий, сравним Python с другими языками программирования, такими какPerl�������������������������������������������������������������������������, Tcl и �����������������������������������������������������������������Java�������������������������������������������������������������.
Ранее мы уже говорили о проблеме производительности, поэтому здесь мы сосредоточим свое внимание на функциональных возможностях.Другие языки программирования также являются достаточно полезными ин-58Глава 1. Python в вопросах и ответахструментами, чтобы знать и использовать их, но многие программисты находят, что Python:•• Имеет более широкие возможности, чем Tcl. Язык Python поддерживает«программирование в целом», что делает его применимым для разработкикрупных систем.•• Имеет более четкий синтаксис и более простую архитектуру, чем Perl, чтоделает программный код более удобочитаемым, простым в сопровождениии снижает вероятность появления ошибок.•• Проще и удобнее, чем Java. �����������������������������������������������Python����������������������������������������� – это язык сценариев, а ����������������Java������������унаследовала сложный синтаксис от таких языков программирования, как C++.•• Проще и удобнее, чем C++, но нередко он не может конкурировать с C++,поскольку, будучи языком сценариев, Python предназначен для решениядругого круга задач.•• Более мощный и более переносимый, чем Visual Basic.
Открытая природаPython также означает, что нет какой-то отдельной компании, которая егоконтролирует.•• Более удобочитаемый и более универсальный, чем PHP. Иногда ����������Python����используется для создания веб-сайтов, но он способен решать гораздо болееширокий круг задач, от управления роботами до создания анимационныхфильмов.•• Более зрелый и имеет более ясный синтаксис, чем Ruby. В отличие от Rubyи Java, объектно-ориентированный стиль программирования является необязательным в Python – он не вынуждает использовать ООП в проектах,где этот стиль неприменим.•• Обладает динамическими особенностями таких языков, как SmallTalkи Lisp, но имеет более простой и традиционный синтаксис, доступный какдля разработчиков, так и для конечных пользователей настраиваемых систем.Многие считают, что Python, по сравнению с другими современными языкамисценариев, гораздо лучше подходит для программ, которые делают нечто большее, чем простое сканирование текстовых файлов и код которых, возможно,потребуется читать другим людям (и может быть, даже вам!).
Кроме того, еслиот вашего приложения не требуется наивысшая производительность, Pythonспособен составить конкуренцию таким языкам программирования, как C,C++ и ��������������������������������������������������������������������Java����������������������������������������������������������������: программный код на языке Python проще писать, отлаживать и сопровождать.Безусловно, автор является горячим поклонником Python с 1992 года, поэтомувоспринимайте эти комментарии по своему усмотрению.
Однако они в действительности отражают опыт многих программистов, которые потратили немаловремени на исследование возможностей Python.В заключениеЭтот раздел завершает рекламную часть книги. В этой главе мы рассмотрелинекоторые из причин, по которым люди выбирают Python��������������������������������������������для программирования своих задач. Здесь также было показано, как он используется, и приведеныЗакрепление пройденного59представительные примеры тех, кем он используется в настоящее время.