IOS學習路線(2014-05-08)

黑馬最新IOS就業班(14年7月-12月份)培訓視頻教程
第一階段:UI基礎(17天)
計算器案例
  • 介紹類前綴、簡單介紹新建工程的文件結構、介紹Storyboard文件、搭建UI界面
  • 引入UIView和UIViewController的概念、添加監聽按鈕點擊、實現點擊事件
  • 其餘拖線方式、連線錯誤演示
按鈕的詳細使用
  • 修改按鈕的frame實現放大/縮小(注意autolayout)
  • 實現按鈕的上下左右移動/代碼抽取、增長動畫、經過修改center/bounds來實現上述功能
  • 純代碼建立UIButton並設置相關屬性、transform實現移動/縮放/旋轉
圖片瀏覽器
  • 拖控件搭建UI界面、在代碼裏面寫數據,並實現功能
  • 優化代碼:圖片數據獨立到數組裏、懶加載概念、圖片數據寫入到plist文件
應用管理
  • 預習代碼演示,思路分析、懶加載數據
  • 九宮格算法、代碼添加子控件/readonly屬性介紹
  • 引入模型概念/分析模型的好處、xib描述界面/storyboard對比
  • 自定義View的封裝、封裝的總結、引入MVC
  • 代理設計模式/view圓角實現/塊動畫

超級猜圖
  • 預習代碼演示,思路分析、stroyboard的3.5英寸和4英寸的選擇、隱藏狀態欄方法、按鈕屬性的介紹
  • 怎樣修改工程名、新建模型文件/介紹代碼庫的使用、懶加載數據、下一題功能實現
  • 展現大圖功能/還原小圖實現、添加正確答案按鈕
  • 添加待選按鈕、待選按鈕點擊事件、答案按鈕點擊事件
  • 判斷答案是否正確/加分、提示功能/減分、抽取代碼和修改bug
  • 2x圖片介紹/icon圖/default圖介紹、KVC的使用介紹

UIScrollView
  • UIScrollView基本使用、contentOffset、contentInset、contentSize
喜馬拉雅
  • 預習代碼演示,思路分析、啓動圖片R4的添加、功能實現

圖片縮放
  • 預習代碼演示,捏合手勢介紹、介紹拖拽/滾動代理方法、介紹縮放代理方法、實現圖片的縮放
圖片輪播器
  • 預習代碼演示,思路分析、基本界面搭建、UIPageControl介紹
  • 利用代理方法實現圖片的分頁功能、NSTimer介紹/利用定時器實現自動滾動、定時器bug修復
UIAlertView/UIActionSheet
  • UIAlertView的使用和代理方法介紹、UIActionSheet的使用和代理方法介紹
UITableView
  • 數據源方法、代理方法、cell的重用原理、自定義cell
  • 利用UIAlertView實現數據的刷新、局部刷新和所有刷新
汽車品牌展現
  • 3個數據源方法展現數據、頭部和尾部標題方法、引入數據模型、UITableView兩種樣式對比
  • 分析得知須要兩個數據模型、數據模型嵌套的時候KVC的使用、增長索引
 
LOL英雄
  • 懶加載數據、數據源方法展現數據/設置行高方法、TableView多組數據和單組數據的模型對比
  • Cell的常見屬性介紹、TableView常見屬性介紹、UIColor介紹/24bit/32bit顏色介紹

團購界面
  • 建立數據模型類/懶加載數據、怎麼刪除安裝的app、建立xib文件描述局部UI、自定義Cell類
  • 自定義加載更多View、代理設計模式實現加載更多數據、簡單介紹團購廣告位的作法

微博界面
  • 建立數據模型類/懶加載更多數據、storyboard介紹UITableViewController
  • 純代碼自定義cell/計算文字尺寸、引入frame數據模型、cell封裝優化

通知機制
  • 模擬新聞推送、通知使用注意點、通知和代理的對比和選擇
QQ聊天界面
  • 建立數據模型/懶加載數據、純代碼自定義cell、引入frame數據模型、數據展現
  • 時間bug修正、氣泡拉伸講解、氣泡拉伸和計算文字尺寸代碼抽取
  • 鍵盤通知實現鍵盤彈出和收回、textField代理實現發送消息、自動回覆消息

QQ動態界面
  • 純手工寫數據實現界面、介紹plist文件實現界面、使用靜態cell實現界面
QQ好友列表界面
  • 分析數據結構應該有個數據模型、建立兩個模型類/懶加載數據、數據初步顯示、TableView頭控件介紹
  • 自定義UITableViewHeaderFooterView、layoutSubviews方法介紹
  • 點擊收起和展開功能實現、三角箭頭旋轉功能實現、會員功能快速定位及實現

