神马 - 云代码空间
—— 任何傻瓜都能写出计算机可以理解的代码,好的程序员能写出人能读懂的代码。
前言:
做过游戏开发的人都知道,端游可以用c++,页游可以用sl或者as3,鉴于这段时间一直在看网页游戏开发的知识,所以关于游戏开发,我有一点自己的见解。
就拿as3的网页游戏,一般游戏开发前端可以用as3做前端,后端用erlang,不了解这两种东西的朋友可以百度或者google一下。然后游戏数据管理和交互
怎么呢!请看我下面分析!
本文主要内容:
游戏数据交互
一般一个大型的网页游戏有一个或者多个数据库以上,这些数据库内部有大量的数据表,表中有很多的记录,可以说一个表当中有上千上万条数据,具体表怎么设计我就不说了,有兴趣的朋友可以私自和我交流。我现在说说数据在后端如何交互,当游戏策划把需求做好了,就交给as3前端人员来制作前端显示,前端显示主要是给游戏用户进行游戏操作的页面,游戏操作的后台数据就直接和erlang来实现,就像你用asp.net当中aspx完成了html的前端显示,后端的数据交换就由aspx.cx来完成,erlang同样完成了这些数据增删查改的交互,当然这只是游戏后端数据交互。一个游戏开发团队里除了大量的美工之外,剩下的除了erlang程序员,还有php程序员,一个php程序员主要的任务就是完成页游后端管理系统,这个系统就是方便策划组来进行编辑,方便游戏运营管理。当然大量的游戏数据就分别保存在几个服务器里面,这时候也许会听到,今天某某页游开服了,或者新开了一个服务器之类的,这些不同的服务器与游戏本身没有直接的关系,他们只是保存数据,不同的服务器的数据不一样,这与玩家在哪一个服务器有关。php就是和这些不同的服务器进行交互。具体就是你在这个后端管理系统当中可以进行封号,奖励,封vip,npc,副本,背包管理,还可以进行登录你账号直接让你下线等等。
后端数据管理总结
从以下两点来说说我个人一点经验以及见解:
需求以及具体实施
1、后台管理系统无非就是对数据的增删查改操作
2、增加数据和修改数据可以使同一个页面也即是说同一个表单,这样子验证就只要写一套代码就可以了
3、前台的验证可以用js或者jquery
4、后台的验证可以用函数或者框架自带的验证机制
5、增加功能你可以通过表单一个一个增加,另一个可以通过excel表格导进,也就是批量处理
6、查询可以先把查询的条件保存在session中,这样子才能保证用户查询之后可以进行编辑、删除等操作
7、翻页放在表格的上面或者下面都可以或者批量操作也一样
8、添加操作完成了要返回一个信息判断是否添加成功
9、删除操作要先做一下判断是否真的删除,确定和取消,删除成功等等
技术以及框架代码复用各层分工负责
1、可以采用mysql数据库或者mongo数据库保存数据,有必要熟悉mysql或者mongo的一下数据操作
2、采用模板技术,php+smarty模板引擎,有必要熟悉smarty
3、采用面向对象技术,php+smarty+mysql(mongo)+oop,有必要熟悉oop
4、采用设计模式技术,一般可以采用单例模式,有必要熟悉设计模式的知识
5、当然可以采用框架快快速开发,现在流行很多框架,比如mvc,可以加快开发效率,比如助手类,图片验证器,表单生成器,excel交互类,mencache分布式缓存系统等等
一个简单的demo
本文最后以一个简单的demo来给php爱好者新手一个简单的入门学习,wamp的环境+php+mysql+smarty+oop,要看懂这个你必须了解smarty,然后就是mysql一点常用操作,还有一点就是安装和使用smarty时候注意定界符和js区分,本例子采用literal解决这个问题,请看下面截图:功能很简单,没有采用什么技术,主要完成一个增删查改crud的需求而已!见谅!
附上回答网友的问题?
游戏开发如何入门?
像现在国内最大的端游就是完美,网易,页游最牛B就是网易,现在最大的运营商就是腾讯和网易,手游现在主要是安卓和苹果,像以前java平台的游戏开发现在基本被淘汰了,所以我认为你学习手游先对游戏的平台熟悉一下,页游你可以学习SA3编程,学会基本的操作,当然你学会了AS3,你基本可以做动态的游戏了,也就是要挂在服务器上,这时可以学习数据交互了,学习erlang。