Top.Mail.Ru

Что такое IronPython: обзор и установка

IronPython — это своего рода реплика языка программирования Python, а точнее его реализация, которая тесно связана с .NET Framework. IronPython использует библиотеки .NET Framework и библиотеки Python. В целом это отличное дополнение к .NET, предоставляющее веб-разработчикам «Питона» воспользоваться возможностями .NET Framework. Это очень быстрый и выразительный возможность программирования для выстраивания сценариев, тестирования и написания приложений с нуля.

Реализация IronPython происходит прямо поверх библиотек Dynamic Language Runtime (DLR), работающих поверх Common Language Infrastructure, которая в свою очередь отвечает за обеспечивание динамической типизации, а также отвечает за отправку необходимых методов для используемого динамического языка.

DLR – это существенная часть .NET Framework 4.0 и Mono. Это стало возможным уже начиная с релиза 2.4 2009 года. DLR также часто используется в качестве библиотек в наиболее “древних” реализациях CLI.

Характеристика IronPython по сравнению с СPython

Точные характеристики производительности IronPython, если сравнивать с CPython (это эталонная реализация языка программирования Python), будут зависеть от конкретного использования конкретного синтаксиса. В целом IronPython по производительности чуть хуже, чем CPython. Это доказано большим количеством тестов, сделанных с использованием скрипта PyStone.

IronPython в принципе может повысить свою производительность в программах на языке Python, которые используют потоки в несколько ядер. Потому что он сам использует JIT и не имеет Global Interpreter Lock (GIL) механизма. Этот механизм в основном используется в некоторых интерпретаторах программного языка, чтобы синхронизировать выполнение потоков. Интерпретатор, который использует GIL, всегда может выполнить только один поток за раз, даже если поток данных выполняется на многоядерном процессоре. Вот некоторые популярные интерпретаторы с GIL – это CPython и Ruby MRI.

Установка IronPython

В целом установка Ironpython — дело не хитрое. Будут небольшие различия в зависимости от того, какую операционную систему вы используете.

Установка IronpPython в Linux

Установка Ironpython в Linux довольно проста, и уместиться в несколько простых шагов:

  1. Нужно добавить репозиторий Mono в вашу систему; для этого посетите сайт mono-project.com и выберете версию свой операционной системы.
  2. Установите Mono; это можно сделать в магазине приложений или в терминале набрав: «$ sudo apt install mono-devel»;
  3. Установите Numerics; это также можно сделать через терминал: «$ sudo apt install libmono-system-numerics4.0-cil»;
  4. Наслаждайтесь работой, если все сделали правильно.

Установка Ironpython MacOS

Здесь тоже все просто. Сама установка займет пару минут и всего несколько шагов:

  1. Перейдите на сайт mono-project.com и загрузите и установите последнюю версию Mono;
  2. Загрузите последнюю версию IronPython. Найдите ее через поиск, но как правило загрузка происходит из github.com;
  3. Откройте терминал и введите команду «$ which ipy»;
  4. Пользуйтесь и наслаждайтесь работой.

Установка IronPython в Windows

Здесь всего 2 шага вас отделяет от программирования на этом языке:

  1. Найдите установите через поиск IronPython; как правило скачать его можно с сайта github.com;
  2. Пользуйтесь и наслаждайтесь программированием/

Так что это за программа IronPython, для чего использовать?

Программа IronPython — это динамический язык. А как известно динамические языки очень удобны, если необходимо , к примеру, быстро разработать приложение. Быстрая разработка — это соответственно быстрый результат. Поэтому современные разработчики все больше и больше отдают предпочтение именно динамическим языкам, так как они избавляют от старых методик и рутины, а значит позволяют сосредоточится на творческой составляющей своего проекта.

Использовать или нет IronPhyton — зависит только от вашего желания и необходимости конкретно в этом языке.

Поделись статьей с друзьями!

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *