这个学期接了几个Android的外包项目来做。让我深深的体会到:讨厌的并不是写代码,是客户!
常常会遇到一种情况是东西按照之前的需求来做了,就在程序员认为项目快完成的时候,客户提出有需求要修改。这时候程序员的心里有一个声音,“TMD,你又不早说!”没办法,只好改呗。如果之前的项目的框架都设计得好,方便以后扩展维护的,那么需求修改的影响也不会特别大。如果项目的框架没形成,又或者说设计一般,小小的一个需求修改也会带来很大的影响。
但是,程序员往往根据最初的需求和自己的经验分析这个项目要用到什么框架,有没有必要构建框架。比方说做一个小项目,那么构建框架什么的都是浪费时间的,好比滥用设计模式。资深的系统架构师考虑到项目的后期维护和扩展,决定采用什么框架,设计什么框架,这些也是对付客户...防止客户的需求更改对项目造成很大的影响。
当一个小项目做着做着,客户的需求不断修改,程序员慢慢地发现这已经不是一个小项目了,客户的需求增加,发现代码加不动了,这时候就要考虑框架,程序员也不得不重构代码。最后,程序员忍不住骂了客户一句:“你TMD,怎么不早说啊!你之前的需求文档就没有写好!”客户也骂了程序员一句:“你TMD,刚开始谁会考虑到那么多东西?”此时程序员无奈了,原来具体的需求客户最开始也没有搞清楚,甚至有的客户根本就不知道找程序员开发一个什么样的软件,然后就对程序员说,”我就只要一个...功能,如何设计你看着办!“程序员这时”一厢情愿“地开始编程,完成之后给客户一看,这时候需求才真正开始...
更何况大多数客户不是专业人士,他们不了解软件开发的世界。程序员和客户的沟通往往有一道鸿沟,如何跨越这个鸿沟,还是尽量尝试多点沟通吧。程序员在做项目的时候,必须明确客户的需求,不要自作主张。有时候对于客户的需求更改真的很火大,这时你只能忍受,并从中吸取经验,在项目刚开始建立框架的时候,应该如何设计。
转载自原文链接, 如需删除请联系管理员。
原文链接:谈Android外包项目,转载请注明来源!