是否有Java替代這些技術? 我發現大部分使用的數據綁定功能和INotifyPropertyChanged(以及容器和排序元素),但缺乏.NET的跨平臺使我想到Java。 你有什麼建議?有沒有同等的產品?一個實現XAML?Java MVVM和WPF替代
5
A
回答
7
技術(WPF)
如果你正在尋找一個替代WPF爲Java平臺,你應該看一看JavaFX。
該技術是非常相似的WPF在以下幾個方面:
- 的應用程序的用戶界面是由對象的樹叫由
Node
對象(這類似於WPF視覺場景圖由UIElement
對象組成的樹)。 Pane
節點及其衍生物在概念上與WPF佈局面板相似。- 用戶界面可以使用類似於XAML的名爲FXML的標記來創建。
- JavaFX提供的對象表示支持綁定和更改通知的屬性(思考依賴項屬性)。與依賴屬性不同,它們不受用戶界面技術的約束,因此您的模型類可以使用它們。
- 用戶界面可以使用CSS進行樣式化。
看看我對how does JavaFx compare to WPF問題的回答,它提供了WPF和JavaFX更詳細的(但仍然是高級別的)比較。
的設計圖案(MVVM)
MVVM模式是presentation model圖案的一個特例。可以在JavaFX中創建這種變體,因爲平臺提供了支持綁定的屬性,並且演示模型基本上是封裝模型狀態並提供對該狀態起作用的操作的對象。
雖然使用了模型 - 視圖 - 演示者模式的變體,我所見過的大多數例子都是這樣。開箱即用JavaFX支持非常簡單的MVP結構,其中每個視圖都與「控制器」類相關聯。這對於小型應用程序來說很好,但並不能真正提供很大的關注點。
2
也許你應該留意精彩的MVVMFX Framework。基於WPF和JavaFX之間的類似描述性UI聲明(FXML/XAML),他們試圖採用WPF開發的最佳實踐。
當然,它支持數據綁定概念併爲視圖,視圖模型和模型之間的通知實現必要的接口。 UI和它的UI邏輯(後面的代碼)是用fxml文件(用Scene Builder創建的)和強制性Java類來實現的。有許多很好的例子,不難理解它們的概念,因爲它是對最純粹的MVVM模式的嚴格實現。您所需要的只是在您的項目依賴關係中建立框架。
相關問題
- 1. CefSharp WPF和MVVM?
- 2. WPF MVVM和Observablecollect
- 3. WPF綁定MVVM和代碼背後
- 4. WPF和MVVM提示
- 5. 學習WPF和MVVM
- 6. MVVM,WPF和驗證
- 7. WPF MVVM和命令
- 8. MVVM和WPF結構
- 9. .NET/WPF替代
- 10. WPF替代python
- 11. WPF MVVM Light Messenger和Prism EventAggregator
- 12. WPF,MVVM和組合框
- 13. wpf mvvm threading.Timer和TimerCallback問題
- 14. WPF,MVVM和異步工作
- 15. WPF MVVM和依賴注入
- 16. 使用WPF和C的MVVM#
- 17. WPF,MVVM,ICommand的,和庫
- 18. MVVM ViewModel和Model Responsibilities(WPF)
- 19. WPF和MVVM。結合活動
- 20. 替代Application.DoEvents()在WPF
- 21. 將MVVM WPF C#代碼翻譯成vb.net
- 22. WPF中計算器的MVVM代碼
- 23. WPF MVVM +用戶控件代碼隱藏
- 24. WPF MVVM分頁
- 25. wpf MVVM ObservableCollection
- 26. MVVM - WPF桌面
- 27. 禁用WPF MVVM
- 28. WPF MVVM UpdateSourceTrigger = Excplict
- 29. WPF MVVM Pagesize
- 30. WPF - MVVM綁定
有人可能會爭辯說WPF最初是J2EE的無恥剽竊。就像 。Net本身就是Java的無恥剽竊(只是使用「static void Main()」和「string」,而不是「static void main()」和「String」)。恕我直言... – paulsm4
它可以爭辯,但不會回答被問的問題會嗎? –
WPF作爲J2EE的副本?你在吸菸什麼? – Paolo