從09年iOS開發(fā)出來,到現(xiàn)在!
這個(gè)當(dāng)時(shí)豐盛一時(shí)的開發(fā)語言,現(xiàn)在似乎已經(jīng)開始走下坡路了!
一批人離開了,但是還有一群人選擇留在這里,那這篇總結(jié),希望能夠幫助到還留在這個(gè)行業(yè)的偉大的開發(fā)者們~
中高級(jí)進(jìn)階,這是現(xiàn)在這個(gè)市場(chǎng)討論的最多的一個(gè)話題,長(zhǎng)時(shí)間的開發(fā)經(jīng)驗(yàn)總結(jié),現(xiàn)在占據(jù)iOS中級(jí)開發(fā)層面的程序員應(yīng)該是這個(gè)市場(chǎng)上面基數(shù)最大的一群人,或者說,還有那么一批人,根本就不知道自己屬于哪個(gè)階段的開發(fā)者!
根據(jù)身邊的朋友技術(shù)以及薪資水平來看,小編總結(jié)了一些在各個(gè)階段開發(fā)者必須要具備的一些技能,不妨可以花一分鐘了解一下!
初級(jí)開發(fā)者應(yīng)該具備:
- 能完成基本的UI界面搭建
- 了解網(wǎng)絡(luò),能利用網(wǎng)絡(luò)框架上傳
- 熟悉iOS常用內(nèi)置的API
- 能使用常用的第三方框架
- 能根據(jù)業(yè)務(wù)邏輯,完成數(shù)據(jù)與UI聯(lián)系
中級(jí)開發(fā)者應(yīng)該具備:
- 能夠快速完成界面搭建
- 能夠根據(jù)項(xiàng)目業(yè)務(wù)邏輯以及項(xiàng)目需求封裝出常用的工具類
- 熟練常用iOS內(nèi)置API
- 能根據(jù)業(yè)務(wù)需要快速選擇合適的第三方,并快速完成第三方學(xué)習(xí).
- 了解常用第三方框架底層并能做二次封裝
- 具備基本的架構(gòu)能力.能夠根據(jù)項(xiàng)目以及業(yè)務(wù)方向設(shè)計(jì)健壯的項(xiàng)目架構(gòu)
- 較好的編程習(xí)慣
- 具備一定的產(chǎn)品意識(shí)
高級(jí)開發(fā)者應(yīng)該具備
- 第三方庫安全性評(píng)估
- 架構(gòu)風(fēng)險(xiǎn)評(píng)估,項(xiàng)目風(fēng)險(xiǎn)評(píng)估
- 具備創(chuàng)新并開發(fā)出新框架的能力
- 有自身技術(shù)專項(xiàng)領(lǐng)域.在這個(gè)領(lǐng)域有積累有造詣,解決公司核心業(yè)務(wù).比如項(xiàng)目安全.圖形圖像處理,音視頻.能夠幫助公司攻克技術(shù)難度,做技術(shù)預(yù)研.
其實(shí)不管你處于哪個(gè)階段,保持“危機(jī)感”!這是促進(jìn)你不斷提升自己的驅(qū)動(dòng)力!
小編給大家推薦一個(gè)iOS技術(shù)交流群:763164022!群內(nèi)提供數(shù)據(jù)結(jié)構(gòu)與算法、底層進(jìn)階、swift、逆向、底層面試題整合文檔等免費(fèi)資料!希望找到更多的同行多多交流!
吹了這么久的水,應(yīng)該要上干貨了!
Runtime技術(shù)點(diǎn)導(dǎo)圖:
Runtime 又叫運(yùn)行時(shí),是一套底層的 C 語言 API,其為 iOS 內(nèi)部的核心之一,我們平時(shí)編寫的 OC 代碼,底層都是基于它來實(shí)現(xiàn)的。
Runloop技術(shù)點(diǎn)導(dǎo)圖:
我相信大多數(shù)開發(fā)者一樣,迷惑于runloop,最初只了解可以通過runloop一些監(jiān)聽事件的通知來做一些事情,優(yōu)化性能。關(guān)于runloop源碼的基礎(chǔ)知識(shí),可以參考下面的思維導(dǎo)圖:
多線程技術(shù)點(diǎn)導(dǎo)圖:
多線程是一個(gè)比較輕量級(jí)的方法來實(shí)現(xiàn)單個(gè)應(yīng)用程序內(nèi)多個(gè)代碼執(zhí)行路徑, 從技術(shù)角度來看,一個(gè)線程就是一個(gè)需要管理執(zhí)行代碼的內(nèi)核級(jí)和應(yīng)用級(jí)數(shù)據(jù)結(jié) 構(gòu)組合。
設(shè)計(jì)模式相關(guān)導(dǎo)圖
設(shè)計(jì)模式(Design pattern)是一套被反復(fù)使用、多數(shù)人知曉的、經(jīng)過分類編目的、代碼設(shè)計(jì)經(jīng)驗(yàn)的總結(jié)。
使用設(shè)計(jì)模式是為了可重用代碼、讓代碼更容易被他人理解、保證代碼可靠性。 毫無疑問,設(shè)計(jì)模式于己于他人于系統(tǒng)都是多贏的;模式使代碼編制真正工程化;設(shè)計(jì)模式是軟件工程的基石脈絡(luò),如同大廈的結(jié)構(gòu)一樣。
架構(gòu)/框架相關(guān)導(dǎo)圖
“100個(gè)讀者就有100個(gè)哈姆雷特”一樣,對(duì)于架構(gòu)的理解不同的軟件工程師有不同的看法。架構(gòu)設(shè)計(jì)往往是一個(gè)權(quán)衡的過程,每一個(gè)架構(gòu)設(shè)計(jì)者都要考慮到各個(gè)因素,比如團(tuán)隊(duì)成員的技術(shù)水平、具體的業(yè)務(wù)場(chǎng)景、項(xiàng)目的成長(zhǎng)階段和開發(fā)周期。下圖是小編的一些架構(gòu)理念,僅供參考:
算法相關(guān)技術(shù)導(dǎo)圖
第三方庫相關(guān)導(dǎo)圖
最后:
不管你現(xiàn)在屬于哪個(gè)階段,保持學(xué)習(xí)初心,不斷進(jìn)步,才不會(huì)被這個(gè)高速發(fā)展的技術(shù)世界所淘汰!
小編給大家推薦一個(gè)iOS技術(shù)交流群:763164022!群內(nèi)提供數(shù)據(jù)結(jié)構(gòu)與算法、底層進(jìn)階、swift、逆向、底層面試題整合文檔等免費(fèi)資料!希望找到更多的同行多多交流!