應用管理
  • 功能分析/建立數據模型類/懶加載數據、動態cell介紹、使用動態cell實現自定義cell
  • 數據展現、cell重用的時候注意點介紹及解決方案
第二階段:UI進階(18天)
UIPickerView\UIDatePicker
  • PickerView多列使用(點菜)、PickerView多列聯動(城市選擇)、PickerView單列使用(國旗選擇)
  • DatePicker使用、UIToolbar使用、利用DatePicker自定義鍵盤和自定義鍵盤工具條
程序啓動過程
  • 項目結構介紹、info.plist介紹、pch介紹、自定義LOG
  • UIApplication常見屬性、應用程序狀態欄管理
  • UIApplication OpenURL、UIApplicationDelegate常見方法、程序的啓動過程
  • UIWindow介紹、經過代碼建立UIWindow、經過Storyboard建立UIWindow、主窗口
控制器
  • 直接建立、經過XIB建立、經過Storyboard建立
  • 沒有同名Xib、經過Storyboard、指定Xib(NibName)
  • 有同名Xib、有同名Xib和同名去掉Controller的Xib
  • 重寫控制器loadview、控制器View延遲加載、控制器View建立練習
  • UIViewController的生命週期方法
導航控制器
  • 導航控制器簡單使用、子控制器的管理原理、導航控制器棧
  • 設置導航條數據、導航控制器結構、經過Storyboard建立導航控制器
私人通信錄
  • storyboard搭建界面、UISwitch使用、UIActionSheet使用、UITextField使用(監聽)
  • Segue使用(屬性、類型)、UIAlertView使用、MBProgressHUD使用、Segue完整執行過程
  • 控制器數據傳遞(順傳、逆傳)、自定義分割線"
  • 應用沙盒介紹、應用沙盒獲取方式、plist存儲數據
  • NSUserDefaults存儲數據、歸檔(NSCoding)存儲數據、完善存儲通信錄數據
  • UITableView編輯模式(刪除)、刷新表格的幾種方式、UITableView編輯模式(添加)
UITabBarController
  • UITabBarController使用(代碼)、UITabBarController使用(Storyboard)、UITabBarController View結構
QQ主流框架
  • 主流框架搭建及結構介紹、如何設置啓動圖片、靜態單元格
  • Modal使用(代碼)、Modal使用(Storyboard)
Quartz2D
  • 基本圖形繪製(線、多邊形、圓、文字、圖片)、繪圖練習(小黃人)、圖形上下文棧
  • 矩陣操做(旋轉、縮放、平移等)、裁剪、重繪刷幀、重繪刷幀作動畫
  • 繪圖複習、模仿UIImageView、圖片水印
  • 圖片裁剪、屏幕截圖、小說條紋背景
 
觸摸事件
  • 響應者對象和常見方法介紹、View拖拽(UITouch使用和UIEvent使用)
  • 塗鴉(CGContextMoveToPoint/CGMutablePathRef)、塗鴉(UIBezierPath)
  • 手勢解鎖、觸摸事件傳遞、響應者鏈條、手勢識別器的使用
 
核心動畫
  • CALayer使用、CALayer建立圖層、CALayer position和anchorPoint、CALayer隱式動畫、CALayer自定義圖層
  • CABasicAnimation、CAKeyframeAnimation、圖標抖動
  • CATransition\CAAnimationGroup\UIView動畫
網易彩票
  • 項目常見配置及框架搭建、TabBar點擊處理、TabBar封裝
  • 導航欄主題設置、自定義導航控制器、自定義導航欄標題按鈕
  • 系統適配和編譯器適配、iOS6\iOS7屏幕適配、UIBarButtonItem樣式
  • 設置界面作法分析、實現設置界面、cell的封裝
  • UICollectionView使用、自定義UICollectionViewCell、抽取控制器父類
  • 存儲開關狀態、實現幫助界面(webview執行JAVAscript代碼)、實現關於界面
  • 真機調試、電話\發短信\郵件、應用評分、打開其餘應用、block循環引用、實現轉盤抽獎
  
第三階段:多線程網絡(13天)
NSThread
  • 多線程基礎、pthread、開啓線程的3種方式
  • 線程的狀態、線程安全問題、線程間的通訊
GCD
  • 同步方法和異步方法、隊列的使用、線程間的通訊
  • 延遲執行、一次性代碼、隊列組、單例模式-ARC、單例模式-MRC、用宏抽取單例模式
NSOperation
  • NSOperation和NSOperationQueue的概念理解、NSInvocationOperation、NSBlockOperation
  • NSOperationQueue的常見方法、最大併發數、操做依賴、隊列的取消\暫停\恢復
