高级iOS游戏开发工程师周末班
在培训经理的带领下由学员组成的团队完成移动互联网iOS平台手机游戏精品项目:植物大战僵尸,愤怒的小鸟,3D坦克大战,网络游戏胡莱三国等,通过实际项目熟练掌握移动互联网iOS游戏软件的开发与设计;积累5万行的编码能力,使学员具备2年以上的iOS游戏开发经验。
课程名称 | 课程内容 | 培训目的 |
移动互联网开发技术 |
||
移动互联网开发平台 | 移动互联网定义;移动互联网开发平台:iOS、Android、Windows Phone等 | 掌握移动互联网开发平台 |
移动互联网开发环境 | 移动互联网开发环境:iPhone、Android、Windows Phone;手机模拟器; 手机软件开发流程; | 掌握移动互联网的开发环境及开发流程 |
Unix/Linux下的C/C 程序设计 |
||
Unix/Linux常用命令 | Unix/Linux系统介绍,Unix常用命令讲解及实践 | 掌握Unix/Linux操作系统结构以及常用命令的使用 |
Unix/Linux开发环境 | 掌握客户端软件Exceed的使用;掌握makefile的编写以及调试工具的使用。 | 掌握Unix/Linux下的开发环境 |
C语言 |
C语言概要以及指针的应用 | 熟练掌握Unix/Linux下的C语言的使用 |
C/C 程序设计 |
C 语言特色,C 程序结构、设计;面向对象(OO) 三大特性、类和对象概念、构造与析构、数据封装;类的继承、虚拟继承、多态性和虚函数;运算符重载;函数模板和类模板,异常处理 | 熟练掌握Unix/Linux下的C 的面向对象的程序设计 |
STL类库使用 | 掌握名字空间std的使用;输入输出流、串流、文件流;掌握list, vector, map等的使用 | 熟练掌握Unix/Linux下的STL模板库的使用 |
面向对象的设计与分析 | ||
Rational Rose |
Use Case Diagram, Class Diagram;Sequence Diagram, Collaboration Diagram, Activity Diagram, State Diagram; Component Diagram, Deployment Diagram; |
熟练掌握Rational Rose工具以及各类视图在面向对象的软件设计中的应用 |
设计模式 |
基本模式:Inheritance,Substitution, Delegation模式分类:Creational, Structural, Behavioral;Class Pattern, Object Patterns;常用设计模式应用 |
掌握OOA/D的设计方法,和常用模式的应用 |
Objective-C软件设计 |
||
Objective-C语法基础 |
Objective-C简介;Objective-C语法的特点;类的定义;类的实现;消息机制;方法重载;属性声明;类的组合 |
掌握Objective-C语言基本语法基础及程序设计 |
内存管理 |
自动释放特性;引用计数;内存分配、初始化以及析构;堆栈、内存管理(alloc、copy、retain,release、autorelease, strong、weak);特殊类型(self,super,nil,SEL) |
重点掌握在Objective-C语言中的内存管理机制,包括自动释放池,引用计数器,内存的手动分配和释放等。 |
继承、协议、分类 | 基类(NSObject);方法的重写;向下转型和动态绑定;id类型(id Type);协议的定义;NSCopying协议;分类的定义(Categorie);分类的实现与作用 | 重点掌握类与类之间的继承关系,协议以及分类的使用 |
基础框架 |
Cocoa的基本框架Foundation Framework;
字符串(NSString NSMutableString)、数值对象(NSNumber NSValue);数组(NSArray,NSMutableArray)、字典 (NSDictionary,NSMutableDictionary)、集合(NSSet,NSMutableSet)、快速 枚举(for…in) NSIndexPath;日期与时间(NSDate)、日期格式(NSDataFormatter)、日历 (NSCalendar)、定时器(NSTimer);文件管理(NSFileManager)、程序包(NSBundle)、缓冲区(NSData);网络连接(NSURLConnection)、网络地址(NSURL)、网络请求 (NSURLRequest)、请求回应(NSResponse)、错误信息处理(NSError) |
熟悉Foundation Framework的使用。重点掌握iOS的基础框架,其包含了iOS 开发的基本数据类型,在iOS SDK中NS开头的类都属于这个框架重点突出介绍开发中常用的类 |
文件使用 | NSCoding 协议;程序包(NSBundle)、缓冲区(NSData);管理文件和目录;工作目录、工作路径;基本文件的操作 | 熟练掌握数据存入目录或指定路径,以及文件管理 |
iPhone手机软件开发 |
||
使用Xcode |
Xcode简介;在Xcode中创建卓绝个HelloWorld项目;在Xcode中新建类 |
掌握Xcode的基本应用 |
使用Interface Builder |
Interface Builder介绍;在Interface Builder中创建卓绝个项目;在Interface Builder中建立连接;其他Interface Builder功能; |
掌握Interface Builder应用 |
创建基本视图控制器 |
窗体视图控制器(Window-based Aplication);基本的视图控制器(View-based Aplication);表视图控制器(TableViewControler); |
掌握创建基本视图控制器 |
监控事件和动作 |
事件简介;触摸的例子;其他事件功能;动作简介;向应用程序添加按钮; |
掌握监控事件和动作 |
创建高级视图控制器 |
选项卡栏视图控制器(TabBarAplication);导航控制器(Navigation-based Application);使用翻转控制器(Utility Application);模式视图控制器(Split View-based Aplication); |
掌握高级视图控制器的应用 |
iPhone网络通信开发 |
HTTP应用;从Web页面获取内容;向Web页面发送数据;Socket应;SMS应用 |
掌握iPhone网络通信软件开发 |
iPhone应用数据存储及数据解析 |
XML文件的数据存储;XML文件的数据解析;JSON文件的数据存储;JSON文件的数据解析 |
掌握iPhone应用程序中XML文件解析和JSON文件解析 |
多媒体 |
利用Core Graphics绘制简单图像;访问相机Camera;图像介绍UIImagePickerController;手动视频播放;使用Media Player框架;手动播放声音;使用AVFoundation框架; |
掌握图像,视屏和音频的应用 |
数据库 |
使用SQLite;通过数据库SQLite管理数据 |
掌握SDK工具编程的应用,使用嵌入式数据库SQLite |
定位:加速计和位置 | 加速计和方向;加速计和移动;加速计和手势;使用Core Location框架;使用MapKit框架; | 掌握定位的应用 |
绘制图形 | Quartz 2D简介;Quartz上下文;绘制路径;设置图形状态;Quartz中的高级绘图功能;Core Animation简介;OpenGL简介; | 掌握绘制图形的应用 |
本地化应用程序 | Localization Architecture;本地化字符串Localizing Strings;本地化数字和日期Localizing Number and Date;本地化XibLocalizing Nib | 掌握本地化应用程序的应用 |
调试与性能调整 | 理解并修复构建中的错误;找出重复释放的“Zombie”对象;使用Shark检查性能;使用Instruments检查性能;使用Clang静态分析器检测性能; | 掌握程序Debugging并能够调整程序的性能 |
iOS高效开源第三方类库 | ||
iOS高效开源第三方类库 | 主要介绍iOS开发中10大高效开源类库:MBProgressHUD(进展指示符库)、ASIHttpRequest(HTTP Network库)、JSON Framework(JSON支持)、Facebook iOS SDK(Facebook API类库)、FMDatabase(SQLite的Objective-C封装)、SDWebImage(简化网络图片处理)、GData client(iPhone上所有Google相关服务的类库)、SKPSMTPMessage(Quick SMTP邮件发送)、Three20(通用iOS库)、瀑布流等 | 熟练掌握iPhone开发中新型的第三方强大类库引擎,提高项目的开发能力 |
第三方类库项目应用 | 熟练应用iOS第三方类库在实战项目中,掌握iOS开源类库的在项目中应用技巧 | 在项目开发中熟练应用iOS第三方类库 |
Cocos2D iPhone游戏开发 | ||
Cocos2d-iPhone开发引擎 | 初步学习安装Cocos2d-iPhone项目模板;创建并运行“HelloWorld”,了解其简述;学习类库主程序;运行示例程序;编译更新帮助文档 | 掌握如何设置Cocos2d应用开发,安装项目模板和了解主程序 |
Cocos2d基础知识 | 学习基本的Cocos2d类,包括:场景(CCScene)、层(CCLayer)、精灵(CCSprite)、导演(CCDirector) | 掌握Cocos2d开发中的基本概念,掌握基本的引擎类的应用 |
iPhone OS的Touch事件和Cocos2d的事件处理机制 | 学习iPhone OS提供的4种Touch事件;Cocos2d引擎事件处理机制通过接管、分发和处理全面实现针对用户触摸输入的响应 | 通过iPhone OS的Touch事件进一步了解Cocos2d-iPhone引擎的事件处理机制的核心 |
粒子系统 | 学习使用Particle Designer(粒子效果设计师)工具来制作粒子效果;了解粒子系统的组成:粒子,发射器,动态过程。 | 掌握粒子效果的应用,了解粒子系统的组成,使用粒子系统 |
瓦片地图 | 学习瓦片地图(TileMap)的基础知识和如何利用瓦片地图编辑器(Tiled Map Editor)制作瓦片地图 | 掌握瓦片地图的制作方法,了解瓦片地图的应用 |
物理系统 | 学习Cocos2d-iPhone游戏中的物理引擎,包括Cocos2d图形库内置的Box2D和Chipmunk两大物理引擎 | 掌握Cocos2d图形库中的两大物理引擎,提高对游戏的现实化模拟 |
游戏框架 | 学习整体游戏的编程模型;学习Cocos2d-iPhone游戏的编程模型,包括:内存数据、更新引擎、玩家指令、定时器 | 掌握一个游戏的模拟实现系统和学会Cocos2d-iPhone游戏的编程模型 |
Cocos2d-x手机游戏跨平台开发 | ||
智能手机操作系统介绍 | 主要介绍几个常见的智能手机操作系统,包括苹果的iOS系统、谷歌的Android系统和微软Windows Phone系统等 | 熟悉智能手机游戏开发的各个平台 |
Cocos2d-x介绍 | 进入Cocos2d-x的世界,主要介绍游戏的分类、游戏引擎的基础知识,同时也简单介绍游戏引擎中的渲染引擎和物理引擎介绍引擎的基础知识和引擎的杰出游戏分享 | 了解掌握游戏开发的分类和游戏引擎 |
搭建跨平台的开发环境 | 主要介绍在windows系统上对Cocos2d-x环境的搭建,安装Visual Studio环境、安装Android环境、安装WPhone环境、安装Cocos2d-x环境; 在iOS环境搭建Cocos2d-x环境,以及测试HelloWorld案例 | 掌握如何在Windows和iOS系统上搭建跨平台游戏的开发环境 |
Cocos2d-x引擎基础使用 | 引擎的基础使用,介绍开发过程中的各个环节展开介绍,包括游戏的整体架构、图形、动作和菜单等 | 熟练掌握使用引擎的基本操作和使用 |
高级特性 | 主要针对引擎的高级特性,介绍引擎中的物理引擎、粒子系统和声音模块等 | 熟练使用的物理引擎、粒子效果和声音 |
周边工具 | Cocos2d-x的使用工具,介绍应用程序打包工具、图片编辑器、地图编辑工具和粒子系统设计工具等 | 熟练掌握对工具的使用 |
Cocos2d-x之交叉编译 | 针对cocos2d-x交叉编译,介绍基于cocos2d-x引擎的游戏如何做到跨平台,同时以实际的游戏为例将其较差编辑到iOS平台、Android平台和WPhone平台 | 熟练掌握Cocos2d-x交叉编译的方法,并能够做到跨平台 |
Cocos2d-x案例“魔塔” | 主要通过一个完整的案例制作过程,将益智类游戏(魔塔)一步步的设计并开发出来 | 通过一个完整游戏案例制作,系统性的贯穿了引擎的使用 |
Lua游戏脚本开发 | ||
Lua程序设计 | 主要介绍Lua软件开发语法规则;介绍Lua中以数组为代表的数据结构、数据文件与持久化、标准库和IO库 | 熟练掌握Lua语法规则、表和对象、库文件 |
Lua for iOS | 主要介绍使用the top Lua frameworks创建游戏;如何使用Lua库、包和第三方工具;使用Codea创建iPad或iPhone游戏 | 熟练掌握Lua进行iOS游戏开发 |
JavaScript游戏脚本开发 | ||
JavaScript程序开发 | 主要介绍JavaScript 的核心ECMAScript基础;ECMAScript对象;ECMAScript继承等 | 熟练掌握JavaScript的软件开发 |
JavaScript for iOS | 主要介绍了JavaScript在iOS环境下的基础知识,使用Objective-C和JavaScript来进行iOS游戏开发应用 | 熟练掌握使用Objective-C和JavaScript来进行iOS游戏开发应用 |
iOS网络游戏开发 | ||
iOS网络游戏协议 | 主要介绍网络协议HTTP、FTP、TELENT、UDPI办议、TCP/IP协议、Socket编程介绍 | 熟练掌握对HTTP、TCP/IP协议以及网络通行Socket的使用 |
iOS网络游戏开发 | 主要介绍了如何创建服务器,客户端如何向服务器发送请求,以及同步更新所有客户端 | 掌握网络游戏开发基本原理以及在实战项目中的应用 |
iOS游戏开发过程 |
||
iOS游戏开发过程 |
系统学习软件开发过程:需求分析,概要设计,详细设计,编码,测试。 |