Team Homework 1 / 征集以往的软件工程项目:通用在线棋盘类游戏平台

 

学习中……

 

先找几篇小说,逐步啃:http://developer.apple.com/internet/webcontent/xmlhttpreq.html
http://www.xml.com/pub/a/2005/02/09/xml-http-request.html

Ahyangyi@铷铯

写一些不成熟的:

Part
1

   
XmlHttpRequest是微软第一次在IE5中援引的新目标,可以对WEB服务器指出呼吁,得到回复数据。与往常大家刷新整页来获取数据不同的是,可以采取他在不刷新页面的意况下不断地收获劳动器端的数目,再接纳JavaScript来拍卖得到的数码。好处当然有一大堆:不需要的数额不再需要下载,如菜单啊、LOGO啊之类,节约网络资源嘛;页面也不闪烁了,感觉更舒心;只请求自己客户端需要的,减轻了服务器负责。
   
这样的请求能够无需等待回复而连续下边的代码,通过事件来监督拿到数据的图景,也就是所谓的异步了。这样,浏览器不会因为要求的数目迟迟没有到达而傻呼呼地等待,就象死了相同,大大立异了用户界面。
    富有创意的采取:Google
Suggest
   Google
Maps

    我觉得用这么些写聊天室也很不利。
另外,巨大的动态菜单也得以用这种形式解决。甚至可以用她来做棋牌游戏。
   
有了那些法宝,大家写Web应用程序的时候的思想方法得以更开阔了。又多了一门兵器。只要有丰裕的新意,还有众多东西得以做。也正因为这样,很多外国的开发者以XmlHttpRequest为主导,利用Asynchronous
JavaScript +
CSS+DOM+XMLHttpRequest 技术(也就是所谓的AJAX),进行了汪洋的深远探索。
   
这里是一个例子,解开放在放在Web服务器上即可,注意不要在本土打开。
   
这里有一篇闽南语的稿子,首假若翻译的,英文吃力的话,读读也很省时间。/Files/hsxixi/Ajax程序设计入门.rar
  
再来看看微软对Ajax的动作:http://beta.asp.net/default.aspx?tabindex=7&tabid=47 。微软推出了叫Atlas的工具包。
   
我想,Ajax之所以这么火,是因为她让大家的思维格局改变了,原来客户端网页也足以如此写。

我前天中午采访了阿尔巴尼亚语弢前辈,他是率先届的姚班学生,因而也是厦大大学里最上午邹先生的现代软件工程课的同班之一。他们那一届的软工课还不曾要求写blog,他们工程的主页在教学之后也没有继续保障,所以,现在除了采访获得的结果以外,应该没有稍微可供参考的素材了吧。

   
一些备选阅读的连天:http://www.modernmethod.com/sajax/index.phtml
                                           
http://beta.asp.net/default.aspx?tabindex=7&tabid=47
                                           
http://msdn.microsoft.com/asp.net/future/default.aspx
                                           
http://weblogs.asp.net/mschwarz/archive/2005/04/07/397504.aspx

本条工程中期的想法是,已经部分各个娱乐平台(如联众)下边有的五个人棋牌类游戏,其实骨子里有雅量的共同点,比如玩家依次行动,有一个稳住的棋盘或者桌面,以及一些棋子或者卡片来作为移动元素,有着相似的用户界面网络连接主意,等等。由此,他们小组认为,可以兑现一个通用的在线四人棋牌类游戏平台,以简化此类游戏的支出流程。他们设定的最低目的是,实现一个四人的赤子之心大战;而最高目标是实现一个多个人的三国杀游玩。他们对此项目中标的定义是,在系内有早晚人数使用他们的顺序来玩。

他俩利用C#.net平台,总共编写了约**6000**行代码。人工的分配是一个人承担娱乐逻辑有的,一个人负担接口,两人负责图形,一个人肩负网络

最终,他们实现了五个人的真情大战部分,可是三国杀部分则并未完全实现。他们实现的三国杀没有武将牌,也绝非锦囊牌,所以可玩性不高。由此,最后那个工程在系内也远非流行开来。这应当也是那个工程尚未继承被保安的缘由之一吧。

本人于是继续提问,既然红心大战做出来了,为啥三国杀没有做出来吧?我得到的回答是遭逢了多地方的劳苦:

  • 腹心大战的网络传输形式相比较简单,只需要一块的传输,而三国杀对网络传输格局的要求则要复杂很多,比如需要异步的接近”抢答”的建制。(注:这多少个机制在人和人当面玩的时候是广阔的,可是似乎现有的网络版三国杀也尚未落实”抢答”,而只是按梯次要求各种人做出决定。)
  • 在6人及以上玩三国杀的时候,他们发觉窗口尺寸不够大,画不下场上的各样音信。
  • 她俩的通用平台运用了这般的方法来援助不同的游戏规则:在C#内部通过某个库来执行一些Python脚本,这个脚本来决定游戏的流水线。他们期待通过如此的措施来促成系统的通用性,可是,在做三国杀的时候,三国杀的复杂性的游艺逻辑给他俩造成了很大的障碍。
  • 支出时间不够,到了最终,他们以为最低要求已经高达了,而最高要求遥遥无期,于是就定型成前边所说的金科玉律了。

