Heim > Fragen und Antworten > Hauptteil
今天做过一个猜数字的游戏,很快做完了,布局简单,逻辑也并不是很复杂。
但是要着手做一个象棋游戏,就不太清楚该从何下手。
先不谈人工智能方面,首先从布局上来看,就觉得挺复杂的。然后将象棋的这些规则融入进去,比如哪些能够走动,哪些不能走动,也觉得挺复杂的。
想请教一下高手们如果让你们从0开始写一个android版本的象棋,你需要走哪些步骤?
怪我咯2017-04-17 13:04:43
首先要把握一个原则,图形界面跟逻辑要分开。图形界面没什么好说的,说说逻辑部分。给棋子写类,抽象出每种棋子的特征,如名称,颜色,步法,位置等等。还要定义一个描述棋盘状态的文件格式,用于存储,读写和传输,这个也可以直接找标准文件格式,比如sgf。还要写一个该文件格式的解析器。你把这些基础性的东西都写好了再考虑下一步。
图形界面也说一下吧。不要追求一步到位把整个棋盘都实现。要分层次来,先写一个可以显示图片可以放缩的控件,再给它扩展出纵横线路,再扩展可以摆放在交叉点的棋子,等等,分步分层实现,加载棋盘画面则依靠解析器从文件加载。图形界面只负责显示,不要承担任何逻辑功能。
写软件最重要的就是要有层次感,不能急躁,要一层一层往上写。