iOS高級進(jìn)階方向

本文主要是對近幾年了解到的iOS知識晾剖,做總結(jié)镶奉、進(jìn)階目標(biāo)是鬼。

目錄

1.蘋果官方文檔 & 新API

2.iOS第三方庫源碼 & 實(shí)現(xiàn)原理

3.iOS標(biāo)配技能

4.iOS多線程

5.iOS架構(gòu) & 代碼規(guī)范

6.iOS工程化管理

7.蘋果官方Kit

8.Runtime & Runloop

9.iOS FFmpeg & Opencv原理

10.iOS底層原理

11.iOS App逆向

12.iOS Swift13.本文沒有提到的知識點(diǎn)

14.明確自己的定位和路線

推薦書籍 & 網(wǎng)站推薦

蘋果官網(wǎng)API搜索

Head First iPhone/iPad開發(fā)

iOS應(yīng)用安全權(quán)威指南

高性能iOS應(yīng)用開發(fā)

高級核心動畫技巧

2017螞蟻金服AR框架

京東應(yīng)用架構(gòu)設(shè)計(jì)

王巍-Swift4.0

SwifterTips (第四版)

OS X與IOS內(nèi)核編程

OpenGL著色語言

avfoundation秘籍

CFNetwork-編程指南

通過實(shí)現(xiàn)TableView來理解IOS編程

七牛云直播技術(shù)分享

本文單獨(dú)針對iOS開發(fā)水平提升方面,有技術(shù)方面的遺漏還望各位積極回復(fù).

多的不說,只說兩點(diǎn):

1.確實(shí)覺得自己水平實(shí)力低于平均水平,明顯想提升自己實(shí)力的.

2.如果有"這些技能工作當(dāng)中用不到,學(xué)來干嘛?"這種想法,并不適合閱讀本文.

既然大家都是想提升實(shí)力,就不要老去思考工作當(dāng)中用不用的到,每個人職能就那么點(diǎn),為什么會分水平高低,還不是因?yàn)槿思叶枚?心里沒數(shù)?別心浮氣躁的,踏踏實(shí)實(shí)的提高硬實(shí)力.

iOS基礎(chǔ)

本文主要是為了補(bǔ)充iOS開發(fā)學(xué)習(xí)路線那篇文章,所以到達(dá)這一步,就暫定你已經(jīng)會基本的操作,以及獨(dú)立開發(fā)過項(xiàng)目了.

蘋果官方文檔 & 新API

蘋果開發(fā)者官網(wǎng)有對每個API的解釋,使用,介紹.

使用百度"iOS開發(fā)"+ 空格 +"各個知識點(diǎn)" 來搜索學(xué)習(xí)各種自己不擅長的知識.例如:iOS開發(fā) Runtime原理.

iOS第三方庫源碼 & 實(shí)現(xiàn)原理

我們平常經(jīng)常使用第三方庫,例如:AFNetworking,MJRefresh,YYKit,SDWebimage,SDAutoLayout,Masonry.

那么你是否去查看其第三方庫是如何封裝的?

AFNetworking是如何實(shí)現(xiàn)異步訪問網(wǎng)絡(luò)請求,如何處理你傳給他的數(shù)據(jù)字典,在AFN內(nèi)部進(jìn)行了幾層封裝?

MJRefresh的實(shí)現(xiàn)原理是什么?

SDWebImage的緩存原理?

YYKit針對于FPS是如何優(yōu)化的?

SDAutoLayout和Masonry的布局庫原理有著怎么樣的區(qū)別,其原理是依據(jù)什么進(jìn)行布局的?誰的效率更高一點(diǎn).

還有很多的第三方庫值得我們?nèi)W(xué)習(xí).

iOS標(biāo)配技能

交流

首先,在公司日常的交流,要穩(wěn)重不失禮節(jié),出問題的時候,要針對問題提出解決方案,而不要帶情緒.

當(dāng)有新的業(yè)務(wù)需求提出時,根據(jù)自己的實(shí)力,給出不同的業(yè)務(wù)方案.

購物車

購物車可以說是在各個客戶端,最經(jīng)典的案例了,這是一個業(yè)務(wù)需求,也是涉及到增刪改查,異步處理等各種業(yè)務(wù)邏輯混雜于一身的業(yè)務(wù)需求.

一個健壯的購物車,可以說是必備的業(yè)務(wù)技能.和登錄注冊同理.

支付

有了購物車,就一定會有支付,熟悉支付寶,微信,銀聯(lián),蘋果支付IAP等各種支付平臺的接入,接入流程.

你可以沒做過,但你不能不知道,就比如支付寶當(dāng)中的加密算法RSA是屬于什么加密.他是如何驗(yàn)證的.公鑰和私鑰是如何在APP和服務(wù)端存儲驗(yàn)證的?

藍(lán)牙

藍(lán)牙這個就不細(xì)說了,很簡單,自己寫個DEMO,不要覺得自己沒做過就很難,寫一個連接Demo,沒那么難.

