最近一个项目我做设计并进行项目管理。主要是一个PHP的项目,我原来是delphi程序员,一点都不会PHP。我做了中间层设计,我设计的很累,到每一个类,每一个类的函数,和每一个参数都详细的设计。但是,在执行的时候遇到了很大的障碍,PHP的程序员不愿意按照我的思路去做,多次沟通的结果,竟然公开说我的设计很烂,他不愿意编写更多的代码。而我在这方面有过很多的经验,知道什么时候需要复杂,什么时候需要简洁,每个问题都要我仔细的告诉他为什么要这么设计,为什么要拐弯,我不胜其烦,恨不得直截了当的告诉他,你就给我这么写,问这么多干吗!但是,做项目管理不允许我这么粗暴。甚至,有一次竟然指责我使用Visio不符合他们的习惯,叫我用记事本,他们是FreeBSD的程序员,甚至还嘲讽我用Windows,说他们用命令行的不会用窗口界面。我郁闷的不行,老子在用AppleII写汇编的时候你还不知道在哪里呢。可是我也没办法。但是,他还是修改我的中间层设计,也不告诉我,因为我要避免函数中对于全局变量的依赖,就在函数中引入了数据库连接的概念(他不会使用类,很明确地告诉我他不会用类,叫我做设计的时候不要用对象,我日),它去掉了这个参数,代之以全局变量,我晕的不行。我真不知道他是怎么想的,什么样的思维方式。我又教育不好他。他这么做,以后的程序员来维护会增加麻烦。也不利于分解数据库,真不懂他怎么想的。其中有一个条件查询的,我知道Where字句是很复杂的,所以就直接将Where作为参数了,我知道这么做破坏了中间层的封装,但是Where逻辑过于复杂,不这么做会带来大量的工作。但是,按照什么字段排序相对简单,我就用数组传递需要排序的字段和方式,完了竟然被他大骂,说我根本不懂数据库。说以前的XXX搞Where就不是这么搞的,我问他是怎么搞的,他说他把每个条件都作为数组项传递然后组合,我说,那么他怎么表达组合逻辑的呢?他说,当然只有And了。我差点没吐血。然后说排序作为一个字符串传递进来就好了,不要用数组,用数组他说他不搞,要么我自己搞。我真不知道该怎么办,怎么能够继续把这个项目继续下去。问问大家我该怎么办?我该怎么继续做下去?去向老板告状,还是和他私下解决?
1、让他做设计,按你上面说的,他做了1个礼拜不行,你可以直接问他,做的怎么样,拿来看看,分析分析,如果他说做的还行或者好,那么,继续让他做,不要做太多的干涉,你只是拿来看看,分析里面的问题,等他设计结束的时候问你所发现的漏洞(当然你自己也要提出修改的方案或方法),如果他能虚心接受并修改,继续,否则,勒令他限期修改,并直接对其技术能力表示怀疑(这对技术人员(特别是有点能力的人)有极强的攻击力),并提出自己的修改方案。
其最终目的就是要表现出你在该方向的能力远远高于他
2、在新技术上(本人对PHP不是很了解),你也不是很了解PHP,就应该虚心向该领域的人请教(不知道PHP是否支持OO,万一不支持的话你的设计也是白搭),让他们觉得你是个比较虚心的人(毕竟搞技术的还是比较敬服比他技术厉害的)。另外,应该掌握他们的缺点或者弱点,展示出自己在各个领域的能力和才能,这样才能更好的驾驭他们。
3、要让他们觉得跟着你有赚头:让他们知道,做个项目能学到新东西(新的技术,技能),更让他们知道你能为他们争取更多的项目资源(就是钱了)
唉,就写这么多了,这方面很多东西是要领悟的(记住,并不是说你开发方面的技术好这方面的悟性就高,放低姿态,好好领悟吧)