擎天哥as3教程系列第一回——框架之我所见

来源:互联网 发布:linux服务器巡检报告 编辑:程序博客网 时间:2024/04/29 18:50

一,什么是框架?

 

很多人经常说框架,但不知道框架到底是什么,只是人云亦云,人家说,他不说,觉得丢份,所以为了装逼,就整天把框架挂嘴边。

框架并不是一个具体的概念,也没有具体的定义,他是抽象的,可以说每一个软件就有一种框架。

 

就像盖房子一样,我们要先画出建筑图,然后根据建筑图来挖地基,搭建脚手架,

在这些的基础上我们才能盖出房子的基本骨架。

也可以把框架理解为素描,在画一个物体之前,我们要量出物体的尺寸,然后画出基本轮廓。

最后在轮廓的基础上画出具体的细节。

 

那框架到底是什么呢!?

框架是对软件的抽象,是一个软件的骨干,能够高效,快捷的组织,使资源,代码,功能模块能够有效的整合到一起,复用起来方便,维护起来省力的代码(也并不纯粹是代码)

(注:MVC并不是什么框架,它是一种UI编程思想);

 

 

 对于webGame客户端来说,一般的框架结构包括三层;

第一层 

基础资源(进入游戏必须要用到的资源,或一些组件的资源);

基础模块(工具类,公共的函数,资源加载模块,位图帧模块,通信模块等);

类库(各个模块的接口管理类,比如地图管理类,人物管理类;基础接口类:比如人物模型接口,人物控制类接口,ui接口等;基础数据类:比如存储全局变量的类,存储个人信息的全局类等;一些事件等;

 

第二层

         主程序模块(用来加载一些必须的资源和初始化要用到的所有模块的管理接口和                                       初始化一些必要的数据,使他们能够在需要的时候可以互相调用)

第三层

         子程序模块(地图模块,对战模块,ui模块,任务模块等。这些模块必须继承或                                       实现第一层中模块管理类中规定的接口或抽象类);

 

示意图:(画的有点糙,请勿见怪)

 

二在项目当中具体如何写框架?

         在具体项目中代码库,模块,类,资源的分包和组织方式也属于框架的范畴。

         好的组织分包能让我们的框架更清晰,更容易维护,更容易扩展

         比如下面的框架结构:

        

         这个架构采用Dll加载(运行时加载)可以加快玩家进入游戏的速度

ClientAppModule里面放的是ui面板

ClientCore放的是一些核心库

JackyComponent里面放的是我平时开发的一些组件

jackyLibrary放的是我自己写的一些工具类以及引擎

 

MainEntery是游戏的主入口,里面的初始化游戏整个结构,包括需要的资源以及各个模块和系统的Face还有一些公用的数据类等等。

 

 

反正思想就是这样了,具体的代码我就不贴了,还得靠自己慢慢的去体会琢磨。

具体模块怎么写我在后面会写到的。

今天先写到这里吧,明天继续!

 

擎天哥QQ 296963166 欢迎加我讨论(加我注明 擎天哥);

原创粉丝点击