擎天哥as3教程系列第一回——框架之我所见
来源:互联网 发布:linux服务器巡检报告 编辑:程序博客网 时间:2024/04/29 18:50
一,什么是框架?
很多人经常说框架,但不知道框架到底是什么,只是人云亦云,人家说,他不说,觉得丢份,所以为了装逼,就整天把框架挂嘴边。
框架并不是一个具体的概念,也没有具体的定义,他是抽象的,可以说每一个软件就有一种框架。
就像盖房子一样,我们要先画出建筑图,然后根据建筑图来挖地基,搭建脚手架,
在这些的基础上我们才能盖出房子的基本骨架。
也可以把框架理解为素描,在画一个物体之前,我们要量出物体的尺寸,然后画出基本轮廓。
最后在轮廓的基础上画出具体的细节。
那框架到底是什么呢!?
框架是对软件的抽象,是一个软件的骨干,能够高效,快捷的组织,使资源,代码,功能模块能够有效的整合到一起,复用起来方便,维护起来省力的代码(也并不纯粹是代码)
(注:MVC并不是什么框架,它是一种UI编程思想);
对于webGame客户端来说,一般的框架结构包括三层;
第一层
基础资源(进入游戏必须要用到的资源,或一些组件的资源);
基础模块(工具类,公共的函数,资源加载模块,位图帧模块,通信模块等);
类库(各个模块的接口管理类,比如地图管理类,人物管理类;基础接口类:比如人物模型接口,人物控制类接口,ui接口等;基础数据类:比如存储全局变量的类,存储个人信息的全局类等;一些事件等;
第二层
主程序模块(用来加载一些必须的资源和初始化要用到的所有模块的管理接口和 初始化一些必要的数据,使他们能够在需要的时候可以互相调用)
第三层
子程序模块(地图模块,对战模块,ui模块,任务模块等。这些模块必须继承或 实现第一层中模块管理类中规定的接口或抽象类);
示意图:(画的有点糙,请勿见怪)
二在项目当中具体如何写框架?
在具体项目中代码库,模块,类,资源的分包和组织方式也属于框架的范畴。
好的组织分包能让我们的框架更清晰,更容易维护,更容易扩展
比如下面的框架结构:
这个架构采用Dll加载(运行时加载)可以加快玩家进入游戏的速度
ClientAppModule里面放的是ui面板
ClientCore放的是一些核心库
JackyComponent里面放的是我平时开发的一些组件
jackyLibrary放的是我自己写的一些工具类以及引擎
MainEntery是游戏的主入口,里面的初始化游戏整个结构,包括需要的资源以及各个模块和系统的Face还有一些公用的数据类等等。
反正思想就是这样了,具体的代码我就不贴了,还得靠自己慢慢的去体会琢磨。
具体模块怎么写我在后面会写到的。
今天先写到这里吧,明天继续!
擎天哥QQ 296963166 欢迎加我讨论(加我注明 擎天哥);
- 擎天哥as3教程系列第一回——框架之我所见
- 擎天哥as3教程系列第二回——性能优化
- 擎天哥as3教程系列第三回——掌握mvc精髓
- 擎天哥as3教程系列第四回——设计模式运用自如
- 擎天哥as3教程系列第五回——面向对象设计原则融汇贯通
- 我的python笔记——第一回
- 深入理解Java微服务架构Dubbo系列—— 第一回 结缘
- 深入理解Java SOA 架构Dubbo系列—— 第一回 结缘
- IT餐馆—第一回 前言
- IT餐馆—第一回 前言
- 《硬道理》系列~第一回 程序中的“锁”
- 深入浅出CChart 每日一课——第七课 屌丝之殇,擎天一柱之柱图
- 和大彪一起来学习-SpringMvc之第一回(框架了解和第一个SpringMvc程序)
- SpringMvc之第一回(框架了解和第一个SpringMvc程序)
- Java语言基础——第十一回 集合框架
- JavaScript高级程序设计——读书笔记第一回
- 浏览器之我所见———Chrome
- 课程设计之我所见
- 9种常见的Java不规范代码
- 网易有道的上机第二道题目
- 优化Map Reduce Jobs,技术实现投资回报
- Linux lamp安装配置
- Android P2P语音通话实现(思路探讨)
- 擎天哥as3教程系列第一回——框架之我所见
- Ruby on Rails 入门之:(3) Ruby中的多种字符串表示方法
- 擎天哥as3教程系列第二回——性能优化
- 怎样才能学好ADO.net????
- macos 平台 makefile 中调用 svn 出错
- ActiveMQ使用笔记(四)ActiveMQ配置安全性
- C++的二度学习
- Context Path + servlet path + path info = request uri
- 擎天哥as3教程系列第三回——掌握mvc精髓