給自己的備忘錄

歡迎加入【iOS/Swift/OC開發(fā)交流群|127183325】交流學習

一. 游戲類

地下城聯(lián)盟

  1. 使用的游戲引擎:cocos2d-x
  2. 開發(fā)平臺:Mac/Linux/Windows
  3. 開發(fā)工具:Xcode/VS
  4. 開發(fā)語言:C++/Lua

火車危機

  1. 開發(fā)平臺:Mac/Windows
  2. 開發(fā)工具:Unity3D
  3. 開發(fā)語言:javascript+C#

cocos2d-x介紹

引擎介紹

  • Cocos2d-x是一個開源的移動2D游戲框架,MIT許可證下發(fā)布的。這是一個C++ Cocos2d-iPhone項目的版本。
  • 可以使用多種語言開發(fā):C++/Lua/javascript
  • 跨平臺,橫跨iOS Android WP 黑莓等操作系統(tǒng)
  • 輔助開發(fā)工具豐富,有UI編輯器,動畫編輯器,場景編輯器,粒子編輯器
  • 項目地址:cocos2d-x

家族成員

  • cocos2d-x屬于cocos2d家族,cocos2d家族主要包含四個開發(fā)引擎和一些周邊的輔助工具,四個開發(fā)引擎有cocos2d-x,cocos2d-html5,cocos2d-objc,cocos2d-js。
  • cocos2d-html5是針對Web平臺的游戲引擎,使用js開發(fā)。
  • cocos2d-objc是使用原生語言寫的游戲引擎,只能開發(fā)iOS和OS X平臺的游戲。
  • cocos2d-js是使用javascript開發(fā)的游戲引擎,使用js開發(fā),底層調(diào)用C++。

開發(fā)游戲的優(yōu)勢

  • 流程控制簡單。
  • 使用cocos2d開發(fā)時類似一臺舞臺劇,分為場景(Scene),幕(Layer),演員(Sprite),動作(Action),舞臺特效(Effect)。
  • 游戲過程就是場景間的切換,幕的切換,演員的表演,外加一些舞臺特效。比舞臺劇多出的一點就是游戲和玩家的交互。

cocos2d-x和CrossApp

  • CrossApp是一個移動端應(yīng)用跨平臺開發(fā)引擎,它借鑒了cocos2d-x底層跨平臺的部分,使用C++來進行開發(fā),性能和原生不相上下。

二. 應(yīng)用類

FaBo機器人客戶端

整個項目的架構(gòu)可以看下圖:


FaBo機器人客戶端

項目的總結(jié)地址:項目總結(jié)

砼車幫

砼車幫

項目總結(jié)地址:項目總結(jié)

三. 游戲和應(yīng)用開發(fā)的比較

  1. 游戲更主要的是在View中的繪制,應(yīng)用更主要的是數(shù)據(jù)的呈現(xiàn)。
  2. 游戲場景的切換是View間的切換,應(yīng)用主要是Activity/Controller間的切換。
  3. 游戲?qū)PS要求更高。
  4. 在架構(gòu)上,應(yīng)用的分層更清晰。

四. 工作中用到的一些東西

Git工作流

Git工作流分類比較多,沒有固定的標準,一般都是將多種工作流方式進行糅合形成適合自己團隊進行開發(fā)的一種工作流。下面的五種工作流是使用比較多,流程相對清晰的工作流。

集中式工作流

流程圖:

集中式工作流
集中式工作流

更詳細地址

功能分支工作流

流程圖:

更詳細地址

Gitflow工作流

Gitflow工作流用到四個分支,歷史分支,功能分支,發(fā)布分支和維護分支。主要用于一些比較大型的項目。

流程圖:

Gitflow工作流
Gitflow工作流
  1. 歷史分支。Gitflow工作流使用了兩個分支來記錄項目的歷史,包含master分支和develop分支,master分支是一個發(fā)布歷史分支,develop分支是功能開發(fā)歷史分支。示意圖如下:
歷史分支
歷史分支
  1. 功能分支。在進行一個新功能開發(fā)時,需要從develop分支拉出一個新的分支用作功能開發(fā)分支,功能開發(fā)完成后需要合并到develop分支。示意圖如下:
功能分支
功能分支
  1. 發(fā)布分支。在進行發(fā)布的時候會用到發(fā)布分支。到了既定的發(fā)布時間后,需要從develop分支拉出一個新的分支用作發(fā)布分支。發(fā)布分支只能用做Bug修改,新功能從這個時間點開始不能再放到發(fā)布分支上。在進行發(fā)布工作時不會影響團隊其他人進行新功能的開發(fā)。示意圖如下:
發(fā)布分支
發(fā)布分支
  1. 維護分支。用于已經(jīng)發(fā)布的產(chǎn)品進行快速修復問題的分支。在master分支拉出一個新的分支用作維護分支,修復完成后立即合并到master和develop分支上。這樣就可以不用等下個發(fā)布循環(huán)結(jié)束就可將問題處理掉。示意圖如下:
維護分支
維護分支

Forking工作流

流程圖:

更詳細地址

Pull Request工作流

更詳細地址

LLDB調(diào)試

LLDB是從Xcode5開始自帶的一個調(diào)試引擎,可以很方便的對程序進行調(diào)試和排錯。

常用命令

  • p。打印基本變量的值或者指針的地址。
  • po。打印對象的描述信息。
  • expr。在調(diào)試過程中修改變量的值。
  • call。在調(diào)試過程中調(diào)用方法。
  • bt。打印調(diào)用堆棧。
  • image。用于尋址,尋找堆棧地址對應(yīng)的代碼位置。
  • help。打印幫助信息。

一些第三方庫

CocoaAsyncSocket

一個socket第三方庫

項目地址

Masonry

純代碼實現(xiàn)AutoLayout

項目地址

FCUUID

獲取手機唯一標示的替代解決方案

項目地址

QRCodeReaderViewController

二維碼掃描第三方庫

項目地址

第三方庫管理工具CocoaPods

CocoaPods是一個非常強大的第三方庫管理工具,使用它可以很方便的引入第三方庫,而且使用起來非常簡單。

配置CocoaPods教程

安裝第三方庫

pod install

更新第三方庫

pod update

如果發(fā)現(xiàn)安裝或者更新非常緩慢的,可以使用下面的命令

pod install --verbose --no-repo-update
pod update --verbose --no-repo-update
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容