2010-06-22 53 views
1

我有一個簡單的Web應用程序測試桌面應用程序。我想知道如何爲它創建自己的腳本語言(域特定語言)。在Java桌面應用程序中創建自己的腳本語言?

這樣做的目的是爲非程序員提供非常直觀的腳本,並能夠定義用戶場景的特定細節。

我希望這是明確的,基本上問題是,我該如何創建一個簡單易用的腳本語言,可以將其轉換爲Java代碼。

也許,他們可以使用netbean的IDE來編寫腳本。

對於前)

我的腳本:

load "http://www.google.com"; 
click "Search" button; 

java代碼:

browser.navigate("http://www.google.com"; 
browser.wait 
browser.element("Search").click(); 

回答

1

最好的解決辦法是重新使用一個現有的腳本語言的Java;例如BeanShell。實現你自己的腳本語言將是很多工作。如果在結果可能「不如恆星」之前你從未做過任何語言設計和實施工作。

也許,他們可以使用netbean的IDE來編寫腳本。

期望您的應用程序(尤其是非程序員)的用戶安裝和使用特定的IDE聽起來像是一個非常糟糕的主意。

...可以被翻譯成Java代碼。

轉換爲Java代碼也使事情複雜化。 可能更好地解釋腳本語言並使用靜態類型方法調用和(僅在必要時)Java反射API的組合來訪問Java API。

2

擴展超出非常簡單的語法的最佳語言工具/框架是使用ANTLR。它是一個全功能的詞法分析器+解析器組合,卓越的Java集成以及大量具有良好文檔的示例。

意識到這不是一個無足輕重的小項目。如果時間有限,您應該使用現有語言

相關問題