1. 程式人生 > >致移動開發的後10年

致移動開發的後10年

不知不覺,移動網際網路開發已經經歷了從2009年到2018年這10年的黃金時期,也是移動的紅利期。現在回頭一想,除了一些慢慢被迭代優化掉的過時的技術,又有多少有價值的東西留下來呢?我相信很多人都難回答上來。

在一個技術大爆炸,不斷更新換代的時代,我們缺乏的不是對技術的學習和應用,而是總結和深入思考。我們不斷的在學習-應用-總結-迭代這個鏈條中迴圈進行,有一天我們再開啟我們的知識和經驗總結寶典,會發現會是一個非常強大的知識導圖,能夠串聯職業的每一個時間段。

因此培養自己的寫作和總結是非常重要的,不僅能夠鍛鍊自己的總結能力,更重要的是能夠分享、傳播、交流,和行業內的優秀小夥伴探討。2018是不平凡的一年,大家都能清楚的看見行業內發生的翻天覆地的變化,如果我們還不加快迭代自己,加強自己的護城河,很快就會被行業淘汰掉。拿android開發而言,如果你還停留在4大元件使用,停留在普通的列表工程師的水平,是時候該反省一下了!

曾經也和很多面試者打過交道,每個人的簡歷都包裝的很華麗,什麼熟悉okhttp,volley,glide等優秀框架的使用,熟悉主流RXJAVA,MVP,Retrofit等,用的非常6。但是問到核心原理實現,很少有候選人回答上來。所以我們對知識的追求還是太膚淺,停留在只會使用的水平上。

大家有沒有想過,如果讓你來進行類似okhttp,volley這類優秀框架的設計和核心實現,你的思路是什麼?框架再優秀,也是人寫出來的,其實你看了okhttp底層的原始碼,寫一個類似的框架也是很簡單的。沒你想的那麼複雜,後面咱們一起探索這塊的奧祕!

一說看原始碼,很多朋友都會說一頭霧水,饒了半天把自己給繞暈了,然後半路退出,這些都是自我設限的結果。我們看原始碼也不是漫無目的看,而是要抓住主線和核心去看。比如訊息匯流排eventbus,從傳送到訊息訂閱地方,這個主線流程是怎麼樣流轉的。okhttp的請求在佇列和內部執行緒池是怎麼處理和派發等。

閒扯了這麼多,我們迴歸現實,2019年之後的10年,我們該怎麼走,移動未來的方向是什麼?未來的發展一定是技術融合的時代,隨著rn和flutter等跨平臺技術的成熟,未來一定會走向多端合一的道路,減少企業的成本,甚至一套解決方案能夠跨移動和pc,以及各種物聯網裝置。去年研究和嘗試過rn的跨平臺解決方案,結合原生打通,達到了不錯的效果。但是隨著業務的膨脹,rn也會面臨各種挑戰,比如:js bridge效率的瓶頸,對android & ios底層原生的適配。近期看了flutter,完全拋棄js bridge的模式,直接通過engine引擎進行跨平臺,通過AOT(預編譯)成機器指令,提高執行效率,上層是通過dart語言構建各種widget。flutter的執行和渲染效率目前大於RN和weex,更接近原生體驗,隨著google對flutter的重視,以及第三方庫的豐富,我相信很快就能完全達到原生的體驗!更重要的是,flutter和google新一代移動作業系統fuchsia是完美結合的,完全可以替代原生。之所以google會提前在androidstudio中支援flutter,也是讓開發者提前體驗它牛逼的地方,後續可以無縫切換!

h5推出的時候,都說一定會幹掉原生app,可是這麼多年過去了。。。

新一代的跨平臺解決方案,能否替代原生,大家拭目以待,但趨勢不會改變,隨著車載晶片以及物聯網的發展,跨屏跨端的解決方案,一定能實現。

最後,讓我們一起進步,一起探索原生app以及跨平臺方案的深入原理,一起分享交流。未來已來,一個好的時代屬於勤奮的人,讓我們一起見證移動的後10年!
wx公眾號:zhangfmmobile,一起交流分享
在這裡插入圖片描述