實(shí)際藍(lán)牙項(xiàng)目中,你可以根據(jù)業(yè)務(wù)需求,選擇較為健壯,易接入的藍(lán)牙設(shè)備.最好可以提供接入手冊的那種,接入其實(shí)很簡單,調(diào)試費(fèi)勁罷了.

攝像頭

同理藍(lán)牙,攝像頭需要選擇提供成型SDK的廠家,除非你公司實(shí)力非常強(qiáng)大,肯購買提供底層庫讓你自己做SDK的攝像頭.愿意投入時間成本去開發(fā)SDK.

3DTouch

寫一個Demo練習(xí)一下,很簡單,必備技能,但一般不是每個應(yīng)用都做.

直播

直播現(xiàn)在中小型公司普遍采用第三方直播平臺,不管你是否做過,你可以先去 騰訊云,七牛云,阿里云 開發(fā)平臺進(jìn)行學(xué)習(xí),技術(shù)文檔是開放的.

你哪怕知識看一遍,也比不看的要強(qiáng)的多.可以接入Demo測試學(xué)習(xí)一下.

當(dāng)然,有些公司不想接入第三方,也有開源的框架可以自己做直播平臺,這就需要三端連調(diào),一同處理需求了.

RTMP推流

例如IJKPlayer FFmpeg,包括直播原理,你要懂.

直播的視頻是遵循什么協(xié)議一個個將視頻包分發(fā)到客戶端,RTMP協(xié)議的優(yōu)缺點(diǎn)等.

視頻處理

視頻處理,例如轉(zhuǎn)碼啊,旋轉(zhuǎn),編碼.

不同格式的處理,視頻大小的處理,為什么QQ和微信的小視頻可以做到超級壓縮?

如何對視頻進(jìn)行濾鏡處理,類似抖音那樣.

圖片渲染&濾鏡

GPUIImage是一個集濾鏡,圖像處理的框架,可以學(xué)習(xí)一下,如何添加濾鏡,處理圖片.

Socket & XMPP

即時聊天,也是當(dāng)下流行的技術(shù),每個APP幾乎都少不了要有一個聊天功能,即使沒有,也會涉及到客服,反饋等功能.

那么即時聊天遵循什么協(xié)議,用什么來做的呢?可以了解一下iOS當(dāng)中如何用Socket 實(shí)現(xiàn)簡易聊天,或者使用XMPP協(xié)議實(shí)現(xiàn)聊天?

RN開發(fā) & JavaScript

React Native開發(fā),由Facebook開源,React Native使你能夠在Javascript和React的基礎(chǔ)上獲得完全一致的開發(fā)體驗(yàn)饥追,構(gòu)建世界一流的原生APP端考。

這是一門新技術(shù),本人沒接觸過,所以不贅述,大家自己了解一下,一些公司會用這個開發(fā)App.

Git & SVN 項(xiàng)目版本控制

公司當(dāng)中一般都有后端開發(fā)工程師 或者DBA創(chuàng)建一個屬于本公司局域網(wǎng)的Git本地管理倉庫.

如果你是單人開發(fā)iOS,那就需要掌握最基本的版本控制,

如果你在公司是團(tuán)隊(duì)開發(fā),還要掌握沖突處理的技能

優(yōu)雅的開發(fā)

[如何優(yōu)雅的使用Mac進(jìn)行開發(fā)]稍后更新

iOS多線程

GCD雅潭、NSOperation、NSThread各種靈活運(yùn)用和嵌套

iOS架構(gòu) & 代碼規(guī)范

iOS應(yīng)用架構(gòu)談-By.Casa大

可以仔細(xì)學(xué)習(xí)這篇文章,養(yǎng)成良好的代碼規(guī)范.

蘋果官方Kit

ARKit.

SiriKit

HealthKit

HomeKit

SearchKit

IOKit

PDFKit

CloudKit

GameplayKit

SpriteKit

SceneKit

MusicKit

ResearchKit

MapKit

StoreKit

AVKit

可以嘗試了解一下上面的各種kit官方API,因?yàn)橛锌赡苄碌臉I(yè)務(wù)需求就是官方API調(diào)用的事就解決了.

Runtime & Runloop

Runtime和Runloop的原理和機(jī)制,以及如何使用,大家可以深入了解一下,因?yàn)閭€人水平原因,目前只有整理好的筆記,暫時不方便對此進(jìn)行總結(jié).

iOS FFmpeg & Opencv原理

FFmpeg和Opencv底層原理是什么,是什么支撐了這個強(qiáng)大的視頻處理庫.

iOS底層原理

結(jié)合Runtime機(jī)制深入了解Objective-C對象的本質(zhì)和消息機(jī)制,其方法和對象在編譯和運(yùn)行過程中分別是什么狀態(tài).

iOS App逆向

App逆向目前本人也沒有深入理解,不知道在工作當(dāng)中如何應(yīng)用,確實(shí)讓我了解到iOS開發(fā)項(xiàng)目中之外的東西.

例如,客戶端和服務(wù)器概念,SSH登錄,以及各大有名的APP是如何架構(gòu)的(推理一下).

iOS Swift

