我最近在讀Groovy,它更關係到Java。我沒有任何動態語言的經驗。我讀過Groovy的創始人想給現有的Java語言添加動態性質。我的問題是這樣的。什麼是導致替代JVM語言的實際用例?
Q1什麼是令人信服的理由來提出在JVM上運行的Groovy等語言。它引起了我的興趣。請有人幫助我。
感謝, Nuwan Arambage
我最近在讀Groovy,它更關係到Java。我沒有任何動態語言的經驗。我讀過Groovy的創始人想給現有的Java語言添加動態性質。我的問題是這樣的。什麼是導致替代JVM語言的實際用例?
Q1什麼是令人信服的理由來提出在JVM上運行的Groovy等語言。它引起了我的興趣。請有人幫助我。
感謝, Nuwan Arambage
你問的問題倒退。考慮到像Groovy或Clojure這樣的語言,如果可以在廣泛部署的運行時(例如JVM)上運行,則廣泛採用的巨大障礙將被消除。
對於我來說,它增強了過多不香草Java中可用
語法糖,關閉,常用的數學& I/O庫,JavaBean的特點,鴨夾雜打字 是一些 - 它可能會花費一個小的性能開銷,是最大攔截
基本上它可以讓你的Ruby人喜歡什麼(顯着簡潔和表現力的腳本),而與Java生態系統的所有方面遵守和良好架構的類的Java
重新使用實際上是我已經停止了編寫Java乾脆現在的Groovy 1.8迫在眉睫 它只是一個jar放入CLASSPATH 那麼容易......
由於都知道Java是非常強大的語言,但是我們可以看到「的東西「 不見了。正如所有告訴的java是一種面向對象的編程語言。但是這樣嗎?你可以用這樣的「10.times。」來表示任何整數的方法嗎?NO是答案,你不能。但groovy使Java成爲完全面向對象的語言。在java處理列表中,map是一項繁瑣的任務,因爲程序員需要這些非常簡單,groovy可以做到這一點。 更重要的是,groovy很容易閱讀,維護,並且您的項目算法變成了精確的代碼! 這就是「算法」=「常規代碼」
我愛groovy!
我不能告訴你爲什麼會有其他語言存在,但我可以告訴你我是如何進入Groovy的。對於我來說,有兩點重要: *如果你知道一些編程語言,Java會很糟糕。它處理你就像一個小孩,編譯器是你的母親不斷告訴你該怎麼做,而當涉及到更困難的領域時,編譯器會失敗。 *我需要一種腳本語言。 Jython和JRuby當時看起來已經死了,Beanshell太像Java了。而且由於我主要編寫了Java,所以Groovy對我來說是幾乎自然的選擇,因爲它允許重用我的舊代碼,而不會打擾太多的轉換。
關於用例的問題有點難以回答,因爲我的個人歷史更多是我的偏好之一。能夠以較少的代碼編寫更多的代碼並不完全是一個用例,但原型與我和一個用例有關。在Groovy中,您通常可以更快地編寫應用程序並交付原型。如果客戶堅持,通常可以輕鬆地將現有代碼再次遷移到Java。好的是,你可以在每個類的基礎上做到這一點,因爲Java和Groovy交互良好。
可能的重複[爲什麼我們需要其他JVM語言](http://stackoverflow.com/questions/85058/why-do-we-need-other-jvm-languages) – Joel 2011-03-02 18:36:13
以及Java中的'J ''JVM'岩石中。它確實如此。從剖析,到安全性,到現代JIT的性能表現等等。Java在「Java語言」中並沒有那麼厲害。沒關係,但真的不好。看看像Trove這樣驚人快速集合的作者需要做些什麼:基本上寫一個自定義的預處理器,以避免重複8次所有Java基元的相同代碼。像這樣的東西。 Java在某些事情上有點糟糕。這是可憐的冗長(斯卡拉已經證明,你可以有少得多的代碼相同的安全性)。等等。 – SyntaxT3rr0r 2011-03-02 20:26:00