gpt4 book ai didi

scala - 将 JavaScript (d3) 翻译成 Java

转载 作者:行者123 更新时间:2023-12-02 00:03:06 24 4
gpt4 key购买 nike

是的,我知道,除了名称之外它们没有任何共同点 :-) 今天我在 JavaFX webengine 服务器环境中使用 d3。这很好用,但我对性能以及将对象转换为 JSObject 并返回并不满意。长话短说,我正在考虑移植 d3 以在 Java 中使用。

由于 JavaScript 使用 lambda 和 clojures,我不确定是否应该使用“中间件”——即将 JavaScript 转换为 Scala 并在我现有的 Java 应用程序中使用 Scale 类。由于我不熟悉 Java 8、Scala、Clojure 和 Groovy,所以我希望您问一下这是否会使移植更容易。哪一个是最好的选择——在相似的句法特征的意义上。

你认为像 d3 这样的项目会付出什么努力?我期待5天左右的事情。

最佳答案

Groovy,虽然可以选择 statically compiled , 默认情况下是动态的,具有熟悉的括号语法。在这三者中,我认为 Groovy 与 Javascript 最相似。 Groovy 的元编程类似于 Javascript 的原型(prototype),并且 Groovy 有 lambdas/closures。

我不是 Javascript 大师,但是这个 JS 代码:

function Person(personName) {
var name = personName;
this.getName = function() {
return name;
}
}

Person.prototype.upperName = function() {
return this.getName().toUpperCase();
}

var person = new Person("john doe");

console.log(person.upperName()); // prints JOHN DOE

可以使用元编程在 Groovy 中编写,通过 metaClass , 和闭包:
class Person {
String name
}

Person.metaClass.upperName = {
delegate.name.toUpperCase()
}

def person = new Person(name: "john doe")

println person.upperName() // prints JOHN DOE

关于scala - 将 JavaScript (d3) 翻译成 Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20140245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com