2009-11-20 72 views
1

我目前正在爲一家制造公司(針對會計部門,銷售部門,生產部門)的不同用戶設計3個數據庫桌面應用程序。所有應用程序都有不同的功能,但他們應該能夠訪問其他部門的數據以反映業務事務。什麼是用於此類項目的最佳編程語言和數據庫?這三臺電腦沒有物理連接,所以我想讓他們訪問遠程數據庫。我最熟悉的語言是Java,但如果它對公司更有利,我很樂於學習其他語言。我也在考慮不得不使用Adobe Air,因爲我擅長網絡編程,但仍可以作爲桌面應用運行,但我似乎無法找到足夠的使用Adobe air的分佈式系統資源。任何想法將非常感激。謝謝!什麼是該項目最好的開發工具?

回答

1

大量的語言將做到這一點就好了,包括Java。你熟悉這一點,所以我的建議是堅持它的一個警告:根據你的要求,我會認真建議檢查使它成爲一個Web應用程序的可能性。桌面數據庫應用程序有些老式。更重要的是,他們會爲你造成一堆麻煩,比如安裝,Swing煩人而且乏味等等。

至於什麼數據庫,你沒有指定禁止要求,什麼都可以,像MySQL。

因此,對於桌面Java應用程序我想:

  • 將數據庫的遠程服務器上;
  • 將應用程序服務器或Web容器放在同一臺服務器上;
  • 在應用程序服務器上創建Web應用程序以處理RPC;
  • 選擇RPC的方法,無論是Web服務或什麼的,並使用Spring來實現它;
  • 創建了一個Swing桌面Java應用程序,它通過Webstart的(JNLP)配送到應用服務器的客戶端。

如果它是一個Web應用程序:

  • 放在一個服務器上的數據庫和應用程序服務器或Web容器;
  • 選擇一個Java Web框架,並創建一堆網頁,做你想做的。

在所有情況下,它都是相同的應用程序,但只是在用戶類型上採取不同的行爲。這比維護三種不同的應用程序要好得多。

此外,如果你做一個Web應用程序,你可能要考慮使用PHP,因爲它是敲了網頁,可能足以讓你做的那種內部應用程序的快速和可靠的方式。

+0

感謝您花時間回答!是的,我同意使用不同的用戶類型建議的應用程序,所以我會堅持這一點。我正在尋找一個桌面解決方案,因爲該公司更喜歡這個選項,所以我正在研究您建議的桌面Java應用程序。問題是,桌面應用程序如何與Web應用程序進行快速比較?我在考慮,如果網速很慢,至少在桌面應用程序中,他們可能遇到的唯一問題就是數據的同步化 – Lulu 2009-11-20 04:02:45

相關問題