2012-10-11 38 views
1

我在確定在跨平臺環境中使用哪些技術時遇到問題。這是我迄今爲止的想法。我對COM和跨平臺兼容性感到困惑

  • Java是一門很好的編程語言,雖然我不太習慣它。而且由於我更喜歡​​使用像C++中習慣的Linq,委託等等的東西,所以我寧願不使用它。與用戶控制相比,我也不是Beans如何工作的忠實粉絲。

  • C#是我的首選語言。我喜歡它,並且我會稱自己是該領域的專家(但不是COM內的專家)。

  • C++是俄羅斯的一個城市給我。我覺得在使用這種編程語言時我會盲目地走路,並且與C#相比,這些事情需要花費更長的時間。

我正在爲4周的學校項目製作備份系統。不過,我未來有更大的意向。爲了使備份系統成功,它必須具有跨平臺兼容性。

因此,如果我在C#.NET COM中創建了一個類庫,並且在包含GUI的Java項目中使用該COM,那麼整個應用程序是否仍然可以跨平臺工作?

回答

1

我正在爲4周的學校項目製作備份系統。不過,我未來有更大的意向。爲了使備份系統成功,它必須具有跨平臺兼容性。

我的建議是把重點專門上着手完成4周學校項目的目標。不要增加不必要的複雜性(例如跨平臺支持),這可能會影響您的項目。使用您現在最熟悉的(適用的)技術。

一旦你完成你的課程,通過一切手段重新審視該項目,並嘗試把它變成更大/更好/更可銷售/任何東西。

(我們都可以夢想成爲下一個比爾蓋茨,但你是否認真地認爲你會用另一個備份程序致富和/或着名?)

1

理論上COM是跨平臺的,但它的實現依賴於Windows操作系統。除此之外,使.NET程序集COM可見並不會使它獨立於.NET運行時(CLR),因此您依賴於.NET(用於您的程序集)和Windows(用於COM)。但是COM和.NET的實現都有POSIX實現。 AFAIK對.NET有一個名爲Mono運行時,可以安裝在iOSAndroidPOSIX但學校項目,我不認爲你的老師接受它作爲跨平臺的,所以你應該使用JavaC++這在本質上跨平臺( Java與運行時兼容,C++與源代碼兼容)。