




版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
進(jìn)自己的iOS在我開(kāi)始講述這三類(lèi)人的成長(zhǎng)路徑之前,我先和你一下完全0基礎(chǔ)想要學(xué)習(xí)iOS開(kāi)發(fā)如果你喜歡通過(guò)書(shū)籍來(lái)學(xué)習(xí)的話(huà),我推薦你去看看《iOS編程》(iOSProgramming)這本書(shū)。這本書(shū)的內(nèi)容,包括了開(kāi)發(fā)語(yǔ)言、Cocoa設(shè)計(jì)模式和控件使用、Xcode技巧等,涉及iOS開(kāi)發(fā)基礎(chǔ)的方方面面。因此,它非常適合iOS編程0基礎(chǔ)的人閱讀,在Quora上被iOS最佳書(shū)。而且每次iOS系統(tǒng)和開(kāi)發(fā)語(yǔ)言增加了新特性,這本書(shū)都會(huì)進(jìn)行同如果你習(xí)慣于通過(guò)手把手的實(shí)例來(lái)學(xué)習(xí)的話(huà),我推薦你看一下APPCDA。這里面每篇都非常簡(jiǎn)單易懂,而且詳細(xì),可以帶著你一步一步地動(dòng)手編寫(xiě)程序,非常適合初學(xué)者。同時(shí),這個(gè)的更新也很頻繁。望能夠自己開(kāi)發(fā)App的話(huà),你可以看一下知乎里的這個(gè)問(wèn)答“12歲如何iOS編程?”。這個(gè)問(wèn)題下的被贊的最多的回答里,列出了很多孩子編程成功的事例,相信也可以iOSiOS者,以及iOS開(kāi)發(fā)老手分別應(yīng)該選擇什么樣的進(jìn)階路徑吧。是不是總是有人和你說(shuō),不論做什么,都要先打好基礎(chǔ)。但是,基礎(chǔ)怎樣才算打好了呢,卻沒(méi)有人可以替你做主。因?yàn)?,基礎(chǔ)知識(shí)涉及面實(shí)在是太廣了,而且多偏理論,如不經(jīng)過(guò)實(shí)踐的檢驗(yàn),要想掌握好也不是件簡(jiǎn)單的事情。對(duì)于iOS開(kāi)發(fā)者來(lái)說(shuō),哪些基礎(chǔ)是在開(kāi)始就需要好好學(xué)的呢?我先將iOS域轉(zhuǎn)向iOS開(kāi)發(fā)的老手。對(duì)于在校生來(lái)說(shuō),我推薦斯坦福大學(xué)在iTunesU上的App開(kāi)發(fā)課程,網(wǎng)上還有同步的中文字幕項(xiàng)目。這個(gè)課程中包含了開(kāi)發(fā)一個(gè)App需要的、最基礎(chǔ)的知識(shí),同時(shí)還會(huì)現(xiàn)場(chǎng)一步一步帶領(lǐng)你來(lái)開(kāi)發(fā)一些簡(jiǎn)單的App。這個(gè)課程中會(huì)涉及MVC架構(gòu)、iOS開(kāi)發(fā)語(yǔ)言基礎(chǔ)知識(shí)、多點(diǎn)觸摸、動(dòng)畫(huà)、ViewController View、TextField、持續(xù)化、彈窗、通知、整個(gè)App生命周期、Storyboards、Core跟著斯坦福的這個(gè)課程學(xué)完,動(dòng)手開(kāi)發(fā)幾個(gè)簡(jiǎn)單App上線(xiàn)是沒(méi)什么問(wèn)題的。但是,你不要就此滿(mǎn)足,因?yàn)檎鎸?shí)工作中光靠這些知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,甚至光靠這些知識(shí)連面試都過(guò)不了。基于類(lèi)似這樣簡(jiǎn)單應(yīng)用層面的知識(shí),掌握斯坦福的這個(gè)課程就可以了,不要一味地貪多,后面還有值得深入學(xué)習(xí)的知識(shí)在等著你。而且,應(yīng)用層面的基礎(chǔ)知識(shí)根據(jù)實(shí)際工作需要再去學(xué)習(xí)也不遲。作。所以,對(duì)于這個(gè)階段的iOS開(kāi)發(fā)者來(lái)說(shuō),如何快速上手完成任務(wù)才是最重要的。針對(duì)應(yīng)屆生,我推薦蘋(píng)果iOS開(kāi)發(fā)指南,雖然內(nèi)容不多,但卻能夠幫你快速掌握開(kāi)發(fā)思路。實(shí)際工作中碰到所需要的知識(shí),首先翻看開(kāi)發(fā)手冊(cè),先在這里面找解決方法。官方代碼示例都很規(guī)范,分類(lèi)也很清晰,內(nèi)容也更全。從大塊上,可以分為AppFrameworks、圖形、App服務(wù)、、開(kāi)發(fā)工具、系統(tǒng)等。AppFrameworks里面主要是Fundation框架、UIKit、AppKitUIkitCoreGraphics、CoreImage、CoreAnimation,還有ARKit、Metal、GameKit、SpriteKit等也在這里面。App服務(wù)里是蘋(píng)果公司為開(kāi)發(fā)者提供的服務(wù)套件,比如推送套件PushKit、富文本套件CoreText、方便集成機(jī)器學(xué)習(xí)模型到你App的CoreML、車(chē)載應(yīng)用的Car y等。JavaScript引擎JavaScriptCore在iOS中應(yīng)用接口的資料,你也可以在這個(gè)分類(lèi)里找里主要包含了AVFundation、CoreAudioKit、CoreMedia這些音的內(nèi)容開(kāi)發(fā)工具里有 CFNetworkNetwork、多核隊(duì)列相關(guān)的Dispatch、內(nèi)核框架Kernel、運(yùn)行時(shí)庫(kù)Objective-CRuntime、安全這份開(kāi)發(fā)手冊(cè)內(nèi)容大而全,沒(méi)必要在開(kāi)始時(shí)就什么都學(xué),不然耗費(fèi)大量精力學(xué)到的東西卻一時(shí)難以用上,會(huì)導(dǎo)致你的職業(yè)道路走得過(guò)慢。我覺(jué)得用時(shí)再看即可,只要你記著,工作中碰到iOS不清的知識(shí),先到這里來(lái)找就對(duì)了。對(duì)于已經(jīng)有多年其他領(lǐng)域開(kāi)發(fā)經(jīng)驗(yàn)的開(kāi)發(fā)者來(lái)說(shuō),通過(guò)幾個(gè)示例代碼,或者看看已有項(xiàng)目中的代碼就能夠快速上手了。其實(shí),iOS開(kāi)發(fā)中的Oecie-C語(yǔ)言實(shí)際上就是C語(yǔ)言的一個(gè)超集,有C和C++基礎(chǔ)和經(jīng)驗(yàn)的開(kāi)發(fā)者轉(zhuǎn)行過(guò)來(lái)是很容易的,在開(kāi)發(fā)思想上也有很多可以互相借鑒的地方。而Swift語(yǔ)言也融入了很多新語(yǔ)言的特性,比如閉包、多返回值、泛型、擴(kuò)展、協(xié)議的結(jié)構(gòu)體、函數(shù)編程模式等,你再學(xué)起來(lái)時(shí)也會(huì)有似曾相識(shí)的感覺(jué)。對(duì)這個(gè)階段的開(kāi)發(fā)者,我推薦到RayWenderlich里翻翻它們的。這里的每一個(gè)教RayWenderlich里也有很詳細(xì)的分類(lèi),你可以根據(jù)實(shí)際工作需要來(lái)學(xué)習(xí)。我的建議同樣關(guān)于掌握了一定的基礎(chǔ)知識(shí)后,如何繼續(xù)學(xué)習(xí)來(lái)提升自己的OS開(kāi)發(fā)技能,在5年前唐巧寫(xiě)了篇博客“iOS開(kāi)發(fā)如何提高”、limboy寫(xiě)了篇“iOS開(kāi)發(fā)的一些經(jīng)驗(yàn)”,里面到的這些提高自己開(kāi)發(fā)能力的方法,拿到今天依然適用。不過(guò),學(xué)習(xí)終究是需要實(shí)踐來(lái)驗(yàn)證的。在進(jìn)入實(shí)戰(zhàn)階段之前,為了避免少走彎路,你需要一份iOS最佳實(shí)踐。這里有一份一直在的最佳實(shí)踐指導(dǎo),里面包含了完整的App開(kāi)發(fā)生命周期,從IDE搭建工程最佳使用方式、基礎(chǔ)庫(kù)選擇、架構(gòu)選擇、方式、資源管理、代碼規(guī)范、安全、靜態(tài)分析、分析、構(gòu)建,到部署,甚至是APIn-AppPurchases應(yīng)用內(nèi)支付)都考慮到了。實(shí)戰(zhàn)過(guò)程中手冊(cè)是最常用的,特別是Swift語(yǔ)言特性非常多,在還沒(méi)能達(dá)到熟練的情況下,手冊(cè)往往能夠起到查漏補(bǔ)缺的效果。Swift語(yǔ)言的手冊(cè)就在它的官網(wǎng),你可以點(diǎn)擊這個(gè)查看;中文版手冊(cè),現(xiàn)在是由SwiftGG在,目前已經(jīng)同步更新到了Swift5。如果你想及時(shí)獲得Swift的消息,可以訂閱Swift官網(wǎng)的博客?;A(chǔ)知識(shí)不要貪多,但對(duì)于工作實(shí)踐中涉及到的領(lǐng)域相關(guān)知識(shí),我的建議是一定要貪多,而且越多越好。在實(shí)踐中多多積累工作中涉及的相關(guān)知識(shí),這種學(xué)習(xí)方法特別適合有了幾年工作經(jīng)驗(yàn)的開(kāi)發(fā)者。此外,你還要時(shí)刻關(guān)注和你工作內(nèi)容相關(guān)的領(lǐng)域知識(shí)的發(fā)展,并全面掌握,從而達(dá)到由量變到質(zhì)變的效果,最終達(dá)到領(lǐng)域?qū)<业乃?。舉個(gè)例子吧。有一段時(shí)間,我的工作是和App性能相關(guān)的。這段時(shí)間,我會(huì)首先在網(wǎng)上收集一些其他公司在性能上做的事情,然后針對(duì)那些事情再去學(xué)習(xí)相關(guān)知識(shí),平時(shí)還會(huì)通過(guò)訂閱一些博客和技術(shù)團(tuán)隊(duì)的輸出,持續(xù)關(guān)注性能這個(gè)領(lǐng)域。等工作上做出了些成績(jī)以后,我就會(huì)及時(shí)進(jìn)行整理和總結(jié)。在這個(gè)過(guò)程中,再進(jìn)行一些思考,多問(wèn)問(wèn)自己為什么這么做,還有沒(méi)有更好的做法。最后再輸出,看看其他人和團(tuán)隊(duì)的意見(jiàn)和建議。通過(guò)交流相互成長(zhǎng),獨(dú)樂(lè)樂(lè)不如眾樂(lè)樂(lè),何樂(lè)而不為呢。對(duì)于學(xué)習(xí)和積累什么樣的知識(shí),我的建議是,你一定要懷著一顆的心,查找資料時(shí)不要覺(jué)得夠了。查到了很多資料后要多總結(jié)、多思考,這樣才會(huì)有新的思路、新的方案出來(lái)。如果你細(xì)心觀察iOS技術(shù)這幾年的發(fā)展,就會(huì)發(fā)現(xiàn)很多方案剛開(kāi)始都很簡(jiǎn)單,但是隨著對(duì)底層的研究和思考后會(huì)出現(xiàn)更優(yōu)解。以?xún)?nèi)存方案為例。這個(gè)方案一開(kāi)始是到JetsamEvent日志里找到那些由內(nèi)存引起的系后來(lái),隨著fishhook這種可以Hook系統(tǒng)c方法的庫(kù)浮出水面,最終將其引入到了獲取內(nèi)存上限值的方案里。引入fishhook后的原理是,先找到分配內(nèi)存都會(huì)執(zhí)行的c函數(shù)malloc_logger,然后使用fishhook在上面的內(nèi)容中,我提到說(shuō)很多方案,都是在不斷地研究底層原理的基礎(chǔ)上日趨完善的。由此看出,在基礎(chǔ)知識(shí)掌握到一定程度、領(lǐng)域知識(shí)積累到一定程度后,我們需要再繼續(xù)深挖知識(shí),也就是眾多計(jì)算機(jī)細(xì)分領(lǐng)域中的通用底層知識(shí)。在我看來(lái),底層知識(shí)是最值得深挖的,不管哪個(gè)領(lǐng)域,殊途同歸,底層都是需要持續(xù)學(xué)習(xí)的。這里我推薦MihaelAsh的“TheComleeFriayQ&A”。這本書(shū)里面涉及的內(nèi)容,都是對(duì)一些知識(shí)點(diǎn)更深一層的探究,會(huì)讓你了解內(nèi)存、性能和系統(tǒng)內(nèi)部的原理,幫你理解那些萬(wàn)變不離其宗的知識(shí)。同樣,我也會(huì)在專(zhuān)欄里面,通過(guò)5篇文章的篇幅,和你那些通用的底層知識(shí),也就是系統(tǒng)內(nèi)核XNU、AOP、內(nèi)存管理和編譯這些。當(dāng)你iOS基礎(chǔ)打牢了,也積累了很多實(shí)踐經(jīng)驗(yàn),工作上也取得了一定成績(jī),那你也就成長(zhǎng)為一名iOS開(kāi)發(fā)老手了。這個(gè)時(shí)候,你可以選擇一個(gè)方向持續(xù)地深入學(xué)習(xí)。在我看來(lái),最如果你想對(duì)LLVM器。比如,這個(gè)最小的C編譯器OTCC(ObfuscatedTinyCCompiler)就是一個(gè)很好的如果你想地了解數(shù)據(jù)庫(kù)的原理,除了看已有數(shù)據(jù)庫(kù)的源碼外,還可以自己動(dòng)手開(kāi)發(fā)一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)項(xiàng)目。這里有個(gè)“Let’sBldaimleDataase”,可以一步步地教你如何開(kāi)發(fā)一個(gè)簡(jiǎn)單的數(shù)據(jù)庫(kù)。你可以照著這個(gè),動(dòng)手做起來(lái)。深刻地理解分頁(yè)、信號(hào)量、內(nèi)存管理等知識(shí)。這里有個(gè)非常好的叫作“os-tutorial”,動(dòng)、中斷處理、屏幕輸出鍵盤(pán)輸入、basiclibc、內(nèi)存管理、文件系統(tǒng)、簡(jiǎn)單的s 對(duì)于iOS老手來(lái)說(shuō),你能夠使用已經(jīng)掌握的技術(shù)棧,觸類(lèi)旁通地去接觸其他領(lǐng)域來(lái)拓寬自己的技術(shù)視野。以服務(wù)端開(kāi)發(fā)為例,使用Perfect就能夠用Swift語(yǔ)言來(lái)做服務(wù)器的開(kāi)發(fā)。Perfect是由一個(gè)團(tuán)隊(duì)開(kāi)發(fā)并的,這個(gè)團(tuán)隊(duì)的成員對(duì)技術(shù)都很有熱情,熱衷于用優(yōu)秀的技術(shù)去做優(yōu)秀的事情。所以,Perfect不僅功能豐富,而且緊跟技術(shù)的發(fā)展,對(duì)TensorFlow、NIO、MySQL、MongoDB、Ubuntu、Redis的支持做的都很到位。iOS今天這篇文章,我和你總結(jié)了一下iOS隨著工作時(shí)間的增加,為了將工作做得更好,我們會(huì)去學(xué)習(xí)的知識(shí)。但是,學(xué)得越多就會(huì)發(fā)現(xiàn)缺失的知識(shí)越多,那么接下來(lái)的學(xué)習(xí)該何去何從呢?有沒(méi)有辦法少走彎路呢?如何才能夠系統(tǒng)化學(xué)習(xí)呢?我參與過(guò)日活千萬(wàn)和日活過(guò)億的App項(xiàng)目,團(tuán)隊(duì)規(guī)模和代碼規(guī)模都很大,攻堅(jiān)過(guò)很多難解問(wèn)題,對(duì)于性能質(zhì)量和開(kāi)發(fā)效率也有過(guò)很多思考和實(shí)踐,我都會(huì)在這個(gè)專(zhuān)欄中與你一一分享,希望能夠?qū)δ?/p>
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 《小型溫差發(fā)電機(jī)》課件
- 《中國(guó)傳統(tǒng)建筑》課件2
- 《策略解析示范教案》課件
- 環(huán)保知識(shí)與行動(dòng)
- 不簽店面合同范例
- 商場(chǎng)廣告屏投資合同范例
- 國(guó)際小麥貿(mào)易合同范例
- 國(guó)際印刷合同范本
- 入學(xué)申請(qǐng)書(shū)模板范文
- 形象設(shè)計(jì)師(三級(jí))理論知識(shí)試卷復(fù)習(xí)測(cè)試卷附答案
- 2025年海南??谑兴畡?wù)局招聘事業(yè)單位人員35人歷年高頻重點(diǎn)模擬試卷提升(共500題附帶答案詳解)
- COP生產(chǎn)一致性控制計(jì)劃
- 2025年電力人工智能多模態(tài)大模型創(chuàng)新技術(shù)及應(yīng)用報(bào)告-西安交通大學(xué)
- 天津2025年天津市機(jī)關(guān)后勤事務(wù)服務(wù)中心分支機(jī)構(gòu)天津市迎賓館招聘2人筆試歷年參考題庫(kù)附帶答案詳解
- 華東師大版七年級(jí)數(shù)學(xué)下冊(cè)“第1周周考”
- 教師論文撰寫(xiě)培訓(xùn)
- 學(xué)習(xí)雷鋒主題班會(huì)雷鋒日學(xué)習(xí)雷鋒精神-
- 事故隱患內(nèi)部舉報(bào)獎(jiǎng)勵(lì)制度
- 2020-2024年安徽省初中學(xué)業(yè)水平考試中考?xì)v史試卷(5年真題+答案解析)
- 小升初個(gè)人簡(jiǎn)歷表
- 電工每日巡查簽到表
評(píng)論
0/150
提交評(píng)論