首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaFx对TornadoFx

JavaFx对TornadoFx
EN

Stack Overflow用户
提问于 2018-01-04 05:04:33
回答 2查看 6.6K关注 0票数 19

我已经开始研究javafx了。我想知道javafxTornadofx之间的区别。他们是如何相互关联和不同的。

还有什么时候该用什么。

有没有javafxTornadofx更有用/更建议使用的情况,反之亦然?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-01-04 09:03:12

JavaFX更像是一个工具包(它拥有构建GUI所需的所有基础)。它是一个功能完整的“工具包”,但是它非常冗长,语法包含样板代码,这使得它很难维护。这就是TornadoFX进来的原因。TornadoFX就像一个基于该工具包的框架,它消除了所有的样板代码,并使GUI的构建具有声明性,以至于它类似于HTML。

而且,即使TornadoFX可以从Java中使用,它也可以从Kotlin中使用(JavaFX也可以从Kotlin中使用,没有任何问题)。

TornadoFX简化并简化了GUI构建过程(使代码更简洁),但它使用了“幕后”的JavaFX,因此可以与JavaFX进行互操作。例如,您可以用纯JavaFX代码创建一个小部件,然后在TornadoFX中使用它,或者,例如,在TornadoFX中创建一个完整的窗口,然后从JavaFX调用它。

这里的主要优点是TornadoFX不以任何方式限制JavaFX,而且您仍然可以从TornadoFX获得低级别的JavaFX。

除了GUI构建器之外,TornadoFX还包含一些有用的工具,比如ViewModel类,它们将GUI和逻辑分离开来(这是可用的,但不是强制的),以及其他一些有用的工具。

就我个人而言,我总是使用TornadoFX,因为它使代码非常简洁和易于维护,同时,JavaFX的特性也没有丢失。

票数 28
EN

Stack Overflow用户

发布于 2018-04-09 11:44:22

目前接受的答案没有回答这个部分

是否有比Tornadofx更有用/更建议使用javafx的情况?

接受的答案的要点是,对于标准的简单GUI,Kotlin与TornadoFX相结合,可以使您快速运行。这是真的。一些直接的JavaFX更好的例子:

  • JavaFX三维子场景
  • 与Swing的互操作(我不知道您在这里如何使用Kotlin,但也许TornadoFX本身就能工作)
  • 基于画布的呈现
  • 高性能定制事件处理

显然,这些场景并不代表大多数GUI应用程序,而是高性能和自定义呈现类型应用程序。所以一般来说,如果你是从零开始.伊..。您还不熟悉JavaFX,那么使用TornadoFX是一个很好的起点。

在这一点上,选择以Kotlin作为起点也很有趣。我个人认为它并不比仅仅用JavaFX写作更有优势,但是我对JavaFX有着丰富的经验,所以我可能有偏见。而且虽然你不是被迫这么做的.在没有intelliJ的情况下在kotlin开发是痛苦的,这是该公司最初制造Kotlin的计划的一部分。

所有这些都是:

语法中包含样板代码。

这在某种程度上是正确的,“旋风”确实通过迫使您通过一组标准化的API来稍微减少一些样板。但是..。

这使得它很难维持。

我不同意。这并不“很难”维持。它是您复制/粘贴一次的代码,很可能再也不会更改。我们不应该以“可维护性”的名义,这么快地用“可维护性”的名义来掩盖和封装我们的代码库中的最后一个ASCII字符,同时将鱼雷发射到性能的一侧。

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48088960

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档