Jython: интеграция с Java

jython integraciya s java Интеграция Python/C

С Jython мы впервые столкнулись в главе 12 и еще раз — выше в этой главе, при обсуждении вопросов расширения. Однако в действительности Jython представляет собой более обширную платформу интеграции. Jython компилирует программный код Python в байт-код Java для выполнения под управлением JVM. Получающаяся при этом система на основе Java поддерживает два вида интеграции:

     Расширение: Jython использует API отра же ния (рефлексии) Java, позволяющий программам Python автоматически обращаться к библиотекам классов Java. API отражения Java предоставляет информацию о типах Java на этапе выполнения и служит той же цели, что и связующий программный код, который мы генерировали в этой части книги для подключения библиотек C к Python. Однако в Jython эта информация о типах в момент выполнения позволяет в значительной мере автоматизировать вызов функций Java в сценариях Python — нет необходимости писать или генерировать связующий программный код.

     Встраи ва ние: Jython также предоставляет API класса Java PythonInterpreter, позволяющий программам Java выполнять программный код Python в отдельном пространстве имен подобно инструментам C API, использовавшимся для выполнения строк программного кода Python из программ C. Кроме того, поскольку Jython реализует все объекты Python как экземпляры класса Java PyObject, слой Java, содержащий встроенный код Python, легко может обрабатывать объекты Python.

Иными словами, Jython позволяет создавать расширения для Python на Java и встраивать его в Java подобно стратегиям интеграции с C, рассмотренным в этой части книги. Добавляя простой язык сценариев в приложения Java, Jython играет практически ту же роль, что и инструменты интеграции C, которые мы только что изучили.

Однако развитие Jython обычно отстает от развития CPython, а его опора на библиотеки классов и среду выполнения Java влечет за собой зависимости Java, которые могут быть значимы в определенных сценариях разработки, ориентированных на Python. Но как бы то ни было, JPython предоставляет удивительно гладкую модель интеграции и служит идеальным языком сценариев для приложений Java. За более подробной информацией о Jython обращайтесь на сайт http://www.jython.org и к поисковым системам.

Использованная литература:

Марк Лутц — Программирование на Python, 4-е издание, II том, 2011

Каталог сайтов Всего.ру
Оцените статью
Секреты программирования
Добавить комментарий