三国开发思路(续)
这几天和Maxwell讨论,发现主贴有几个问题没说清,这里补充下:
我这种做法并非要自己独创一门理论(虽然曾经有过),而是要得到基于开发本身的客观规律的方法(即理性的方法).得到并不是非得自己创造,而是通过整合各种途径来得到,包括思考,查阅资料和谈论.从内容上来说,包括基础思维理论,基础学科理论,应用理论和实践.
具体来说,基础思维理论包括哲学,数学和思维方法,这几个理论是内功,决定着其它理论理解能力和运用能力,还是判断大多数做法正确与否的标准(而不是实践,因为很多理论如果实践以后再判断太费时间甚至是不可能的,而且基础理论本身已经经过大量实践的考验,其可靠性甚至高于直接用实践检验.之所以不是一切做法,是因为人的思考总有局限性而且内功的发展也有个过程,因而要听取各方观点,部分还可通过实验,来检验).基础学科理论从技术方面主要是计算机,从管理方面主要是管理学,对它们的理解程度主要由基础思维理论和对它们的感性认识决定.对于应用理论,应该由基础思维理论和基础学科理论共同评价,看它是否是理性的,对于理性的部分应该接受,对于不是理性的部分应该取其合理之处,改正其不合理之处.实践从寻找方法角度来看,是获取感性认识的环节,对于理论的理解和创造有重要作用.
得到方法应该是这么一个思路,第一,有空要对基础思维理论对多思考和交流,以提高内功;第二,要多接触相关的基础学科理论,如计算机,管理学,心理学,经济学等,以开阔思路和提高对有关问题的认识,同时应用基础思维理论对其进行分析,以提高其深度和广度;第三,接受成熟的应用理论,借鉴不成熟的应用理论;第四,思考和阅读要并重,对于已经有大量积累的方面,要注重思考,以消化积累方面,对于已经有大量思考而缺乏阅读的方面,要注重阅读,以开阔思路;第五,要从开发所需要的解决实际问题入手,综合运用各种手段解决,对于已经有且成熟的应该接受,对于已经有但不成熟的应该借鉴和改进,对于已经有且漏洞百出的应尽可能借鉴,对于尚未有但有类似的应从类似的入手结合有关理论来创造,对于尚未有的应以基础思维理论为基础结合有关理论来创造,对于几个理论都有但又有区别的应以基础思维理论为基础取长补短;第六,处理好思考,阅读,交流和实践的关系,原则上应以思考开发所需要的解决实际问题为主,但如果遇到障碍或者为了更充分发挥基础思维理论的作用,应该进行调整,如果欠缺感性认识应实践,如果欠缺思路应阅读和思考(不是思考实际问题而是对有关理论思考),以提高思考能力,如果需要检验理论的正确性或通俗性,应交流.在一个时间这四个方面应有所侧重,这样才能起到应用效果,这四个方面所花时间根据需要而定,但最终要回归解决实际问题.
对于业余开发,有些人存在误解,认为一定要做游戏才算开发,其实业余开发最大的优点在于可以不做游戏,这样就避免了急功近利从而更理性开发游戏,不做游戏并非放弃进取,而是做对开发更有价值的事,我见过很多业余开发的失败,他们的共同特点是他们能力满足不了他们所需游戏的要求,其结果是要么搞团队,但由于管理能力满足不了管理需求,要么降低要求,做他们力所能及的游戏,然后以满足玩家需要来说明这条路的合理性,但这显然限制了游戏的种类,要么使用引擎,但由于学习能力满足不了学习引擎的要求,要么干脆放弃,直接说不可行.从上面这些情况看,他们缺乏的是系统分析的能力,没有认识到开发需要什么.开发需要的是能力和劳动,很多开发人员只懂劳动,而忽略能力培养,这恰恰是失败的根源.思考,阅读,交流和实践恰恰就是提高能力的方法.我见过一个团队,人员流动性很大,一个开发成员开做的模块,在他离开团队以后就是白做,因此经常重新开始,最后结果不好.软件工程的配置管理或许可以解决部分问题,但治标不治本.重新开始的原因是新成员理解原有成员的代码难或者是想按自己思路重做,而根源是在规划不良,规划是需要能力的,归根到底还是能力问题.所以,我的看法是不要拘泥于所谓的实际,片面认为只有实践才算开发,思考,阅读,交流和实践这些辅助工作也应该是开发,因为它们也促进了最终作品的完成.但是不是人人都需要这么做呢?(花大量时间提高能力再开发)显然不需要也不可能.最好的办法是进行广义的分工,建立一个组织,先让组织成员明白整个大局(即实践,思考,阅读,交流与最终作品),然后根据个人精力,能力,性格来决定要做五个方面的哪个方面,让全员树立互助的观念,实践人员分享经验,思考人员提供研究成果,阅读人员提供心得,交流人员提供验证,最终作品人员进行实际开发,同时这些人员之间可以彼此学习和提高,最后要加强在全员中的思维科学和哲学的培养,这是沟通理解的基础,是这个组织是否有效的核心问题,同时要有通俗易懂的心态.此外要指出,最终作品即使一个都没有也没关系,因为这些知识就足以让新成员提高,从而产生价值.
|