Swift目前已經(jīng)4.0了,個人感覺本人會在Swift5.0進(jìn)行學(xué)習(xí)吧,雖然很多項(xiàng)目沒有用到Swift,但Swift確實(shí)是一個趨勢,可以了解一下.

本文沒有提到的知識點(diǎn)

崩潰日志分析

移動端加解密

數(shù)據(jù)結(jié)構(gòu) & 算法導(dǎo)論

混合開發(fā)

機(jī)器學(xué)習(xí)

ARKit

RAC

iOS 工程化

模塊化開發(fā)

組件化開發(fā)

單元測試

技術(shù)經(jīng)理

產(chǎn)品經(jīng)理

架構(gòu)師

阿里技術(shù)前沿

跟隨巨人的腳步

代碼設(shè)計(jì)能力

代碼設(shè)計(jì)能力主要體現(xiàn)在如何設(shè)計(jì)代碼却特,設(shè)計(jì)模式的核心在于六大原則扶供,而不是具體的某些設(shè)計(jì)模式。

工具設(shè)計(jì)能力

工具設(shè)計(jì)能力在于使用工具的過程中裂明,了解工具的實(shí)現(xiàn)椿浓,嘗試去設(shè)計(jì)更適合工程的工具,這部分需要大量的代碼積累闽晦。另一方面由于工具是可復(fù)用的扳碍,對代碼設(shè)計(jì)能力的要求是有的,所以屬于更高.

工程規(guī)劃能力

抗風(fēng)險(xiǎn)

成本

回報(bào)

總結(jié)

確實(shí),作為一個開發(fā)工程師,應(yīng)該去縱觀整個工程,而不是僅僅局限于自己的工作棧,否則不可能獲得質(zhì)的提升.

總之,希望大家制定自己的路線進(jìn)行努力,只要不原地踏步.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末仙蛉,一起剝皮案震驚了整個濱河市笋敞,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌荠瘪,老刑警劉巖夯巷,帶你破解...
    沈念sama閱讀 206,968評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異哀墓,居然都是意外死亡趁餐,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,601評論 2 382
  • 文/潘曉璐 我一進(jìn)店門篮绰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來后雷,“玉大人,你說我怎么就攤上這事∨缑妫” “怎么了星瘾?”我有些...
    開封第一講書人閱讀 153,220評論 0 344
  • 文/不壞的土叔 我叫張陵走孽,是天一觀的道長惧辈。 經(jīng)常有香客問我,道長磕瓷,這世上最難降的妖魔是什么盒齿? 我笑而不...
    開封第一講書人閱讀 55,416評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮困食,結(jié)果婚禮上边翁,老公的妹妹穿的比我還像新娘。我一直安慰自己硕盹,他們只是感情好符匾,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,425評論 5 374
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著瘩例,像睡著了一般啊胶。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上垛贤,一...
    開封第一講書人閱讀 49,144評論 1 285
  • 那天焰坪,我揣著相機(jī)與錄音,去河邊找鬼聘惦。 笑死某饰,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的善绎。 我是一名探鬼主播黔漂,決...
    沈念sama閱讀 38,432評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼禀酱!你這毒婦竟也來了瘟仿?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,088評論 0 261
  • 序言:老撾萬榮一對情侶失蹤比勉,失蹤者是張志新(化名)和其女友劉穎劳较,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體浩聋,經(jīng)...
    沈念sama閱讀 43,586評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡观蜗,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,028評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了衣洁。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片墓捻。...
    茶點(diǎn)故事閱讀 38,137評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出砖第,到底是詐尸還是另有隱情撤卢,我是刑警寧澤,帶...
    沈念sama閱讀 33,783評論 4 324
  • 正文 年R本政府宣布梧兼,位于F島的核電站放吩,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏羽杰。R本人自食惡果不足惜渡紫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,343評論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望考赛。 院中可真熱鬧惕澎,春花似錦、人聲如沸颜骤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,333評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽忍抽。三九已至八孝,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間梯找,已是汗流浹背唆阿。 一陣腳步聲響...
    開封第一講書人閱讀 31,559評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留锈锤,地道東北人驯鳖。 一個月前我還...
    沈念sama閱讀 45,595評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像久免,于是被迫代替她去往敵國和親浅辙。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,901評論 2 345

推薦閱讀更多精彩內(nèi)容

  • 白菊花還沒有開 所以我來不及拿著它 來安慰安睡著的你的噩夢 我不能坐在你的旁邊 跟你說一些我的好與壞 因?yàn)榇掖业墓?..
    草芥人閱讀 339評論 0 0
  • 作者:道格拉斯·麥格雷戈/喬·卡徹·格爾圣菲爾德 出版社:中國人民大學(xué)出版社 譯者:韓卉 出版年:200...
    八er閱讀 595評論 3 8
  • 【江城梅花引】萍鄉(xiāng)下雪了 當(dāng)代/二擺 忽聞半夜冷風(fēng)催⊙掷眩現(xiàn)瓊枝记舆。晾瓊枝。風(fēng)卷寒云呼巴,只見柳條移泽腮。萍水含煙浸曉岸,鄉(xiāng)...
    二擺閱讀 393評論 0 9