簡體   English   中英

適合替代java開發跨平台應用程序

[英]Suitable replacement for java to develop a cross-platform application

我一直用java來開發跨平台應用程序,但是,這次java無法解決我的問題。 問題是,我必須開發一個計算成本高昂的應用程序。 更准確地說,在我的應用程序中,有一個模擬有點太重。 我做了一個java原型應用程序,但它不夠快,我的模擬有一些滯后,所以我開始考慮切換到c ++。 我的應用程序有一個GUI,我想知道是否要切換到跨平台應用程序的c ++,我應該怎么做GUI? 我的問題是:

  1. 如果我使用Qt框架,我的應用程序會明顯更快嗎?
  2. 如果我部署我的jar文件到本機操作系統的可執行文件(.exe,的.app等)是我的應用程序將是顯著快?

ps Mac OSx,Windows和Ubuntu是我軟件的目標平台。

這篇文章可以幫助你,我幾年前面臨同樣的問題。 我決定堅持使用Java來完成我自己的編程經驗,因為我在C ++方面並不擅長,而且我的項目是誠實的,非常簡單。 如您所知,Java在全球范圍內非常普及,有大量的文檔和庫可供您使用,Qt更快,但您需要親自動手才能完成這項工作。 如果表現是你的目標,Go Qt。 或者將您的應用程序重新設計為hava Java / Swing GUI和C ++程序服務器端。 無論如何這里是鏈接。

http://turing.iimas.unam.mx/~elena/PDI-Lic/qt-vs-java-whitepaper.pdf

Java / Swing可能適用於某些項目,尤其是那些沒有GUI或GUI功能有限的項目。 C ++ / Qt是一個整體卓越的解決方案,特別是對於GUI應用程序。

使用C ++而不是Java可以提高CPU性能,有時甚至高達10-30%。 但是,使用多個線程也會增加可用的CPU數量。 鑒於使用多線程沒有幫助,我懷疑你的瓶頸不在CPU和切換語言不太可能有幫助。

C可以幫助編程顯卡,例如CUDA。 使用高性能處理卡可以顯着提高某些類型問題的結果。 http://www.nvidia.co.uk/object/cuda_home_new_uk.html有一些JOCL庫可以使用Java中的CUDA,但實際工作的代碼是用C語言編寫的。

我建議您確定瓶頸的確切位置,因為切換到C ++不會增加緩存大小,內存帶寬,IO帶寬或主內存大小。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM