欢迎加入【iOS/Swift/OC开发交流群|127183325】交流学习
一. 游戏类
地下城联盟
- 使用的游戏引擎:cocos2d-x
- 开发平台:Mac/Linux/Windows
- 开发工具:Xcode/VS
- 开发语言:C++/Lua
火车危机
- 开发平台:Mac/Windows
- 开发工具:Unity3D
- 开发语言:javascript+C#
cocos2d-x介绍
引擎介绍
- Cocos2d-x是一个开源的移动2D游戏框架,MIT许可证下发布的。这是一个C++ Cocos2d-iPhone项目的版本。
- 可以使用多种语言开发:C++/Lua/javascript
- 跨平台,横跨iOS Android WP 黑莓等操作系统
- 辅助开发工具丰富,有UI编辑器,动画编辑器,场景编辑器,粒子编辑器
- 项目地址:cocos2d-x
家族成员
- cocos2d-x属于cocos2d家族,cocos2d家族主要包含四个开发引擎和一些周边的辅助工具,四个开发引擎有cocos2d-x,cocos2d-html5,cocos2d-objc,cocos2d-js。
- cocos2d-html5是针对Web平台的游戏引擎,使用js开发。
- cocos2d-objc是使用原生语言写的游戏引擎,只能开发iOS和OS X平台的游戏。
- cocos2d-js是使用javascript开发的游戏引擎,使用js开发,底层调用C++。
开发游戏的优势
- 流程控制简单。
- 使用cocos2d开发时类似一台舞台剧,分为场景(Scene),幕(Layer),演员(Sprite),动作(Action),舞台特效(Effect)。
- 游戏过程就是场景间的切换,幕的切换,演员的表演,外加一些舞台特效。比舞台剧多出的一点就是游戏和玩家的交互。
cocos2d-x和CrossApp
- CrossApp是一个移动端应用跨平台开发引擎,它借鉴了cocos2d-x底层跨平台的部分,使用C++来进行开发,性能和原生不相上下。
二. 应用类
FaBo机器人客户端
整个项目的架构可以看下图:
FaBo机器人客户端
项目的总结地址:项目总结
砼车帮
砼车帮项目总结地址:项目总结
三. 游戏和应用开发的比较
- 游戏更主要的是在View中的绘制,应用更主要的是数据的呈现。
- 游戏场景的切换是View间的切换,应用主要是Activity/Controller间的切换。
- 游戏对FPS要求更高。
- 在架构上,应用的分层更清晰。
四. 工作中用到的一些东西
Git工作流
Git工作流分类比较多,没有固定的标准,一般都是将多种工作流方式进行糅合形成适合自己团队进行开发的一种工作流。下面的五种工作流是使用比较多,流程相对清晰的工作流。
集中式工作流
流程图:
集中式工作流功能分支工作流
流程图:
Gitflow工作流
Gitflow工作流用到四个分支,历史分支,功能分支,发布分支和维护分支。主要用于一些比较大型的项目。
流程图:
Gitflow工作流- 历史分支。Gitflow工作流使用了两个分支来记录项目的历史,包含master分支和develop分支,master分支是一个发布历史分支,develop分支是功能开发历史分支。示意图如下:
- 功能分支。在进行一个新功能开发时,需要从develop分支拉出一个新的分支用作功能开发分支,功能开发完成后需要合并到develop分支。示意图如下:
- 发布分支。在进行发布的时候会用到发布分支。到了既定的发布时间后,需要从develop分支拉出一个新的分支用作发布分支。发布分支只能用做Bug修改,新功能从这个时间点开始不能再放到发布分支上。在进行发布工作时不会影响团队其他人进行新功能的开发。示意图如下:
- 维护分支。用于已经发布的产品进行快速修复问题的分支。在master分支拉出一个新的分支用作维护分支,修复完成后立即合并到master和develop分支上。这样就可以不用等下个发布循环结束就可将问题处理掉。示意图如下:
Forking工作流
流程图:
Pull Request工作流
LLDB调试
LLDB是从Xcode5开始自带的一个调试引擎,可以很方便的对程序进行调试和排错。
常用命令
- p。打印基本变量的值或者指针的地址。
- po。打印对象的描述信息。
- expr。在调试过程中修改变量的值。
- call。在调试过程中调用方法。
- bt。打印调用堆栈。
- image。用于寻址,寻找堆栈地址对应的代码位置。
- help。打印帮助信息。
一些第三方库
CocoaAsyncSocket
一个socket第三方库
Masonry
纯代码实现AutoLayout
FCUUID
获取手机唯一标示的替代解决方案
QRCodeReaderViewController
二维码扫描第三方库
第三方库管理工具CocoaPods
CocoaPods是一个非常强大的第三方库管理工具,使用它可以很方便的引入第三方库,而且使用起来非常简单。
安装第三方库
pod install
更新第三方库
pod update
如果发现安装或者更新非常缓慢的,可以使用下面的命令
pod install --verbose --no-repo-update
pod update --verbose --no-repo-update
网友评论