首頁>Club>
雖然可以透過使用Xamarin,來用c#開發安卓程式,但是我不明白為什麼不可以直接把c#作為安卓的開發語言?只要遵循c#的語言規範把c#編譯為安卓支援的可執行程式碼和檔案格式就可以了啊!為什麼不可以?
32
回覆列表
  • 1 # kevinlq

    瀉藥

    首先你要明白,C#使用的是微軟的一套東西,android使用的是谷歌的一套環境,兩者屬於不同的東西。

    其次,從效率和效能上來將,使用C#來開發android本身就很累贅。

    雖然可以使用第三方外掛【Mono for Android】來實現android程式設計,但是最終還是將程式碼轉換成了java,為何要使用C#開發呢。

    這個問題和目前Qt開發android類似,道理也是類似的,但是Qt公司方向會越來越遠,估計以後使用Qt開發android或許成為可能。

  • 2 # shrimp312

    1、C#難度相對java較高;

    2、android應用支援JNI/NDK程式設計,即android已經提供API直接使用C#開發。

  • 3 # 專案管理沉思錄

    C#當然可以開發Android。微軟的Xamarin就是針對android和ios平臺推出的開發環境,vs2015和vs2017都支援。我以前的一個同事創業,他只對c#熟悉,就是使用的Xamarin開發了android和ios移動應用,而且順利完成了專案。

  • 4 # a守望相助

    中國基本狀況是人云亦云,似乎一夜之間c#語言就沒有未來了,但事實情況是,在中國以外,c#開發人員佔比超過50%。其實原因很簡單,java免費資源多,門檻低而已。真正比起來,語言沒有什麼誰強誰弱,但就IDE來說,visual studio將一切java的開發工具甩一個銀河系。有些java開發人員到處噴,其實是因為無知,不怪他們。

  • 5 # 貓靈落櫻

    我們公司的一個跨平臺專案就是基於.NET Mono開發的,在很多應用場景下要比java好用,而且大家都是虛擬機器,其實效能差異不大。Slack和MS to-do還有Unity也是基於這一技術。

    Unity是被狗吃了嗎?你們這些立場不正的傢伙……

  • 6 # 槡槡槡

    只會C#,想開發JVM。可以試試Kotlin,號稱C#程式設計師無縫切換,而且比Java好用很多,說不定能替代java呢。

  • 7 # 薛定諤的呵呵

    這個問題和微軟的發展戰略也有關係吧。一開始微軟也想推自己的WP,一開始的時候出於這個考慮,他就不大可能把自己的資源拿過去支援競爭對手,如果用vs搞安卓,讓WP情何以堪?不過現在看來WP已經是氣數已盡了,說不定會調整戰略,直接在VS下提供安卓的開發工具

  • 8 # 三千七百

    估計你想問的是為何adroid的開發語言沒有一個執行在dot net體系下,就像Delphi,Python for .NET 這些語言一樣對吧。dot net的確是語言中立,理論上任何語言只要開發商願意,都能搞一套for .net的出來。可惜前提是“開發商願意”,開發商不願意就沒辦法了啊哈哈

  • 9 # MageBJ

    不考慮效能是可以的。但是有什麼好處呢?

    如果你一定要扯語法,kotlin我覺得不比c#差。其實在微軟的c#教程書上,也有說採用Java那樣的嚴謹的語法。所以哪怕是Java,語法本身也沒說的那麼不堪。

  • 10 # 殤oO

    其實很簡單,就是因為利益。技術上不存在什麼問題,.netfromework理論上也能安裝在linux上。只是微軟他為了自己的利益不這麼做。

  • 11 # 朱猷榛

    我就想問,語法的問題好解決,庫的問題怎麼辦?那麼多的三方庫,全部轉換一次成c#可以呼叫的,在開發環境呼叫,然後打包成apk?

  • 12 # 武漢兩孩他爹

    Google提出kotlin的原因是java雖然免費使用但智慧財產權不屬於google,google不能改java,同樣的c#也如此。

  • 13 # 資訊化民工

    1、不管是java還是c#底層都是c++,只是微軟戰略的問題,技術實現上肯定沒問題。

    2、c#現在也跨平臺,有vs這個智慧開發工具,效率比java高,在非windows平臺上,效能與java差不多,開發效率高於java。只是微軟開源得晚。

    3、再加上大資料平臺很多套件基於java開發,所以近些年拉高了Java的市場。

    4、很多高校不開c#課程了,所以c#新開發人員少了,導致部分公司轉型為java。

    總結而言,接下來看微軟的開源策略和支援程度,加把勁的話,還可以把c#回到之前的市場。

  • 中秋節和大豐收的關聯?
  • 為什麼飛機在空中著火,不採用空中滅火呢?