2010-07-13 60 views
0

我有興趣開發一個跨平臺的應用程序(主要用於Windows和Mac,Linux不是那麼多),它需要一個有點但不過分複雜的GUI(顯示圖形數據),並且還必須通過USB接收來自外部控制器的輸入。我感興趣什麼語言或語言組合(或框架,或其他)的堆棧溢出讀者會建議以及爲什麼。我熟悉C#,Java,Python和Ruby,並且已經將我的腳趾頭放在了函數式語言庫中,但是如果它有意義的話,它會願意學習新的東西。最好的跨平臺GUI和USB語言

回答

0

我建議Java加JFreeChart爲一個好的圖形工具包。您還沒有提及您正在與之通話的USB設備類型,但使用帶有創建虛擬COM端口的驅動程序的USB設備(然後通過rxtx訪問),我已經取得了一些成功。

谷歌搜索Java USB庫,我發現jUSB(Windows + Linux)javax.usb(Linux + alpha Windows支持)。我懷疑支持OSX會很困難。

+0

是的,OSX似乎是關鍵。這是我傾向於Ruby的原因之一,但在Ruby中似乎並沒有一個非常好的USB庫。 – David 2010-07-16 19:42:10

1

Tcl/Tk值得考慮。它可以說是任何其他語言的跨平臺。如果你正在開發一個你想要發佈的產品,沒有任何語言與tcl/tk有什麼關係,它們與starkits,tclkits和starpack(混淆術語; google是你的朋友)有什麼關係。想想在虛擬文件系統中包含所有內容(dll,圖像,聲音,代碼)的單一文件分發。

它本身沒有USB支持,但Tcl的強大之處在於,用C編寫的代碼擴展語言非常非常容易。因此,使用C編寫USB專用代碼,然後創建Tcl中的GUI。

有些人不喜歡Tcl - 這是一種稍微不尋常的語言,你幾乎可以在一天內掌握它,或者你可以使用它一年,但仍然不太滿意。這在一定程度上取決於你是多麼開放。

有些人也說Tk過時或醜陋,但a)醜陋在旁觀者眼中,b)有時醜陋無關緊要。如果你正在製作一個內部應用程序,這個應用程序看起來像是一個Windows應用程序的100%,或者90%足夠好嗎?通常,足夠好足夠好。

+0

+1,一個寫得很好的,深思熟慮的論點。 – ewall 2010-07-14 03:32:28

+0

謝謝,我會對此進行調查,但我的快速檢查表明您的權利,它可能需要我一段時間。 – David 2010-07-16 19:40:51