мета-данные страницы
  •  
Загрузка не удалась. Возможно, проблемы с правами доступа?

Это старая версия документа!


Введение

Язык программирования Python (в дальнейшем будет использоваться русское название Питон. Хоть это и некорректно с точки зрения традиции транслитераци имен собственных :-P) это высокоуровневый, скриптовый, интерпретируемый, объектно-ориентированный язык с динамической типизацией. Переведем это на более человеческий язык.

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

Скриптовые языки (их еще называют сценарными) имеют очень нечеткое определение. Обычно это означает, что язык не используется для системного программирования (например, создания ядер операционных систем), а служит утилитарным целям как то организация взаимодействия низкоуровневых компонентов, преобразование данных и т.д. Иными словами, языки такого типа служат прослойками между чем-то другим. Однако, данное определение покрывает далеко не все возможные вариации языков. Скриптовый язык оболочки (sh или какой VB Script) еще укладываются в его прокрустово ложе, то Perl или наш Питон уже заметно выходят за его пределы. Поэтому вводятся еще дополнительные градации: командно-сценарные языки, вот тут как раз и лежат sh с VB Script, прикладные сценарные языки, такие как AutoLISP (встроенный язык в чертежной системе Autocad), VBA или StarBasic (встроенные языки в Microsoft или Open Office соответственно) и сценарные языки общего назначения. Последние класс самый молодой и в него и принято укладывать скриптовые языки, имеющие наиболее широкие возможности. Не стоит, однако, думать что языки оболочки или прикладные сценарные языки ущербны по отношению к языкам общего назначения. Многие языки оболочки ровно так же полны по Тьюрингу как и любой другой «большой» язык программирования, просто у них другая специализация.

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

  • Этап трансляции, на исходный код переводится в байт-код, промежуточное представление программы, которое представляет собой набор инструкций для некоего виртуального вычислительного устройства (виртуальной машины).
  • Этап интерпретации, когда интерпретатор выполняет этот байт-код.

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

Объектно-ориентированный язык - язык реализующий объектно-ориентированную парадигму программирования. Что такое объектно-ориентированная парадигма это цель отдельной большой лекции, возможно коснемся ее позже.

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