Part
2

题目就问了这样多,我以为有一对似曾相识的感觉到。原来,在大一暑假的时候,我Java课的大作业题目与那多少个看似。当然,那不是讲师给的命题,而是自己要好选的。之所以选拔这么些题目,是因为当即三国杀是一个很盛行的娱乐,然而还不存在其他一个三国杀游戏在处理器上的落实。所以,我及时的前景是,假诺自己能帮忙完整的三国杀规则,无论咋样系内流行是肯定的,而后续向外传出的前景也是很有可能的。

一样地,我也提议了一个”最低要求”:一个三个人抢答四则运算题的嬉戏。在简约地计划了全副程序的各种零部件要做哪些之后,我就从头了落实。我做了一个扑朔迷离的游戏框架,它有一个被我定制修改过的光亮的GUI效果,襄助你建立一个服务器,然后玩家连接到这一个服务器上以后可以建立游戏房间,并且可以运用一个与娱乐独立的聊天室效用,并且游戏也足以向聊天窗口输出调试音信或者指示音讯。当然,最终结出也是相仿的,我只兑现了低于要求,然后因为部分突发事件而放弃了三国杀部分的开发。并且,这些程序未来也再也没有被保安过。

Part
3

罗马尼亚语弢他们小组的技巧能力毋庸置疑。我一个人尽管能力上会差很多,可是起码当年的豪情也无需置疑。不过我们从结果上来看都没有得逞。在上个学期的SRT申请表上,我又来看了”通用四个人游戏框架”这样的提案。我不通晓是不是在上个学期截止的时候,又有何人重蹈了大家的覆辙。所以,作为一个有早晚的亲身经历的采访者,我想在这里分析一下希腊语弢他们小组为啥最后会不太成功。

先是,三国杀这多少个游乐本身持有十分的逻辑难度,而我辈在先河做的时候总是希望通过抬高一些编制来”简化”三国杀我的复杂程度。然则,附加的布局分明只会大增复杂性,先实现一个通用的娱乐框架再落实一个三国杀要比仅仅实现一个三国杀要来得更难。 无法因为在计划里添加了一个通用的玩乐框架,就降低对实现复杂性的预期。

说不上,在设计阶段,大家并不了解三国杀那个游戏究竟需要底层部分发展提供什么接口。咱俩的想法都是先规划一个通用的游艺框架,然后实现它,实现过程中应用一个简约的玩意儿级的游乐作为测试用例,在落实完框架之后再在地点开发三国杀。可是,因为其实我们学生阶段做这多少个连串时设计阶段总是会各类不靠谱,大家实在或多或少总会一边implement一边design。而如此做的同时大家还只拿一个玩具级的游戏来试验,最后形成的宏图必然有无数不相符三国杀的需求的地点。

最终,我认为她们小组的角色分工也有待商榷。我问怎么他们组会有多少人承担图像突显上边的天职,我拿到的回复是,似乎是因为不仅需要些负担呈现的代码,也需要预备图形素材。不过本人觉着,从最后结果来看,如若三国杀游戏做不出去的话,准备图像的同窗精心准备的卡片图形也就白费了。反过来,倘诺这六个人中有一个在最初投入到其他多少个角色之一,协助他们缓解遭逢的各样困难,可能最后的结果会好广大。

Part
4

假设前天让大家组来做一样一个品类来说,首先我会提出先写好一个初具雏形的三国杀的逻辑的原型,再等下部的网络部分,图形部分和Python的逻辑控制发动机。这样话,各类模块的设计者就能设计得相比清楚。要是不是以此开发顺序,那么大家就需要设计者在一先导就把三国杀的娱乐流程分析得非常详尽,并且以开组会的款式保证每一个人都对大家前边会在什么地方遭逢麻烦比较清楚

然后,我会提议把忠心大战这部分去掉。它会消耗掉一部分的编码时间,不过对任何工程的功成名就与否其实用处不大。虽然实现了真情大战,要是没有三国杀,这一个平台仍旧不会有人用;反过来,跳过热血大战,只要实现了三国杀,就会掀起充分多的注意力来专注到这一个平台的可增加的一面,那些时候假使实在有人有用那个平台玩红心大战的需求,也就不难解决了。

最后,我认为我们要分精晓哪些特点是大家温馨觉得有趣的,而哪些特色是会操纵一个类此外打响和挫败的。我认为从这一个类型来说,吸引出席者的首要特色是以此娱乐平台的通用性。不过另一方面,没有做出来一个实际上能玩的娱乐导致它吸引不到人气,也就从不持续开发者的出席,在学期截至以后项目就全盘搁置了;另一方面,由于在打造游戏平台之后三国杀没有做出来,游戏平台的通用性本身也从不被申明,假设自身做为一个现实游戏情节的开发者,想付出一个三国杀游戏或者其余棋牌游戏,我也会怀疑这多少个平台究竟能无法提供必要的支撑。因而,实际上主宰以此体系成败的特征应该是用户可以用它在线玩三国杀

发表评论

电子邮件地址不会被公开。 必填项已用*标注