使用脚本开发,TDD尤为重要

前端之家收集整理的这篇文章主要介绍了使用脚本开发,TDD尤为重要前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

现在正在开发一款游戏,服务器只是用c++搭建了基本的支持包括网络通讯的打包减包加减密,事件的分发模块,基本对象状态的维护等,其他所有游戏业务逻辑都是lua脚本完成(包括player这样的对象)。

Player = Class.extern({

init = function(self)

self.state = EGUS_LOGINNING
end;


getState = function(self)

return self.state

end;

})

对lua的源码做了些小改动,去掉了:形式的调用,例如 player:getState() 可以直接写成 player.getState(),而无需传入self本身(player.getState(player))。

由于lua是一种动态语言,对类型无静态检查机制,这给重构带来很大困难,由于起先的部分代码都不是测试优先的编写方式,现在再做一些重构感到很困难。

只能慢慢的补起来:(。这些经验教训让我觉得如果用动态脚本(包括lua、python、ruby等)开发大型游戏,TDD将是最好的选择。

猜你在找的设计模式相关文章