MathMaster的手机游戏已经完成了,虽然可能公司并不会用我做的那个游戏,但是从这次的项目中我也学习到了很多的东西,了解了自身的很多不足。
在大二上学期的时候听说了设计模式这个词,当时只是听学长说这个对我们用处很大。当我真正的去学习的时候才知道设计模式真的好强大。所以在做一些其他项目自己时刻注意,希望可以用到一些设计模式的知识,可是不幸的是,虽然自己注意了,但是就是没有用到,对于mvc的理解很不透彻,可能自己知识知道这三个字母的具体含义吧!
就在昨天的时候把项目提交了,然后公司那边的学长验收,当然经过了大约1分钟他就找到了一个bug,然后我也很快的意识到了到底是哪个地方出的错,很快就改过来了。但是我也看到了我的代码可维护性到底有多么的差劲。我看到了大量的复制粘贴的代码,看到了自己定义再定义的地方,一个函数甚至有1000多行,这些都是好很严重的。
记得曾经看过一篇文章,好的程序员是不需要复制和粘贴的。当然现在的我并不是一个好的程序员,但我会向哪个方向努力的。所以现在就要准备好。
自己写的代码乱成一团时有原因的。首先,自己太懒惰了,bada是三星出的全新的手机操作系统,很多东西都是需要从头开始学习的,因此就要有很多的测试,试一试那些功能应该怎么用,但是当我尝试成功的时候,并没有想改怎样把它修改的更加的完美,自己确实直接拿来用了。其次,就是自己的基本功不扎实,很多东西学习的不深,因此导致最后很多的东西不会用,再次,相当的不精通欧冠设计模式,当然我也知道这个东西是要用来多加练习才能巩固起来的,但是由于自己平时的偷懒,自己对设计模式理解的相当的不到位最终导致了自己的代码乱成一团。再次,在编写代码的时候根本就没有考虑到代码的整体规范,就是拿来就写,没有从全局去思考该如何写这个游戏,在做这个游戏的时候只是去做,并没有去思考。
当然,从中我也学习到了很多的东西,也为我以后的学习指明了方向。
首先,要仔细的学习一下设计模式,在我提交完项目后,学长也给我看了他写的那些代码,看了之后确实有很多的感想,他并没有想我这样,拿来就写,而是写了一个游戏引擎,直接就可以拿来用的,整体利用的是MVC的思想,设计的很好,基本上把该有的功能都添加进去了,这个对我的触动很大,因为我在编写代码的时候并没有考虑到那么多。
第二,扎实的掌握c++。其实我一直很喜欢c++的,只是一直没有时间好好的去学习一下,除了最近做的MathMaster是c++外,其余的项目用的都是C#,开发Google的Android的时候用的是java。已经去申请c++的助教了,如果能申请下来就最好了,刚好可以趁着当助教的时候好好的学习一下c++。
第三,学习一下sliverlight和wpf,用xml做界面是一种趋势,所以自己想学习一下,因为这两项技术做界面的技术用的都是xml,并且界面相当的漂亮,在这里顺便说一下,微软真的是一个很伟大的公司。
第四,养成良好的代码习惯,例如对变量的命名,写注释等等。
第五,养成看英文文档的习惯。做bada游戏的时候看的都是英文的文档,当然由于bada是一个刚刚推出的手机平台,可以说根本就没有中文的资料,但是通过这样硬逼着自己去看英文的文档,自己确实学到了很多,而且觉得看英文的文档确实是很好,自己觉得用处很大。
差不多了,现在该去看看设计模式了。