iOS開發學習路線

     初級iOS開發 iOS中級開發說白了,就是你學會了基本的UI界面搭建,上架,沉澱一段時間,你以爲本身還適合這門行業,還適合,還能接受 這個所謂的iOS開發工程師的行業.你就能夠說是一名中級iOS開發. 這個沉澱時間 大約在1年的實際工做中,就能夠完成.

     若是你以爲這門行業不適合你,請仔細結合自身狀況,是否轉另外一門計算機語言,仍是完全轉行. 是否瞭解AFNetworking 的實現原理 html

     是否瞭解SDAutolayout/Masonry 一種佈局庫的原理 前端

     是否可以處理基本的iOS崩潰緣由/沒法編譯緣由/沒法上架緣由?python

     是否擁有了必定的工做效率,穩定的工做效率.(而不是說,上面派了一個活下來,忙都忙不完,每天加班,還一堆bug) ios

     是否可以處理第三方庫引發的崩潰.  程序員

     是否能夠很好的融入工做環境,完成每一階段的工做指標,而不會讓本身疲憊不堪.  算法

     Xcode的使用 數據庫

     第三方庫的靈活使用 ,AFN ,MJRefresh ,各類網站的使用  。設計模式

     說明:做爲一名初級的iOS開發,你須要具有如下技能 必備技能(所有都會的狀況下查看下一項) 如何判斷是否能夠升階 瀏覽器

     結論 中級iOS開發 如何判斷是否能夠升階 服務器

    結論 應用的內存處理 應用的推送處理 應用的模塊化/單元測試 應用的第三方集成/集中化管理/穩定迭代 閱讀強大的第三方源碼/擁有快速上手新的第三方庫的能力. 

    可以接受各類新功能的開發(這裏是指,即便你沒有作過,可是你仍然能夠憑藉着學習,解決任何業務需求:例如:藍牙.AR.攝像頭.硬件交互.等) 清楚明白數據的傳遞方式,應用與後臺如何交換數據,交換數據的過程,結果,格式. 多線程的靈活使用. 

    各類併發事件的處理/以及界面的合理性/流暢度 設計模式的靈活使用. 說明:做爲一名中級的iOS開發,你須要具有如下技能 必備技能(所有都會的狀況下查看下一項) 高級iOS開發 應用的組件化/架構分層 數據結構,操做系統,計算機網絡都有本身的瞭解和認知 Shell腳本/python/Ruby/JS 至少會一種.

     說明:做爲一名高級的iOS開發,你須要具有如下技能(我不是高級開發,因此這裏只能給大家提供建議.) 

     必備技能 詳細學習路線 學習路線 

     簡介 這裏只簡單闡述一些概念性的東西,以及學習路線規劃,真正的知識請從iOS基礎知識點往下開始看. Objective-C 介紹 概念 編譯原理 程序啓動原理 結束程序. 監聽系統事件 Info.plist .pch App組成 打開程序 執行main函數 執行UIApplicationMain函數 初始化UIApplication(建立設置代理對象,開啓事件循環) 語法.(此處定義可能略失嚴謹,口頭教學爲主) 基礎語法 對象. 屬性 數據類型 方法 繼承 Frame/CGRect/CGPoint和CGSize 內存(針對MRC下狀況進行介紹) ARC/MRC 弱引用/強引用 Assign,retain,copy,strong import 和@class的區別 Xcode使用          首先是針對Xcode菜單欄,但願本身能夠去翻譯一下每一個菜單裏每項功能的英文都是什麼意思,有助於本身熟悉並加深印象的使用Xcode. 熟悉Xcode的各個功能. UIKit控件. 界面分析(下載App進行學習). 界面適配 在這裏推薦有興趣的開發人員,下載並分析,AppStore中的每項分類的top50的應用,多學習大公司以及流行應用是如何開發應用的,其中流行的,新穎的開發界面的方式能夠總結下來,猜測在大應用中,別的程序員是如何開發的. 代碼架構.  

     代碼架構文章推薦:https://casatwy.com/iosying-yong-jia-gou-tan-kai-pian.html 各類工具、第三方的使用. 其實每一個項目的創建都大體分爲:項目框架搭建,原生界面搭建,嵌入第三方庫.有不少功能都會用到第三方庫,大多數第三方庫都是本着快速開發,完整功能實現的目的存在的.須要開發人員可以根據業務邏輯不一樣,選擇最好最優質的第三方庫進行使用. 代碼封裝  

     當使用較多第三方庫後,要求開發人員學習其開發特色,以及其封裝手法,運用在本身的項目上,封裝本身的代碼.靈活運用. 完整項目.     

     開發技巧 我的心得 iOS基礎知識點  

     iOS基礎知識點 

     如何學習iOS 開始涉獵不止於iOS領域中的知識,會去了解相關職位的基礎知識,例如前端和後臺或者服務器運維,或者項目相關知識,具體往本身的職業規劃靠攏 

     多看開源或者註明的第三方庫. 收藏並閱讀各類大神的博客或者論壇. 開始考慮項目中的細節優化,內存處理和耗電狀況 打好基礎,學習OC中各類經常使用語法. 

     學習如何上架,上架會由於什麼被拒,瞭解App上架規則. 多學習官方說明文檔. 剛剛入門(如何學習) 剛剛入職1年(如何穩定) 入職3年(如何進階) 框架的學習 AFNetworking SDAutoLayout YYKit SDWebImage MJRefresh MJExtension Bugly Qiniu Masonry TZImagePickerController Hyphenate_CN 第三方框架 

     蘋果自帶框架 基礎UI控件 UILabel 標題欄 UIButton 按鈕 UIImageView 圖片視圖 UITextField 文本輸入框 UITextView 文本展現視圖 UIProgressView 進度條 UISlider 滑動開關 UIGesture 手勢 UIActivityIndicator 菊花控件 UIAlertView(iOS8廢除) 警告框 UIActionSheet(iOS8廢除) 操做表單 UIAlertController(iOS8出現) 警告視圖控制器 UIScrollView 滾動視圖 UIPageControl 頁面控制器 UISearchBar 搜索框 UITableView 表視圖 UICollectionView集合視圖 UIWebView網頁瀏覽器 UISwitch開關 UISegmentControl選擇按鈕 UIPickerView選擇器 UIDatePicker日期選擇器 UIToolbar工具欄 UINavigationBar通知欄 UINavigationController通知視圖控制器 UITabbarController選擇視圖控制器 UIImagePickerController相冊 UIImage圖片 Xcode的使用 內存監測 全局斷點 全局搜索替換 界面適配 StoryBoard 界面預覽 基礎操做 狀態欄 偏好設置 Xcode Source Control 源代碼管理器 Xcode workSpace工做組 Xcode Scheme 計劃 Xcode AutoLayout 約束 Xcode CoreData數據庫 LLDB 斷點調試 數據存儲 沙盒存儲 NSDictionary歸檔 NSUserDefault CoreData NSKeyedArchiver SQLite FMDB plist App生命週期 alloc init 建立View ViewDidLoad ViewWillAppear ViewDidAppear ViewWillDisappear ViewDidDisappear 視圖將要消失 (作一些視圖將要消失時的UI的處理) 視圖已經消失 (作一些視圖消失以後數據的處理) viewDidDisappear銷燬定時器 dealloc didReceiveMemoryWarning 控制器生命週期 應用生命週期 開發者帳號&上架流程 我的 公司 企業 https://www.jianshu.com/p/6601a241da8e https://www.jianshu.com/p/7c98651d3532 https://www.jianshu.com/p/9b994a019ee6 文章推薦: 經常使用知識 響應鏈 異常捕捉 國際化 代碼模塊化 類別/擴展 iPad與iPhone的區別 靜態庫 內存管理 Quartz2D 真機調試 isKindOfClass 與 isMemberOfClass Return/Break/Continue Core Animation CALayer AutoLayout KVC/KVO 謂詞NSPredicate 幀動畫 界面旋轉+狀態欄隱藏 plist文件 通訊 NS系列 宏定義 視圖層次 切換視圖 深淺拷貝 對象序列化 寫入文件 獲取沙盒路徑 翻轉視圖 延伸視圖 九大基本數據類型 九宮格 座標比較 UIColor 、CIColor和CGColor 之間的關係 畫圖 靜態變量 tag值 延時執行方法 中級知識點 設計模式 UIScrollView/UITableView/UICollectionView 的嵌套 動態行高 通知/代理/block 程序啓動原理 觸摸事件/手勢 圖文混編 Runtime NSRunLoop GCD ReactiveCocoa開發 3DTouch 界面渲染 Charles花瓶抓包 區分模擬器/真機項目 經常使用知識 Block 藍牙/傳感器 物理仿真器UIDynamic 通信錄獲取 音頻/視頻/二維碼 真機調試 蘋果內購/廣告 推送/遠程推送 單例模式 多線程 網絡請求 定位 源代碼管理Git iOS高級知識點 iOS高級知識點 Socket XMPP 加密 MD5詳解 Base64加密解密 RSA非對稱加密 AES對稱加密 音頻 基礎 Core Audio Audio Toolbox OpenAL AVFoundation Speex語音聊天 AudioQueue/AudioSession Speex簡介 視頻 AAC視頻.H264推流 P2P傳輸 直播 RTMP協議 RTMP直播應用與延時分析 若是作一款inke版的App 推流發佈和播放RTMP FFmpeg 基於FFmpeg的推流器 HLS流媒體傳輸協議(HTTP Live Streaming) FFmpeg ijkPlayer 直播的技術分析與實現 算法 簡介 冒泡排序 快速排序 插入排序 歸併排序 二分查找 希爾排序 動態規劃 堆排序 官方Kit ARKit. SiriKit HealthKit HomeKit SearchKit IOKit PDFKit CloudKit GameplayKit SpriteKit SceneKit MusicKit ResearchKit MapKit StoreKit AVKit 

來源:本文爲第三方轉載,若有侵權請聯繫小編刪除。 

相關文章
相關標籤/搜索