[英]JavaFx vs TornadoFx
我已經開始研究javafx
。 我想知道javafx
和Tornadofx
之間的區別。 它們如何相互關聯,彼此不同。
還在何時使用什么。
是否有任何情況下javafx
比Tornadofx
更有用/建議使用,反之亦然?
JavaFX更像是一個工具包(它具有構建GUI所需的所有基礎)。 它是一個功能完整的“工具包”,但它非常冗長,語法包含樣板代碼,這使得它很難維護。 這就是TornadoFX的用武之地.TornadoFX就像一個基於該工具包的框架,它取消了所有樣板代碼,並使GUI構建聲明,使其類似於HTML。
此外,即使可以從Java使用TornadoFX,它也可以在Kotlin中使用(JavaFX也可以在Kotlin中使用,沒有任何問題)。
TornadoFX簡化並簡化了GUI構建過程(使代碼更清晰),但它“使用JavaFX”,因此可以與JavaFX互操作。 例如,您可以使用純JavaFX代碼創建窗口小部件,然后在TornadoFX中使用它,或者,例如,在TornadoFX中創建整個窗口,然后從JavaFX調用它。
這里的主要內容是TornadoFX不以任何方式限制JavaFX,您仍然可以從TornadoFX獲得低級JavaFX。
除了GUI構建器之外,TornadoFX還包含有用的工具,如ViewModel
類,它們分離GUI和邏輯(可用,但不以任何方式強制),以及一些其他有用的工具。
就個人而言,我總是使用TornadoFX,因為它使代碼非常簡潔,易於維護,同時,JavaFX的任何功能都不會丟失。
目前接受的答案沒有回答這一部分
是否存在javafx比Tornadofx更有用/建議使用的情況
接受的答案是,對於標准的簡單GUI,Kotlin與TornadoFX相結合將使您快速運行。 這是真的。 直接JavaFX更好的一些例子:
顯然,這些場景並不代表大多數GUI應用程序,而是高性能和自定義渲染類型應用程序。 所以一般來說,如果你是從頭開始...即......你還不熟悉JavaFX,那么使用TornadoFX是一個很好的起點。
在那個選擇使用Kotlin作為起點的說明也很有趣。 我個人認為它不僅僅是在JavaFX中寫作有利,但我對JavaFX有很多經驗,所以我可能會有偏見。 此外,雖然你沒有被迫這樣做...但是在沒有smartJ的情況下開發kotlin是痛苦的,這也是該公司制定Kotlin的計划的一部分。
所有這些說:
並且語法包含樣板代碼
這在某種程度上是正確的,並且Tornado確實通過強制您通過標准化的API集來減少樣板。 但...
這使得它很難維護。
我不同意。 維護並不“難”。 它是您復制/粘貼一次的代碼,可能永遠不會再次更改。 在將“魚雷”射入我們演出的一側時,我們不應該急於以“可維護性”的名義模糊和封裝我們代碼庫中的每個最后一個ASCII字符。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.