课程分 类
课程模块
模块介绍
课程内容
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定制视频播放器,百度媒体云的使用
iOS7、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使用
毕业阶段
模拟面试和毕业答辩
由项目经理对学生进行模拟面试,让学生提前体验去企业真实面试的情景,并有专业项目老师对学生项目进行严格的毕业验收