問哪些問題能試出一個(gè)Android應(yīng)用開發(fā)者真正的水平?
第一
客戶端大部分對(duì)UI這部分要求比較高,因?yàn)楹玫囊曈X設(shè)計(jì)能更好的吸引住用戶。所以自定義view這方面需要問。view的繪制流程,事件的分發(fā)機(jī)制。
第二
移動(dòng)端應(yīng)用基本都會(huì)連網(wǎng)的,所以網(wǎng)絡(luò)這塊需要非常熟悉。當(dāng)然網(wǎng)上有很多現(xiàn)成的網(wǎng)絡(luò)框架比如retrofit ,okgo。用起來非常方便,但是開發(fā)者是否知道其內(nèi)部的原理。只有知道原理,當(dāng)公司需要網(wǎng)絡(luò)優(yōu)化的時(shí)候才能最少有方向去做
第三
是不是懂得熱修復(fù)。熱修復(fù)在國是內(nèi)非常火的。因?yàn)樗梢跃o急修復(fù)一些線上的bug而不需要重新發(fā)版。不過這方面中的坑挺多的,每個(gè)安卓版本可能也都不一樣,一般都是使用一些大公司開發(fā)的框架比如騰訊的Tinker,阿里的hotfix 還有滴滴,美團(tuán)都有。單獨(dú)開發(fā)坑太多沒必要,最少需要知道其原理,出現(xiàn)bug的時(shí)候好解決
第四
對(duì)一些主流的框架和庫是否熟悉或了解 比如mvp mvvp 框架 ,Rxjava glide retrofit butterknife dagger 等庫
第五
會(huì)不會(huì)測(cè)試。大部分的程序員都是只開發(fā)不測(cè)試,如果會(huì)單元測(cè)試,性能測(cè)試就更好了,這樣會(huì)讓代碼更加健壯。
第六
如果你是音視頻類的公司,就得問一下NDK方面的知識(shí)了,對(duì)各種編解碼是否熟悉,對(duì)網(wǎng)絡(luò)傳輸是否熟悉等
上面幾條能做好一點(diǎn),起碼是中級(jí)水平了。能做到3點(diǎn)是高級(jí)。
最后,如果這個(gè)人有博客或者github賬號(hào),并且每個(gè)月都在堅(jiān)持寫博客維護(hù)自己的小項(xiàng)目,說明這個(gè)人是個(gè)愛學(xué)習(xí)的。