2014-01-21 37 views
7

可以推薦clojure生態系統的哪些技術來開發獨立的桌面應用程序?我正在尋找的技術應該支持用clojure編寫的桌面應用程序

  • 訪問本地文件系統(例如文件對話框)。
  • 通過訪問網頁的HTTP/HTTPS
  • 更新桌面應用程序
  • 異步支持(運行多線程)
  • 跨平臺(無需智能手機雖然)
  • 原生庫互操作支持
  • 支持(不是100%的要求,但是如果它不支持它,這是一個風險)
  • 合理的生態系統。例如。我需要將xml文件驗證爲xsd,最後我需要進行一些線性代數計算。

有以下兩個選項來我的腦海:

的Clojure /蹺蹺板:

  • - 需要Java運行時
  • - 標準揮杆外觀/感受可能是一個缺點
  • ++強大的java平臺
  • ++巨大的生態系統
  • ++互操作支持不是問題
  • ++ core.async

clojurescript/HTML5/CSS:

  • ++可與節點的webkit一起使用或appjs到提供獨立桌面應用程序。更小的生態系統 - 通過CSS
  • ++強大的平臺
  • ++靈活的外觀/感覺。例如。那麼處理XML文件或支持數學庫呢?
  • - 互操作性支持可能是一個問題。我可以打電話給node-webkit的本地庫?
  • - 單線程環境,異步支持呢?
  • - 不清楚如何更新應用程序。

立柱

  • ++開發簡化應用程序架構
  • - 不知道它可以部署爲節點的WebKit應用程序或appjs。
+3

Clojure Google小組是這個問題的更好地方。 – Mars

回答

4

我覺得clojurescript +節點WebKit是一個不錯的選擇:

  • 它支持原生庫,
  • clojure.core.async,
  • 你自己通過簡單實現一個簡單的更新HTTP請求或socket.io,
  • lighttable就是一個很好的例子。
0

Electron應該是NW.js(node-webkit)的替代品,並且在何時顯示和隱藏窗口方面提供更大的靈活性。