2016-08-04 59 views
-3

我無法理解爲什麼以及在什麼樣的場景下我想在服務器端的JVM中運行腳本語言。我的意思是我們已經在JAVA中有很好的庫...爲什麼我不使用它們來做東西而不是在JVM中運行腳本? 請幫我理解這個概念,有人可以告訴我一個或兩個在服務器端運行JVM腳本的用例比使用JAVA庫更有優勢。爲什麼我想在JVM中執行腳本語言

+0

這是一個基於意見的問題。但無論如何,有更多的選擇並不能帶走一些東西。此外,Java有很多圖書館,但它們是否涵蓋了一切?沒有。始終選擇最適合當前任務的工具。有時候是Java,有時候是Javascript,有時甚至是PERL。 –

回答

2

這裏的更普遍的問題是:「我爲什麼要在< 一些腳本語言>在Java中執行代碼?」,其中JavaScript是這樣一種語言的簡單一個例子。

報價this article

有些Java應用程序的需求使集成有必要的腳本語言。例如,用戶可能需要編寫用於驅動應用程序,擴展應用程序或包含循環和其他流控制結構的腳本。在這種情況下,支持可以讀取用戶腳本的腳本語言解釋程序是明智的,然後在Java應用程序的類中運行它們。

基本上:如果你想允許你的用戶以一種需要豐富的編程語言來定製你的應用程序。

爲什麼選擇Javascript?這取決於你的應用程序。可能有理由選擇它(例如,你的目標用戶已經知道Javascript),或者沒有(例如,Lua在遊戲行業中更受歡迎的腳本)。

0

有一點我能想到的是:

  • Javascript引擎可用於評估算術表達式 這是在一個字符串格式。

example :: String expression =「2 + 4」;

以下是使用java腳本引擎執行此操作的示例的鏈接。

https://stackoverflow.com/a/3423360/4626402

+0

「Java不提供任何方式來實現這一點」當然它確實如此。您可以用Java實現算術表達式解析器和評估器。 –

+0

@AndyTurner我的意思是java沒有內置的方法來實現這一點,至少據我所知。如果有,請回復。無論如何,我已經從我的答案中刪除了該陳述。 – Abhishek

相關問題