JavaFX实际应用程序:AISO HRC-Matic
“ Real-World JavaFX Apps”系列中的第三個應用程序是一種重型數據輸入應用程序,由稱為HRC-Matic的關系數據庫支持。 它是由AISO在日內瓦開發的。 AISO是一家專門開發基于JavaFX的業務應用程序的公司。 他們還在研究我在本系列的第一個博客( 歐洲廣播聯盟 )中介紹的應用程序。
瑞士當局使用HRC-Matic來注冊企業(所有權,法律地位,資金,聯系人)。 該應用程序將在安裝它的每個州中被大約20個用戶使用。 該軟件目前正在納沙泰爾,日內瓦,沃州和弗里堡地區進行最后批準階段。
下圖顯示了應用程序呈現給用戶的各種形式。 如您所見,這全部與數據輸入有關。
日內瓦注冊表– AISO本身的條目
值列表框(LOV)的實際應用
JEntityFX數據表,用于快速輸入數據
復雜表格/基于標簽的導航
該項目面臨的最大挑戰是表格視圖的局限性以及對鍵盤導航的總體支持。 我被聘為HRC-Matic項目的顧問,并且對使鍵盤導航順利進行(尤其是與表格視圖結合使用)所做的努力有很多見識。
對于用于快速,大量數據輸入的應用程序,用戶必須能夠高效,快速地輸入數據(盡可能少的鼠標交互和鍵盤敲擊),這一點至關重要。 對于表格視圖,這意味著用戶可以立即開始編輯表格單元,而無需雙擊它或先按空格鍵。
用戶還應該能夠輕松跳轉到表的第一行或最后一行。 焦點處理需要是可配置的,以便按下最后一列中的tab鍵會導致同一行的第一列(如果需要,則顯示下一行)以接收焦點。 我被指派自定義標準表視圖,并最終成功了,但是要花費大量代碼,大量專門知識以及很多擺弄才能達到該目標。
以下是AISO的Jean-Michel Verchere(主任)和ChristopheBédert(信息系統架構師)提供的訪談答案。
一般的問題
您的產品/項目的名稱是什么?
產品的名稱是HRC-Client,項目的名稱是HRC-Matic。 HRC是和“R egistre杜?ommerce”德語和法語分別意為“egister?andels R” HR和RC的組合。 “ Matic”是指寄存器中的任務自動化活動。
您的用戶/客戶是誰?
客戶是加入該項目的日內瓦,沃州,納沙泰爾和瑞士弗里堡州的商業登記冊。
您的軟件的目的是什么? 有什么好處?
HRC的目標是建立一個完整的解決方案,以協助管理瑞士商業登記的全部活動。 該軟件用于管理公司注冊,修改或注銷的請求。 這些請求是由公司代表提出的。 可以通過Web應用程序在Internet上訪問公司的公共信息。
該應用程序可以運行嗎? 如果是的話,從什么時候開始。 如果不是,您打算什么時候上線?
該產品目前處于預生產階段,并將于9月底在所有站點投入生產。
您的項目預算多少?
整個項目的總預算為180萬美元。 對于HRC JavaFX客戶本身,預算為100萬美元。
發展歷程
您是如何將必要的JavaFX專有技術帶入您的團隊的? (顧問,內部/外部培訓課程)?
JavaFX專業知識是在內部建立的。 AISO已經在Java方面具有很強的技能,尤其是在Swing中。 AISO為Swing的發展開發了自己的內部框架,稱為JEntity。 隨著JavaFX的到來,設計了一個新的框架:JEntityFX。 Dirk Lemmermann向該框架提供了他的外部視野和出色的框架專業知識。
您是從哪個版本的JavaFX開始的? 一二八
最初,該項目是用Swing編寫的。 在開發的開始,發布了JavaFX版本2,并切換到JavaFX。 今天,該應用程序已適應JavaFX 8。
您何時開始開發該應用程序,它花了多長時間?
開發于2012年底開始,歷時3年。
有多少開發人員從事此工作? 總體上和在用戶界面上。
核心團隊由2個開發人員組成。 其他開發人員有時也為UI和其他模塊做出了貢獻。
應用程序有多大? 代碼行,類數。
舊的應用程序大約有210個屏幕。 使用JavaFX,應用程序UI可以響應分組,簡化和通用的屏幕。 因此,該應用程序包含約60個屏幕,這些屏幕具有許多主/從關系,并具有數據庫中的約110個關聯表。
JavaFX客戶端有多大? 代碼行,類數。
170'000線,3'074班
您為什么選擇JavaFX作為前端技術? 非常重要的一點:為什么不選擇HTML / Web?
客戶需要真正的可持續性(8至12年)。 先前實現的開發始于1992年,并于2007年結束。必須能夠提供與先前版本相同的功能和行為。 JavaFX的唯一替代品是Microsoft .Net。
由于以下原因,排除了Web技術:
- 無法保證可持續性。
- 短期技術生命周期。
- 低性能風險。
- 客戶使用的各種Web瀏覽器存在兼容性風險。
- 由于網絡技術的變化而導致的升級費用。
說服決策者同意JavaFX難嗎?
最初,該項目應該是用Swing編寫的。 我們必須說服我們的客戶,主要是所涉及的IT部門,他們擔心JavaFX對于這種類型的應用程序不夠穩定。
您在JavaFX部分面臨的最大挑戰/問題/問題/錯誤是什么,您如何解決它們?
鍵盤導航:在整個應用程序中,鍵盤導航和實現標準鍵功能存在很多問題。 這個想法是要有一個使用最少的鼠標就可以使用的應用程序。 若要解決此問題,我們必須用自己的控件來替換受影響的控件EventDispatcher。
可編輯的TableView:我們必須重寫標準TableView并重寫焦點系統,因為從用戶體驗的角度來看,標準的可編輯TableView無法正常工作。
您使用了哪些第三方產品/框架/工具(開源和商業),為什么選擇它們?
我們內部的JavaFX框架JEntityFX(尚未發布)。
您是否混合了JavaFX和Swing代碼?
沒有
外表
您會在下一個項目中再次使用JavaFX嗎? 請詳細說明原因或原因。 您對其他公司/項目的JavaFX有哪些建議?
是。 JavaFX沒有限制。 我們已經開發了自己的專業業務應用程序框架,該框架將用于將來的所有富客戶端應用程序。
必須有一個框架來結構化和工業化JavaFX開發。
這使我們能夠專注于應用程序的功能方面以及對用戶具有高附加值的特定組件的開發。
您希望將哪些功能添加到JavaFX?
在可編輯模式下重做TableView。
您打算提供移動版本的應用程序還是移動附件?
不,不是在不久的將來,但是我們正在為將來的項目考慮這一點。
翻譯自: https://www.javacodegeeks.com/2015/09/javafx-real-world-apps-aiso-hrc-matic.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的JavaFX实际应用程序:AISO HRC-Matic的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: 嬴政铭文出装cat(嬴政铭文出装2021
- 下一篇: 小企业财务制度备案范本(小企业财务制度备
