? ? ?2018 google I/O大會,發(fā)布了android P系統(tǒng),該系統(tǒng)更加注重 AI 人工智能特性,并引入了新的手勢,更加節(jié)能省電,同時也更加關(guān)注人們的數(shù)字生活是否健康,谷歌不希望人們花太多的時間在手機(jī)上,Google 一直以來都在優(yōu)化 Android 的用戶體驗(yàn)。雖然移動開發(fā)這兩年已經(jīng)接近飽和,但只要仔細(xì)觀察就不難發(fā)現(xiàn),是初級工程師的門檻在變高,而各個大廠的資深工程師、架構(gòu)師缺口仍然很大。
Android 技術(shù)每年在變化,不知道學(xué)哪些技術(shù)?
首先問你們一個問題,為什么想做 Android 移動開發(fā)?
1. 因?yàn)?Android 簡單好學(xué)嗎?不, Android 并不簡單也不好學(xué)。
2.因?yàn)?Android 開發(fā)輕松嗎?不, Android 開發(fā)直接面對的是用戶,細(xì)節(jié)的體驗(yàn)要求更高。
3.因?yàn)?Android 開發(fā)(互聯(lián)網(wǎng)行業(yè))薪水高?不見得吧,各行各業(yè)都有做得好的,即便是在互聯(lián)網(wǎng)行業(yè),移動開發(fā)的待遇未必在工程師中出于領(lǐng)先狀態(tài)。
這個問題我也一直在思考,回想自己是怎么走上 Android 這條路的。Google 通過技術(shù)改變世界,改善人們的生活,給人類更大的可能性,作為大生態(tài)中的一份子,貢獻(xiàn)出自己的一份力量,以后老了才不會后悔。我們要學(xué)習(xí)的技術(shù),是能夠帶給用戶愉悅體驗(yàn)的,是能夠符合 Google 的愿景 make good things 的,是讓用戶更加 wellbeing 的。
哪些技術(shù)必學(xué),哪些技術(shù)選學(xué),哪些技術(shù)推薦學(xué)?
先說必學(xué)
Java 基礎(chǔ)知識
Android 基礎(chǔ)知識
網(wǎng)絡(luò)基礎(chǔ)知識
圖片基礎(chǔ)知識
媒體播放基礎(chǔ)知識
Firebase ( I/O 持續(xù)優(yōu)化)
Kotlin (大勢所趨)
Support 包(搞向下兼容必須用到的東西)
構(gòu)建系統(tǒng)(包括 gradle maven proguard 等等)
測試框架(mockito )
Json 序列化和反序列化
組件化
Material Design
相機(jī)基礎(chǔ)知識
二維碼基礎(chǔ)知識
定位基礎(chǔ)知識
自動化腳本(如 python )
數(shù)據(jù)庫基礎(chǔ)知識
加解密基礎(chǔ)知識
再說選學(xué),選學(xué)的意思是用到了就學(xué),沒用到不學(xué)也沒關(guān)系
熱補(bǔ)丁技術(shù)
React Native
插件化
NDK 開發(fā)
直播技術(shù)
媒體播放高級知識(編解碼相關(guān))
VR 技術(shù)
Flutter 框架
Android 架構(gòu)框架
Android Things
最后說推薦學(xué)的
AR 技術(shù)
AI 技術(shù)( TensorFlow )
指紋技術(shù)
? ? 作為移動開發(fā)工程師,多想想如何才能讓用戶更加愉悅,那就少不了自己要多用,所以 Google 可以招到這么多優(yōu)秀的工程師加入,這些工程師每天每天(刻意重復(fù))都不斷地使用自己的產(chǎn)品,時間久了就會有終端用戶的代入感,才能設(shè)身處地為用戶考慮。如果你都不把自己當(dāng)成是產(chǎn)品的目標(biāo)用戶,可能一個起碼的自測都會忽視掉。