2010-09-23 218 views
1

這次我正在處理這個問題,目前我們正在開始一個新項目,其中有幾項需求需要我們完成。最佳解決方案架構

  • 解決方案必須在Mac,Windows和Linux上運行。
  • 可以配置爲使用嵌入式數據庫引擎,如SQLite或Apache Derby,也可以配置爲連接到遠程數據庫引擎。 MySQL的實例。
  • 此解決方案的一個模塊計劃在Android OS下的桌面上運行。

    做了一些研究,我發現adobe air,它能夠解決大多數我們的需求,據我所知它可以在windows,mac和linux甚至android操作系統下運行。但不幸的是並不完美,因爲Peripherals處理程序(必須使用java代碼實現)和遠程數據庫處理程序(我們需要使用php或java代碼連接到它)有一些限制。

    。你們爲了這個架構解決方案,儘可能

回答

2

那麼好有什麼建議,有很多跨平臺的框架,以供選擇。什麼是適當的取決於許多因素。下面是一些你可能看:

  • 使用Java腳本語言(使用擺動,可能SWT + JDBC)
  • JavaFX的
  • 如Python(不知道GUI語言,你可以使用則)

對於Android來說,Java可能是最好的選擇,因爲它是官方推薦的語言/ API。此外,它被廣泛使用,並提供免費軟件。

我是誠惶誠恐的Adobe AIR的,因爲它是一個專用平臺,所以你永遠是在Adobe的憐憫支持新的平臺等。但是,這是你的決定,使...

還要注意的是Adobe AIR中的Android仍處於測試階段:

Adob​​e的AIR SDK和Adobe AIR運行時計劃於2010年 集成的工具支持,下半年將支持Android的 將 在稍後公佈日期。

http://labs.adobe.com/technologies/air2/android/

+0

我很清楚,使用swing技術的java可以在窗口,linux或mac機器上運行。但我怎麼能解決這個與andoroid?可能實施了SOA?,那麼如何通過桌面開發開發SOA並試圖避免應用服務器或Web服務器安裝 – rfders 2010-09-23 22:44:41

+0

@rfders:我不明白你的問題。 Java應用程序可以在Android以及Android上運行。當然,您可以將您的應用程序的一部分實現爲SOA,但這與語言無關。 – sleske 2010-09-24 14:29:04

+0

可以說我使用java和swing技術開發了我的解決方案,它可以很好地運行在win,mac和linux機器上。但Android呢?我知道Android Os支持Java作爲編程語言,但揮杆怎麼樣?可能我的完全GUI必須重新設計並重新開發,那麼,我的業務類怎麼樣,當我的解決方案中沒有任何Web或應用程序服務器時,如何才能公開作爲服務?我不知道我是否清楚自己。但我有點困惑,我該如何處理這些論題。 – rfders 2010-09-24 14:46:08

0

你可以看看對答案面向服務的體系結構。如果你開發了一些直接連接到你的數據庫的服務,那麼你可以利用這些服務從許多平臺,甚至android或iphone的。 Adobe AIR是我看過的內容,但從我讀過的內容來看,我無法獲得足夠的信心。 Web服務,特別是如果沿着REST路線走下去,可以提供很多優勢。

+0

如何實現開發桌面應用程序的SOA,有可能做到這一點,我們正在研究避免Web服務器安裝的事實? – rfders 2010-09-23 22:46:53