cell的圖片下載
  • 簡單的同步下載、利用NSBlockOperation進行異步下載、解決重複下載問題
  • 解決圖片內存緩存問題、增長圖片的沙盒緩存
  • 自定義Operation、SDWebImage的使用
網絡基礎
  • 網絡的基本概念、服務器介紹、搭建HTTP服務器
同步請求
  • HTTP協議簡介、HTTP請求的基本過程、iOS中發送HTTP請求的方案
  • 利用NSURLConnection發送一個HTTP同步請求、演示同步請求帶來的阻塞
JSON解析
  • JSON格式介紹、JSON的解析方案、NSJSONSerialization
異步請求
  • 發送一個異步請求、在block回調中處理服務器返回的數據、演示異步請求帶來的流暢
黑酷
  • 接收服務器返回的JSON格式的視頻數據、解析服務器的數據展現成表格、播放對應的視頻
  • 接收服務器返回的XML格式的視頻數據、XML語法、使用GDataXML解析XML、使用NSXMLParser解析XML
POST請求
  • HTTP請求方法介紹、GET和POST的區別、發送一個POST請求
  • HTTP協議詳解:請求、HTTP協議詳解:響應
  • 請求超時設置、請求過程當中顯示蒙版、中文URL轉碼
發送JSON給服務器
  • 爲何會有發送JSON給服務器的狀況、如何發送JSON給服務器、發送JSON給服務器的注意點
多值參數
  • 什麼是多值參數、爲何會有多值參數、如何發送多值參數
Charles
  • 什麼是Charles、Charles的安裝和破解、Charles的環境配置、利用Charles攔截網易新聞的請求
第四階段:iPhone項目實戰(16天)
新浪微博    
第五階段:iPad開發(3天)
QQ空間
美團

第六階段:實用技術(18天)
地圖定位
  • 使用CLLocationManager得到用戶的位置、經緯度常識、計算2個位置的直線距離
  • 地理編碼、反地理編碼、開源的用戶定位類庫
  • MapView的顯示、顯示用戶的位置、設置大頭針文字、地圖和反地理編碼結合使用
  • 控制地圖的顯示區域:中點、區域、添加大頭針
  • 自定義大頭針模型、自定義大頭針控件、修改大頭針顯示的圖片
  • 調用系統自帶的地圖進行導航、得到導航路線、在地圖上畫線
  • 百度地圖API簡介、演示百度地圖Demo、集成百度地圖、簡單實現POI搜索
  
應用間跳轉
  • 應用間的跳轉流程、處理應用的跳轉結果
社交分享
  • Social框架、集成友盟分享、SSO受權

靜態庫
  • 製做和使用a文件、製做和使用framework文件、bundle的使用
換膚
  • 簡單的換膚、封裝換膚過程、換膚的使用注意(tabbarcontroller)
ARC和MRC混合開發
  • 第一種解決方案:增長編譯參數、第二種解決方案:封裝靜態庫
正則
  • 正則的做用、NSRegularExpression的使用、RegexLiteKit的使用
支付寶
  • 集成前的準備工做、集成SDK、總體的支付流程
單元測試
  • 爲何須要單元測試、單元測試的好處、單元測試的紅燈和綠燈、單元測試的setUp和tearDown
打包測試程序
  • 爲何須要打包測試程序、如何打包測試程序
內存分析
  • 靜態分析(Analyze)和動態分析(Allocations)、圖片加載細節注意(有緩存和無緩存)、內存泄露
私有API
  • 什麼是私有API、使用私有API的後果、如何辨別私有API
硬件信息獲取
  • UIDevice+Extension、iOS System Services
發佈程序
  • 配置證書、建立應用、填寫應用信息、分析應用的狀態
  • 處理蘋果官方的審覈拒絕、更新版本、常見錯誤解決
推送通知
  • 什麼是推送通知、發出本地推送通知、本地推送通知的常見屬性、本地推送通知的點擊處理
  • 爲何須要遠程推送、遠程推送的基本流程、配置遠程推送的證書
  • 得到deviceToken、使用PushMeBaby發出推送消息、處理遠程推送通知的點擊
  • JPush的簡介、JPush的集成、利用JPush發出推送消息、JPush的好處分析

svn\git
  • 源代碼管理工具概述、svn的使用方式、svn的常見指令
  • svn的後悔處理、svn的衝突處理、圖形界面工具-Cornerstone、svn的目錄規範
  • git簡介、git和svn的區別、git的本地倉庫指令
  • git的遠程倉庫搭建:github和oschina、git的遠程倉庫指令、Xcode中使用git
UIDynamic
  • UIDynamic API介紹、重力行爲、碰撞行爲、捕捉行爲
