历经几个月,我的中国象棋网络对弈app终于完工了。看着完成的作品,我内心有一种成就感,也有一些遗憾。
从事软件开发多年,主要都是为公司的项目做开发,很少自己策划一个产品来开发。十多年前,曾经开发过一个手机游戏<<MM麻将乐翻天>>,还卖给了一个游戏运营商,在移动的百宝箱上架。这一次,刚好有空闲时间,我决定开发一个网络版的网络游戏,体验一下产品的开发过程,运用一下自己最近使用的技术。思忖良久,最终我决定开发android手机版的中国象棋网络对弈软件。
所谓麻雀虽小,五脏俱全。这个产品涉及的技术还比较多,开发过程也遇到些问题。在此,和大家一起分享一下本人的一些感悟,希望对开发者有所启发和帮助。
希望总是美好的
进度比我预期的久,功能也被简化了许多。但是,终于完成了。
进度慢最主要的原因,还是所使用的开发技术、工具不熟悉,有些甚至是现学现用。
我做项目经理时,有好多项目都是因为使用了新技术,造成了延期。使用新技术有许多不确定性,由于不熟悉,需要经常查资料,会造成效率低;新技术可能会存在一些缺陷,发现缺陷、解决缺陷所花的时间,都是不能确定的;甚至最糟糕的情况是,由于新技术存在的致命缺陷,会使它必须被舍弃,从而造成整个项目的严重延期。
功能简化了许多。开始的时候,我是想着能把地图做上去,把玩家的位置显示出来。可是看看现在做出来的效果,只有一个简单的用户列表,真是有点简陋啊,呵呵。对弈的逻辑过程都做好了,可是没有限制棋子的走棋规则。没有晦棋、也没有时间限制等等。
完工总比半途而废强
不过,最终还是能用了。这是因为我开发的顺序,是先做核心功能,先搭构架。所以,目前主要的框架都有了。10多年前,我曾经看过UML有关的书籍。书中,“用例驱动架构、迭代式开发”的模式,深深地触动了我。我后续的很多项目,都沿用了这一开发过程的思想,很多项目都取得了成功。我这个产品也沿用了这一思想,在