Dart做Android開發理想么?
Google現在真的是處于一個對Java騎虎難下的尷尬境地,Oracle時不時出來惡心一下大家就搞得Google很難受,不過用不用Java不光由Google決定,應用開發商也會有自己的選擇,Google并不敢孤注一擲。
甲骨文試圖逼Google就范:9行代碼引發的危機Java本來是開源技術,大家都只要遵守Java的開源協議,就可以免費的使用Java語言,可是創建Java的Sun公司被Oracle收購之后,Oracle變得有點為所欲為了,眼紅Android給Google帶來的商業利益,Oracle很明顯不愿意為其他企業免費做嫁衣。
2010年甲骨文公司一直訴狀將Google告上法庭,聲稱Google在開發Android時沒有經過許可就使用了Oracle應用https://www.52fb.cn接口數據包。 即使Google 為了避免版權危機重寫了Java API,可是還是因為有跟Oracle JDK相同的九行代碼,最終導致了版權危機。當然這其實是同一位工程師在兩家不同的公司工作過寫下的相同的代碼。可是因為這9行代碼,甲骨文曾經要求Google賠償88億美金。
從那之后Google一直在嘗試替代Java的可能方案,先后傳出過自家的Go、Python,以及JetBrains的Kotlin,現在又弄出了Flutter(基于Dart語言)作為客戶端解決方案,都是想要盡可能擺脫Java的掣肘。
只不過替代的難度很大,這么多年的技術棧積淀,Google對于Android生態的管控又遠遠不如蘋果,各手機大廠商的Android版本也不總是能第一時間跟上Google的步伐。
蘋果生態都在自己的管控下,能夠將iOS技術棧一夜之間從Objective-C更換到swift,反過來Google不行,現在Android10都出來了,使用Android 7.0以下的用戶占比依然超過了70%,Google有心殺賊、可是偏偏無力回天,正可謂騎虎難下。
更激進地、Google為了解決這個問題,Google甚至專門開發了一個Fuchsia這樣一個新的操作系統,試圖隨時替代Android,可是到目前為止Google也沒敢強行上馬。
阿里、騰訊都在用,Flutter促進Dart迎來新轉機?Flutter是完全基于Dart語言的一個開發框架,它更像是個https://www.b5b6.com/qianduan/解決方案,想必大家都已經很熟悉Electron、React Native這些https://www.b5b6.com/qianduan/客戶端解決方案,這些方案的優勢在于減少在iOS和Android兩端的重復開發,盡可能的一次編寫多端運行,減少開發成本。
Flutter的優勢在于,有Android Studio這樣一個出色的IDE支持,能夠開發Android、iOS、以及Windows等多終端應用,可以最大限度的實現技術復用,尤其是減少了很大的移動端開發成本。
阿里旗下二手交易平臺閑魚就是采用的flutter作為核心技術棧,盡管暴露出了一些問題,但是這卻讓閑魚團隊用了很小的人力成本就開發和維護了這個阿里內部用戶量排名前幾的App,很明顯Flutter很好的滿足了閑魚的技術需求。除此之外,Google自己旗下的應用,騰訊的Now直播團隊,滴滴、京東都在進行一些Flutter的嘗試,相信未來基于Flutter的應用會越來越多。
總之未來Android會逐漸向Dart遷移,而https://www.b5b6.com/houduan/服務會不會繼續以Java為主,我們講不清楚,畢竟你像微信用的還是C++,WhatsApp還是用的Erlang,應用開發商自己也有權利選擇采用什么樣的技術棧。