屏幕適配
  • xib、storyboard中使用autoresizing、代碼使用autoresizing
  • 基本使用 - 簡單案例、增強使用 - 稍複雜案例
  • 作3~4道練習題、代碼實現autolayout、VFL
  • 有了autolayout的UILabel、基於autolayout的動畫、autolayout類庫 - UIView + Autolayout
多媒體
加速計
  • 傳感器類型、臨時傳感器、加速計的使用:UIAccelerometer
  • 小球案例、CoreMotion、搖一搖
藍牙
  • iOS中藍牙的實現方案、GameKit的使用:傳遞圖片數據、CoreBluetooth、iBeacon簡介和藍牙現狀
高級UI   
第七階段:畢業設計(9天)
小組項目實戰
  • 開發模式: 以4~8人爲一個項目小組
  • 主要任務: 利用所學的技術, 團隊合做, 實現本身的idea, 或者山寨大公司的項目
  • 課程目的: 感覺公司裏面團隊開發的節奏, 鍛鍊本身的動手能力, 鞏固所學的技術, 積累項目實戰經驗
第八階段:就業指導(6天)
現狀分析
  • 已畢業iOS學員就業薪資分析
行業分析
  • 城市分析、行業分析、技術分析、跳槽分析、學歷分析
職業規劃
  • 介紹IT崗位和職位、介紹企業組織架構、程序員將來發展方向
  • 介紹公司類型區別、如何選擇企業、如何充電學習
  • 作管理和搞技術如何去決擇、性格分析、職場分析
簡歷講解
  • 簡歷的介紹、簡歷的目的、簡歷的內容
  • 基本信息、求職意向
  • 專業技能、工做經歷、項目經驗
  • 教育經歷、我的評價、如何投遞簡歷
項目展現
  • 開發流程、文檔展現分析、如何接手公司的舊項目
複習安排
  • 如何複習遺忘的技術、複習的重點、複習計劃
面試分析
  • 求職流程、面試準備
  • 筆試、機試分析、電話面試分析、人事面試分析、技術面試分析
  • 面試中注意事項、入職手續注意事項
  • 求職心態、入職後的怎麼安全渡過試用期
面試題講解
  • 各大公司的面試題分析
  • Foundation、內存管理、多線程
  • UI控件、數據存儲
  • 第三方框架、應用程序、Socket、網絡協議
  • 單例、runtime、block、其餘
書寫簡歷
  • 提交就業指導老師審閱修改
  • 最終版修改後提交就業指導老師
模擬面試
  • 人事面試、技術面試
第久階段:即時通信項目實戰(7天)
XMPP環境搭建
  • IOS參考模型七層的做用、TCP/IP參考模型簡化、網絡通信要素
  • socket的基本使用、socket發送與讀取數據、掌握xmpp的起源與發展歷程
  • 裝數據庫、安裝 mysql圖形化管理工具、Openfire安裝、客戶端安裝與登陸
  • 熟悉框架導入的依懶類庫、瞭解xmpp的目錄結構
CocoaLumberjack
  • 安裝codeColors插件、日誌的使用 級別設置、設置自定義級別的日誌顏色
用戶登陸
  • 熟悉第三方socket框架的使用、畫圖:用戶登陸的過程、XMPPStream介紹及初始化、使用git建立企信通項目、實現登陸功能
  • 用戶登陸成功後,退出到後臺時,斷開鏈接,顯示在前臺時自動鏈接(添加一個isLogin用戶偏好設置)
  • 用戶成功登陸後,若是是從新啓動程序,直接跳到主界面,不然跳到登陸頁面、用戶成功登陸後,若是是從新啓動程序,下次啓動時自動登陸
  • 用戶登陸失敗時,清除偏好設置、用戶登陸失敗時要提示、用戶註銷流程、使用通知模式,提醒用戶登陸狀態
擴展模塊
  • 自動登陸模塊、teardowns講解
CoreData
  • CoreData簡單使用、CoreData多表關聯、CoreData生成多個sqlite文件
電子名片
  • 電子名片信息獲取、更新電子名片信息、花名冊模塊數據讀取、刪除好友
好友添加
  • 不能添加本身、自動匹配域名、用戶是否存在
消息模塊
  • 消息模塊激活、消息模塊中聊天信息的讀取、聊天信息的coreData表結構、文件傳輸
  • 獲取好友信息、學會看xmpp文檔進行功能模塊開發、iOS即時經過推送原理
第十階段:Swift
Swift
  • 基本語法、基本運算、流程控制
  • 元組、可選類型、斷言
  • 字符串、字符、集合
  • 函數、閉包
  • 枚舉、結構體
  • 面向對象、擴展、協議
  • 泛型、高級操做符
  • Swift與OC互調
相關文章
相關標籤/搜索