javafx11 最佳实践
到现在为止,所有对JavaFX感兴趣的人都会知道,JavaFX Mobile发行了不久
前。 可以肯定的是,这真是令人难以置信。 我感到非常筋疲力尽,在发行期间我什至没有精力去写博客……
前。 可以肯定的是,这真是令人难以置信。 我感到非常筋疲力尽,在发行期间我什至没有精力去写博客……
但是到目前为止,我感到很恢复,并且想开始一些有关在准备发行版时所学到的经验的系列文章,并给出一些如何提高JavaFX Mobile应用程序性能的提示。
警告 :我在这里给出的技巧对于JavaFX Mobile的当前版本是正确的,该版本是JavaFX 1.1 SDK的一部分。 在以后的版本中,行为会改变,
当前提到的伪像的不良性能将被优化或至少得到显着改善。 我在这里写的所有内容都是快照,不应理解为
最后!
项目1:避免不必要的绑定
绑定非常方便,毫无疑问是JavaFX Script中最有价值的创新之一。 不幸的是,它们带有代价。 生成的样板代码通常不那么小,并且
就像手动执行一样快。 尤其是复杂的依存结构往往会严重影响性能和占用空间。
因此,建议尽可能避免绑定。 通常,可以使用触发器来实现相同的功能。 人们不应该使用绑定来避免处理初始化顺序的麻烦。 并且绑定到恒定值当然没有任何意义。
如果绑定变量的更新次数更多,然后读取,则大多数时候(但并非总是如此!),懒惰绑定会更快(但并非总是如此),但它们仍不如手动实现的快。
例
一个常见的用例是许多节点,这些节点的位置和大小取决于舞台的大小。 一个典型的实现使用绑定来实现这一点。
在这里,我们将看一个类似于这种情况的简单示例。 场景由三个矩形组成,这些矩形从左上角到右下角倾斜排列。 矩形的大小是屏幕大小的四分之一。 代码示例1显示了具有绑定的实现。
def rectangleWidth: Number = bind stage.width * 0.25;