iOS是由蘋果公司開發的移動操做系統,以xcode爲主要開發工具,具備簡單易用的界面、使人驚歎的功能,以及超強的穩定性,已經成爲iPhone、iPad 和iPod touch 的強大基礎;iOS 內置的衆多技術和功能讓 Apple設備始終保持着遙遙領先的地位。html
iOS學習路線:http://www.mobiletrain.org/page/ios.htmlios
課程分 類
|
課程模塊
|
模塊介紹
|
課程內容
|
Part1 C語言 |
C語言和Objective-C語言
|
C語言
|
Mac系統及經常使用工具、進制;C數據類型、常量變量、運算符、表達式、格式化輸入輸出 |
關係運算符、邏輯運算符、if、條件運算符、switch..case.. | |||
while循環、do..while循環、for循環 | |||
一維數組、數組排序、字符數組 | |||
二維數組、字符串數組、多維數組 | |||
函數分類、函數聲明和定義、函數調用,形參實參、函數嵌套調用 | |||
結構體、結構體數組 | |||
指針 | |||
高級指針 | |||
程序存儲區劃分、動態申請內存、內存操做函數、宏 | |||
函數指針、回調函數、動態調用 | |||
Objective-C語言
|
面向對象概念、類和對象、類的定義、對象建立 | ||
實例變量可見度、方法、setter、getter | |||
繼承、初始化方法、便利構造器 | |||
字符串的基本使用、數組的基本使用、學習查閱API文檔 | |||
數組排序、block語法、基於block數組排序、枚舉法遍歷、快速枚舉法 | |||
字典、集合、for..in、NSNumber、NSValue | |||
NSDate、NSDateFormatter、類目、延展、協議、代理 | |||
屬性、點語法、KVC、KVO、選擇器、Class | |||
內存管理、NSCopying協議、屬性內存管理、數據持久化 | |||
便利構造器內存管理、集合內存管理、複習 | |||
Part2
IOS應用
開發階段
|
UI設計與搭建
|
視圖編程入門
|
建立iOS工程的注意事項,UI視圖編程框架,視圖基類UIView的基本使用,UIWindow的做用,iOS開發中座標位置關係,基礎控件UILabel基本用法; |
UI視圖交互與事件機制
|
學習事件驅動型控件使用方法,瞭解UI事件機制,掌握UIImage的建立方法,掌握UIButton 使用和事件機制,UIViewController的初步使用; | ||
UIView無所不談
|
界面基類UIView 的學習與使用,UIView層次關係,UIView Dock停靠模式,UIImageView的基本用法;CALayer的使用,UIView基本動畫實現 | ||
UITextField和UIViewControler詳解
|
UITextField經常使用的屬性和方法,UITextField第一響應者,UITextFied經常使用代理方法,定製鍵盤;UIViewController的做用和MVC初步介紹 ,UIViewController生命週期;模態視圖控制器的視圖切換;UIViewController管理子控制器;AppDelegate傳值; | ||
UINavigationController
|
UINavigationItem,UIBarButtonItem,UINavigationBar,UIToolBar,導航控制器如何管理視圖控制器; | ||
經常使用控件介紹
|
xib的初步使用,UISegmentControl,UISlider,UISwitch,UIActivityIndicatorView,UIProgressView,UIStepper,UIWebView, UIAlertView, UIActionSheet等經常使用控件的介紹;Storyboard初步 | ||
UITabBarController
|
UITabBarController使用,UITabBarItem使用,如何隱藏UITabBarController自帶的標籤欄,NSUserDefaults數據保存; | ||
事件處理詳解和手勢的使用
|
iPhone中事件分發機制詳解,UITouch的使用,UIEvent,手勢基類UIGestureRecognizer、點擊手勢UITapGestureRecognizer、長按手勢UILongPressGestureRecognizer、旋轉手勢UIRotationGestureRecognizer、長按手勢UIPinchGestureRecognizer、輕掃手勢UISwipeGestureRecognizer等手勢的使用及UIGestureRecognizerDelegate; | ||
UIScrollView滾動視圖
|
UIScrollView的使用,UIScrollView經常使用的代理方法,UIPageControl的使用,UITextView的基本用法;UIScollView的複用 | ||
UITableView(1)
|
UITableView初步使用;UITableView分區(section)功能;UITableViewCell的複用機制;系統自帶的UITableViewCell的樣式;UITableView的行編輯操做;向tableView註冊cell | ||
UITableView(2)
|
UITableView多選刪除功能;UITableView搜索功能;如何設置UITableView的索引;UITableView定製Section; | ||
UITableViewCell定製
|
UITableViewCell 純代碼定製,UITableViewCell 用xib定製,UITableViewCell MVC設計模式; | ||
UICollectionView
|
UICollectionView的使用場景,UICollectionViewCell,UICollectionReuseableView,UICollectionFlowLayOut,瀑布流的實現 | ||
初級網絡
|
Json解析和異步下載
|
網絡異步下載,NSJSONSerialization解析,SBJSON和JSONKit等第三方庫解析的瞭解,SDWebImage異步圖片下載使用, NSURLConnection,NSURLSession的基本使用; | |
Json解析愛限免項目2個接口(練習)
|
練習使用Jason解析;AFNetWorking的基本用法 | ||
SNS社區項目和POST上傳/SNS項目登錄和相冊管理
|
HTTP協議POST請求;ASIFormDataRequest POST 用法;NSURLConnection POST用法; HTTP GET請求和POST請求的區別;AFNetWorking的Post請求 | ||
XML解析
|
掌握XML格式數據的特色,掌握經常使用的XPath語句,GData XML解析器使用,UITableView下拉刷新功能的實現(EGO+iOS6以後系統自帶控件),UITableView 觸底數據功能的實現; | ||
多媒體處理和圖文混排
|
圖文混排的原理,多媒體技術的使用範圍,AVAudioPlayer、AVAudioRecorder、MPMoviePlayerViewController,UIImagePickerController調用相冊,UILabel高級部分,動態計算UITableViewCell; | ||
觀察者模式和通知中心/KVC/KVO
|
觀察者模式,通知中心的用法,KVC的基本用法,KVO的基本用法; | ||
數據處理
|
sqlite數據庫FMDB編程
|
數據庫基本原理,單表SQL語句,多表聯合查詢SQL語句,學習開源庫FMDB用法。 | |
數據庫CoreData編程
|
CoreData存儲數據,模型文件來描述數據模型,NSManagedObjectContext的用法。 | ||
初級項目(掌廚)
|
掌廚項目第一天
|
如何着手構建一個項目,項目的UI架構實現,網絡請求類的封裝,首頁UI的實現 | |
掌廚項目次日
|
對症治療模塊二級界面、三級界面和詳情的實現 | ||
掌廚項目第三天
|
熱門推薦和當月菜單功能的實現 | ||
掌廚項目第四天
|
萬道美食任你選模塊中複雜UI邏輯的實現 | ||
掌廚項目第五天
|
實現只能選菜和搜索功能 | ||
高級網絡
|
iPad編程程序和故事板詳解
|
iPad編程,iPad/iPhone適配,iOS6, iOS7適配,國際化本地化語言適配,程序之間相互調用,通信錄處理,Javascript和UIWebView交互; | |
系統地圖和定位/百度/高德地圖
|
MKMapView和MKMapViewDelegate使用,MKPinAnnotationView的使用, CLLocationManager和CLLocationManagerDelegate使用,MKAnnotation使用,長按手勢UILongPressGestureRecognizer的使用,百度地圖和高德地圖SDK的使用 | ||
多線程編程
|
多線程理論介紹;多線程NSThread模型;多線程NSOperation模型;NSRunLoop原理;異步圖片下載SDWebImage原理; | ||
Blocks/GCD編程/Blocks傳值
|
Blocks介紹,Blocks回調傳值,Blocks封裝網絡請求,GCD多線程模型; | ||
Socket套接字編程
|
UDP介紹,TCP/IP協議介紹,服務器/客戶端模型,AsyncSocket如何發送UDP報文,如何發送TCP報文,IM通信協議介紹 | ||
即時通信IM/XMPP編程
|
UDP介紹,IM通信協議介紹; | ||
自動佈局+Masonry
|
xib和故事板結合自動佈局的使用,代碼界面第三方庫實現自動佈局 | ||
MediaStream流媒體
|
AVPlayer定製視頻播放器,百度媒體雲的使用 | ||
iOS七、iOS8新特性
|
iBeacon,MC,TouchID,HealthKit,App Extensions | ||
各類開源庫
|
GPUImage濾鏡 OpenCV/人臉識別 HGML動畫框架, UIImage+category, 二維碼掃描等 |
||
Part3 IOS遊戲開發 |
c++基礎
|
||
遊戲引擎(cocos2d-x)
|
|||
遊戲性能優化
|
|||
遊戲特效
|
跑酷(模擬物理和重力感應,封裝碰撞機制,學會使用提供tile工具), 飛機(優化同屏大量子彈飛機的出現消失,子彈特效的實現,包括激光效果,弧度跟蹤導彈,雷電特效等), 塔防及搖色子大富翁(關卡設計,tile的使用), 消除(每種消除遊戲的3種算法實現 消滅星星,對對碰,三消,四消,五子棋,象棋,圍棋,軍旗,跳棋), 捕魚(實現同步網絡遊戲捕魚效果,兩種方法實現此類飛行射擊等遊戲), 益智遊戲(泡泡龍,俄羅斯方塊,練練看,掃雷,貪吃蛇,打球,超級瑪麗魂鬥羅,挖金,2048,打地鼠,拉吧,鱷魚洗澡,十滴水) 網絡遊戲 C0C類型 模擬+養成 棋牌類遊戲(撲克類,鬥地主,扎金花,牛牛,德州撲克 ) 回合制遊戲:超級龍珠 口袋夢幻(大地圖跑來跑去即時戰鬥或者回合) 卡牌+試試戰鬥:刀塔傳奇(UI,任務,合成,buf,戰鬥等) |
||
基本與高級遊戲實戰
|
|||
服務器端入門
|
|||
Part4 項目實戰 |
高級項目
|
基於社交的文件分享項目
|
此項目中覆蓋了LBS,地圖搜索,路線查詢,導航等重要地圖功能;上傳普通文本,圖片,zip包,視頻,音頻等post上傳功能;大文件的異步併發下載,下載管理,斷點續傳等下載功能;分類檢索文件功能;即時通信功能等高級網絡的核心知識. |
項目實戰
|
相關技術介紹
|
如何使用SVN和git進行多人協同開發和代碼管理 | |
真機調試和上線流程 | |||
友盟分享和移動數據統計,第三方帳號sso登陸 | |||
推送原理,包括遠程和本地推送,極光推送,百度雲推等 | |||
設計模式詳解和的代碼重構方法 | |||
Instrument內存查漏和程序優化 | |||
企業證書部署ipa,iCoud雲備份 | |||
製做靜態庫和framework | |||
epub通用電子書打包規範介紹 | |||
cocoaPods管理第三方庫 | |||
應用程序內購+支付寶sdk使用 | |||
畢業階段
|
模擬面試和畢業答辯
|
由項目經理對學生進行模擬面試,讓學生提早體驗去企業真實面試的情景,並有專業項目老師對學生項目進行嚴格的畢業驗收 |