在Unit3D游戏开发中如何做一个好的主程序呢
在走向下一个驿站的时候,我在想,我还能留下些什么,为那些没有经历过或者经历过的战友们。回顾自己几年的职业生涯,多是在平淡中度过,积累的无非是在游戏开发中经验和心得。我想如果把自己的经验和心得以及一些思考能与天下的战友们一起共享,也是一件非常有价值的事,因为可以为别人打开思考的心扉,可以为别人产生思想的火花。我想在离别之际,就如何做一个好的主程序这个主题,做一些思考与探讨吧。之所以选择这个主题,是因为在自己工作的几年中,跟随过不同风格的主程序做事,自己也做过短暂的主程序,也有一些切身体会。
言归正传,闲话少说。如何做一个好的主程序?仁者见仁,智者见智。下面就我的认识做一下阐述。
一. 以德服人而不以技术高管制别人。
主程序一般技术水平高,在管理下面的程序的时候,多以自己的水平高而获得大家的认可,但是技术水平高和项目管理水平高不是同一个概念。一个技术水平高的主程序不一定能管好人,能带好人。如果以技术水平高自居,对下面的人肆意对待,他无法赢得项目成员的拥戴,无法获得大家的认可。程序员不是实现产品功能的工具,他是具备思考感情的人。在我所遇到的主程序中,有的很好,技术水平高,做事分明,不以水平高自居,而以自己的人格魅力赢得大家的尊重;有的则难言其好,技术水平高,但做事有针对性,常以水平高自居,对不服从的人进行压制。不同的风格,会产生不同的结果。我在此想说的是,一个人的技术是不可能永远保持先进性,而一个人的品德则可以永恒的。工作除了满足生活的需要之外,它带给人的还有快乐。一个优秀的主程序,应该公平、公正的对待每一个人,以德服人。让每个跟从的人体验到你不仅仅是技术水平高,人格更高。
我想,我们应该牢记这样的话:
我们无法创造永恒的技术但可留存不朽的人格。
二. *、共享、开放而不是限制、保守、自封。
主程序在项目中,对核心技术常常保留,隐藏,不公开,以防别人了解,学习,泄露,进而走进一个限制、保守、自封的怪圈。其实技术保留是没有错的,但是在这个*、共享、开放的世界中,有时候是行不通的。因为中国的程序员有多少原创的技术呢?多是在互联网上,查查资料,共享下别人的经验,然后加以改造,修改,实现功能。每个人都应该很清楚,我们查询的资料是哪里来的呢?是那些有志于* ,共享,开放的有识之士发布的,我们从别人哪里学习,而我们为什么不把我们的经验心得也以*,共享,开放的心态与天下的程序员共享呢?限制、保守、自封不利于技术的进步,不利于人才的成长。如果为限制、保守、自封找个理由,那就是为自己保留饭碗,惧怕被竞争。
其实从远的说,游戏行业发展到今天,也有几十年了,技术也走向了成熟。各个公司所采用的技术无非是那几种,不同之处在于在解决同一个问题采用了不同的方法,有的优良,有的低劣,在性能与体验上不一样。至于其中的秘密,只要有足够的时间和资本,都可以做到。从近处说,项目中开发应用的技术无非包含2种:引擎和逻辑。至于游戏的核心:引擎(服务器),从宏观上说就是2个方面,网络通信和分布式。从互联网产生到现在,这2个方面已经很成熟了,各种理论研究和产品应用,世界上到处都是。主程序在开发中无非是在各个平台调用不同的API实现一套架构罢了。主程序常常把自己做出的东西视作自己的孩子,珍爱有加,自豪无比,孤芳自赏。有的人愿意共享,也有的人进行加密,隐藏。其实2种不同的做法,会带给人不同的感受。我在想,限制、保守、自封真的有这个必要吗?
优秀的技术的价值应该在产品中体现而不是埋藏于地下。再好的事物如果不能使人了解,它的价值也不会得到世人的认可。唯有把优秀的技术转化成生产力,转化成产品,转化成优秀的产品,才能使技术展现自身价值。所以在我看来,对于那些主程序隐藏技术,限制,保守,自封的风格不值得赞赏,应该转变思维,努力的把技术转化成生产力,转化成优秀的产品才是关键。技术到产品,产品到用户。用户不关心技术,只关心产品能给我带来什么。用户关心优秀的产品而不关心优秀的技术。主程序的视野请看的更远些,*、共享、开放才是硬道理。
三. 优秀的代码不一定创造优秀的产品,它只是更好的为产品服务;
优秀的产品并不一定建立在优秀的代码上,而是建立在市场和用户基础上。一个优秀的主程序,除了做好本身的编程,架构,设计工作外,更多的精力应放在如何设计优秀的产品而不是如何编写优秀的代码,产品是和市场赛跑,产品是和时间赛跑。抓住市场的先机,快速的创造出合格的产品比把心思放在如何写出优秀的代码价值大的多。衡量一个产品的成功,不是靠评价代码的优劣,而是靠是否赢得市场,是否赢得用户的欢迎。主程序常犯的一个错误是这行代码应该这样写,哪行代码应该那样写,完成的功能在不断的修改,修改。时间就这样消磨掉,推出产品上市的日期就被无限制的拖延下去。从而失去了市场的先机,走向失败。所以在我看来,一个优秀的主程序应该能够控制好时间,对市场的嗅觉要灵敏,对用户的把握要准确,只有这样才能保证产品能够在预期内推向市场,赢得成功。
四. 善于接纳意见,切忌专断
主程序有个很大的毛病就是专断,总是相信自己是对的,别人的意见不愿听从。先前曾经和一个主程序做事,他工作大概7年了,经验也很丰富,技术水平也很高。但是他做事的风格让人很难接受,在项目中要求别人必须绝对的服从,不容许有意见。即使项目组成员提出了合理的意见,也只是点头但不当回事。妄自尊大,孤傲自负的主程序,对项目是百害而无一利的。
主程序要懂得尊重别人。只有互相尊重才有利于合作的愉快,项目顺利的完成。经验对于每一个来说,都可以随着工作阅历的增长而增长;技术水平也可以随着工作阅历的增长而提高。但是人格魅力,品德修养却非一朝一夕炼成的。懂得如何做人比什么都重要。
具有人格魅力的主程序总是得到大家的赞赏。
五. 合理安排任务,不搞个人主义
在项目中,有的和主程序关系不错,主程序在安排任务时就把重要的模块分配给
他,让其他人打酱油。这种做法不值得提倡和发扬。公平合理的安排任务,不搞个人主义,这也是对主程序的一个基本要求。
从客观的说,项目中人人平等,每个人都应该得到应用的锻炼机会。在不影响项目进度的情况下,我们应该如何合理的安排任务呢?我们应该积极的和策划沟通,对每一个功能点,每一个细节进行衡量,判断所需要的时间,然后分配给项目组的成员。但是有的主程序的做法是自己先列出一个宏观计划,对某某A说,这个月你搞定这个;对某某B说,这个月你搞定那个。这种没有对每一个功能点进行细化的做法的结果就是,项目进度无限制性的延期。经验教训表明:宏观计划和微观计划二者是合而为一的,缺一不可的。
六. 安定团结与政治斗争
七. 具有责任感和使命感
八. 与时俱进,放眼全球
九. 拥有一颗追求成功的心