【附加信息】
上一篇我们已经介绍了如何搭建bbframework的开发环境,其中我们还讲到了Sublime Text这款编辑器,关于Sublime的用法,我们可以参照http://www.cnblogs.com/wuguanglei/p/4286550.html这篇博文,详细的我们就不再这里阐述了。
【正文】
今天我们一起来看下关于公司常用资源的存放目录和我们项目目录的组成结构,了解这些目录结构,是我们进行高效快速开发的必要条件,虽然不起眼,但也不能忽视。
首先,我们先来看下SVN上面的目录结构。公司SVN是搭建在10.1.1.11这台服务器上的,我们常用的有两个路径,分别是“svn://10.1.1.11/ios_source”(简称:ios_source)和“svn://10.1.1.11/babybus-lua”(简称:Babybus-lua)。ios_source是我们组内存放资源的专门位置,其大致目录如下所示:
其中,对于新手而言,访问比较多的应该是“开发中代码备份”这个文件夹,组内每个人会在这个位置新建自己的文件夹,然后将手上正在开发的代码资源备份至此。除此之外,“内训资料”里面存放的是我们ios组内培训课的一些教程资源。此外,“卡代码辅助开发资源库”里面存放着之前项目的一些粒子、效果代码、可复用控件等,可以帮助我们更快的开发我们的项目。
对于ios_source这个目录,我们暂且了解这些就够了。接下来我们来看下babybus-lua的目录结构,其大致目录如下图所示:
如上,“common”文件夹里面是一些公共的资源,“doc”里面是框架的一些api文档教程之类的,“framework”里面存放的就是我们的bbframework的项目文件了,然后“product”里面是目前公司的产品源码,“software”里面是一些开发工具和其他辅助软件,“toolkit”里面是一些工具教程之类的东西,“video”里面存放的是框架组给公司程序员培训的一些视频教程和文档,最后的“web”暂时为空。
看完babybus-lua的大致目录,接下来我们来讲一下bbframework项目文件的组成目录。在此之前,我们应该把babybus-lua的framework目录底下的“main”文件夹载到本地磁盘上(我是把它放在E:\00_CrrentProject\01_Code里面)。babybus-lua的“framework/bug”是用于框架bug提交的地方,目前没有什么实际用途。babybus-lua的“framework/version”是存放bbframework历史版本的位置,目前宝宝巴士正在使用的是1.3版本,基本处于稳定状态。在写这篇博文的时候,bbframework 2.0版本正在孕育当中,目测在不久的将来就会发布出来供我们使用。而babybus-lua的“framework/main”里面正是我们目前正在使用的1.3版本的项目源文件。
在main文件夹底下有四个子目录,其中“bbframework”正是我们项目的项目文件夹,里面存放着项目所需的代码和资源文件,包括我们的bbframework的框架文件。“bin”底下是一些开发中常用的软件工具(包括我们的模拟器和代码编辑器等)。“doc”里面是框架的一些文档。“quick-cocos2d-x”这个目录里面只有一个“lib”子目录,我们先不讨论。
我们先看下“main/doc”这个目录,里面目前有5个子目录。其中“snap”里面存放的是一些效果文件,有兴趣的可以自己去看下。然后是“samples”目录,里面是bbframework的一些案例Demo,有时间可以看下这些小案例,能让你更加了解bbframework能做哪些事情。“core”文件夹里面包含“bbframework”和“framework”两个子目录,这里面是bbframework的源代码,我们可以在这里看到框架是如何搭建的。“assist”里面存放的是bbframework基于Sublime Text的智能提示插件。“api”里面是框架相关的api文档。
接下来我们来看下“main/bbframework”的目录结构,这是我们存放项目资源和脚本代码的位置。
如上图所示,“res”里面存放的是除代码以外的其它资源(包含图片、音频等等)。“scripts”里面就是我们的脚本文件了。“.DS_Store”这个文件不用管它,直接删除掉就好。“data.sqlite”是数据库文件。“debug.log”是我们在quick-x-player上调试生成的控制台日志信息。“UserDefault.xml”是我们本地化存储的文件。“VERSION”是版本信息文件。
上图是“main/bbframework/scripts”路径下的目录结构。“app”下存放的就是我们当前项目的源代码。“com”是我们项目中一些可以封装出来共用的一些组件。“lang”里面是一些国际化配置的文件。“plugin”里面存放的是一些插件。“static”这个目录我们先不管。“configure.lua”是项目的配置文件。“game.lua”是游戏的启动文件,也是游戏的入口。“game_init.lua”里面做一些游戏的初始化操作。“init.lua”里面是项目的初始化操作,比如导入框架文件之类的。“machine.lua”文件是配置文件处理类,定义框架配置环境初始刷新及各种参数定义。最后的“main.lua”是整个程序的唯一入口,我们的项目代码就是从这里开始执行的。
所以为了开发方便我们通常会将“main/bbframework/scripts”和“main/doc/core”这两个目录直接拖拽到Sublime Text中。scripts是为了项目编码,而core是为了随时能够快速查看框架实现。我们可以通过“Ctrl”+“P”打开代码编辑面板顶部的文本输入框,输入文件名就可以快速查看该文件的内容,所以我们要把Core目录一起引入到Sublime里面,就是为了方便索引到bbframework的框架文件。通过“Ctrl”+“R”我们也可以打开代码编辑面板顶部的文本输入框,在文本“@”后面输入函数名称可帮助我们在当前代码文件索引到指定的函数位置。在输入框里面输入“:”然后接数字,可以定位到当前文件的指定行。通过“Ctrl”+“F”可以打开编辑器底部的文本输入框,输入文本可以在当前代码文件里面查找匹配的字符。
如上图左边红色方框所示,是我们开发的必备文件目录,都要拖拽到Sublime里面,右边的空色方框是代码编辑器的代码缩略图,可以帮助我们更快的定位到当前窗口的代码位置。
由于时间关系我们今天就介绍到这里,下一次我们将继续介绍“main/bbframework/scripts/app”和“main/bbframework/res”里面的目录结构,并且教大家如何创建一个自己的模块(场景)目录,命名有什么要求之类的。
【脚注】
宝宝巴士-快乐童年!