Мотивация интерпретатора (Interpreter motivation


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

Помните, что каждый шаблон проектирования позволяет изменять один или несколько факторов, так что очень важно сначала осознать, какой фактор изменяется. Иногда конечный пользователь вашего приложения (а не программист приложения) нуждается в полной гибкости подхода, которым он конфигурирует некоторый аспект программы. Таким образом, ему нужно, некоторого рода, простое программирование. Шаблон интерпретатора предоставляет такую гибкость, добавляя интерпретатор языка.

Проблема состоит в том, что разработка вашего собственного языка и построение интерпретатора отнимает много времени от процесса разработки приложения. Вы должны ответить, хотите ли вы закончить написание вашего приложения или создать новый язык программирования. Лучшим подходом является повторное использование кода: встраивание интерпретатора, который уже был построен и отлажен до вас. Язык программирования Python может быть свободно встроен в ваше прибыльное приложение без покупки каких-либо лицензионных соглашений, оплаты авторских гонораров или сделок любого другого рода.

Python является языком, который очень легко изучается, очень логичен при написании и чтении, поддерживает функции и объекты, имеет большой набор поддерживаемых библиотек и работает, фактически, на любой платформе. Вы можете загрузить Python и узнать больше о нем по ссылке www.Python.org.

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

Python разрабатывался с классами от самого начала, так что это реально чистый объектно-0риентированный язык (в то время как C++ и Java нарушают чистоту различными способами). Python масштабируется, так что вы можете создавать очень большие программы без потери контроля над кодом.

Для установки Python, зайдите на www.Python.org и следуйте ссылкам и инструкциям. Для установки Jython перейдите на http://jython.sourceforge.net. Скачайте этот .class файл, который является запускаемым в качестве установщика, когда вы выполните его с помощью Java. Вам также необходимо добавить jython.jar в вашу переменную CLASSPATH. Вы можете найти дополнительную инструкцию по установке на http://www.bruceeckel.com/TIPatterns/Building-Code.html.