2010-01-29 37 views
5

我是一名計算機科學家,我一直在使用Java來開發應用程序。 我剛剛在一家使用ArcGIS製作項目的公司聘用。 該公司聘請了na電氣工程師來開發arcGIS項目。 這位工程師曾經用VBA定製ArcMap,最近用.NET和C#進行擴展。ArcGIS Development.Java和.Net(C#)

我想要一個新的路徑,並開始使用Java的ArgGIS引擎。 我想知道這個選擇是否正確。有沒有人使用Engine-Java進行開發,它有多困難(JNI的使用 - 我對此沒有多少了解 - 正在使它變得更加困難?)。 另外,我對.NET和C++有一點經驗,但不是C#。我將在這條路上有一個很大的學習曲線?

每種方法的優缺點和侷限性還有哪些?

+0

那麼,如果你知道Java,那麼你對C#沒有問題,它們是如此相似的兩種不同的語言可以,這幾乎是相同的語法 – Jonas 2010-01-29 12:06:18

+0

是的但我知道關於netbeans的一切,並沒有關於VS – 2010-01-29 12:11:29

+0

拿一個關於VS的簡短教程,然後你幾個小時就知道基礎知識,當你使用它的時候你會學到更多的東西 – Jonas 2010-01-29 12:16:03

回答

4

難以回答的問題。

  • 一般的意見似乎是,如果你知道Java,C#很容易學習。
  • 恕我直言,你最大的問題將是學習和操縱龐大,令人費解的ArcGIS對象模型。語言的選擇可能是次要的。
  • 我的直覺是,使用ArcGIS進行桌面編程可能會使C#/ .Net更受歡迎,所以您將獲得更多的社區支持。但我不知道。顯然有lot of folks使用Java with ArcGIS - 我懷疑它主要是服務器工作,但我不確定。您可以通過查看ESRI論壇活動來了解ArcEngine與Java的受歡迎程度。

編輯。您可能需要決定學習C#將來對您的僱主(以及您的職業生涯)是否有價值,並且在評估使用Java與ArcGIS引擎是否不常見並因此風險更高方面進行權衡。只有你可以回答第一個問題。

+2

+1:你的第二點指出它無論你選擇什麼語言,你總是對ArcObjects進行編程,語言本身僅僅是保持它們到位的粘合劑(如果你幸運的話)我已經在VBA中編寫了ArcGIS,VB 。Net,C#,F#,它是語言選擇最重要的應用程序中非ArcGIS相關的部分。 – cfern 2010-02-03 13:09:50

1

我會去的.NET和C#

如果你知道Java和C++比C#必須容易。你只需要通過.net框架找到自己的路。

如果您需要與arcgis和Silverlight(C#)一起製作一些豐富的互聯網應用程序,那麼您將可以安全使用C#。

3

我絕對在所有方面都建議你堅持使用C#/ .Net over Java。我最後一次看到(用一點鹽來看),使用ArcGIS完成的Java Library + COM inter-opt在處理某些元素時非常緩慢(數組,數組),我也確信Java最會可能是在不久的將來投入切割塊的下一種語言(VB6現在正在獲得斧頭)。同樣,ESRI的java社區與C#/ .NET相比是相當小的(然而它們大約是C++的50倍):()

+0

當我在ESRI網站上搜索時,Java的命中次數超過了C#。我很驚訝。可能Web服務器的東西不是桌面,但? – MarkJ 2010-02-06 12:20:24

+0

我注意到的關鍵差異是質量而不是數量。同時查看他們的ESRI開發網絡(EDN)。快速查看教程和示例代碼上傳,Java真的不在那裏。 但是,不管你怎麼做。使用ArcEngine/ArcObjects是痛苦的。如此痛苦。從我的工作經驗來看,我們在處理C#/ .Net時得到了最好的支持。 – UberJumper 2010-02-06 17:23:00