最近一个项目我做设计并进行项目管理。主要是一个PHP的项目,我原来是delphi程序员,一点都不会PHP。我做了中间层设计,我设计的很累,到每一个类,每一个类的函数,和每一个参数都详细的设计。但是,在执行的时候遇到了很大的障碍,PHP的程序员不愿意按照我的思路去做,多次沟通的结果,竟然公开说我的设计很烂,他不愿意编写更多的代码。而我在这方面有过很多的经验,知道什么时候需要复杂,什么时候需要简洁,每个问题都要我仔细的告诉他为什么要这么设计,为什么要拐弯,我不胜其烦,恨不得直截了当的告诉他,你就给我这么写,问这么多干吗!但是,做项目管理不允许我这么粗暴。甚至,有一次竟然指责我使用Visio不符合他们的习惯,叫我用记事本,他们是FreeBSD的程序员,甚至还嘲讽我用Windows,说他们用命令行的不会用窗口界面。我郁闷的不行,老子在用AppleII写汇编的时候你还不知道在哪里呢。可是我也没办法。但是,他还是修改我的中间层设计,也不告诉我,因为我要避免函数中对于全局变量的依赖,就在函数中引入了数据库连接的概念(他不会使用类,很明确地告诉我他不会用类,叫我做设计的时候不要用对象,我日),它去掉了这个参数,代之以全局变量,我晕的不行。我真不知道他是怎么想的,什么样的思维方式。我又教育不好他。他这么做,以后的程序员来维护会增加麻烦。也不利于分解数据库,真不懂他怎么想的。其中有一个条件查询的,我知道Where字句是很复杂的,所以就直接将Where作为参数了,我知道这么做破坏了中间层的封装,但是Where逻辑过于复杂,不这么做会带来大量的工作。但是,按照什么字段排序相对简单,我就用数组传递需要排序的字段和方式,完了竟然被他大骂,说我根本不懂数据库。说以前的XXX搞Where就不是这么搞的,我问他是怎么搞的,他说他把每个条件都作为数组项传递然后组合,我说,那么他怎么表达组合逻辑的呢?他说,当然只有And了。我差点没吐血。然后说排序作为一个字符串传递进来就好了,不要用数组,用数组他说他不搞,要么我自己搞。我真不知道该怎么办,怎么能够继续把这个项目继续下去。问问大家我该怎么办?我该怎么继续做下去?去向老板告状,还是和他私下解决?

解决方案 »

  1.   

    做这个好累,还是程序员好,我觉得我做程序员的时候从来不向主管发飚的啊,他怎么说我就怎么做,我觉得做得很开心。几乎不问问题,不会解决就去自己去查。我感觉他们夸张的不得了,一个新来的,竟然说他不会写发送邮件的代码问我怎么写,我也不会,我又不是PHP程序员,我只好帮他查PHP手册。....,竟然有这种事情。我真是太失败了。对手下太好了做不成事情。真郁闷,每件事情布置下去,都要问个为什么,不符合他们心意的就不去做,要么磨洋工。我想我又不发工资,我又不告状,置于这样吗?郁闷。
      

  2.   

    还有,用JavaScript的竟然问我什么是模态窗口,被我一句用google去查顶回去了,那次真的是忍无可忍了。问我,Div标签的内容怎么动态更新,我说你去查InnerHTML,过一会儿说不知道这个怎么用,英文的看不懂,问我有没有例子给他写一个。有我这样做项目主管的吗?
      

  3.   

    唉,算了,看你那么痛苦,还是给你支两招吧:
    1、让他做设计,按你上面说的,他做了1个礼拜不行,你可以直接问他,做的怎么样,拿来看看,分析分析,如果他说做的还行或者好,那么,继续让他做,不要做太多的干涉,你只是拿来看看,分析里面的问题,等他设计结束的时候问你所发现的漏洞(当然你自己也要提出修改的方案或方法),如果他能虚心接受并修改,继续,否则,勒令他限期修改,并直接对其技术能力表示怀疑(这对技术人员(特别是有点能力的人)有极强的攻击力),并提出自己的修改方案。
    其最终目的就是要表现出你在该方向的能力远远高于他
    2、在新技术上(本人对PHP不是很了解),你也不是很了解PHP,就应该虚心向该领域的人请教(不知道PHP是否支持OO,万一不支持的话你的设计也是白搭),让他们觉得你是个比较虚心的人(毕竟搞技术的还是比较敬服比他技术厉害的)。另外,应该掌握他们的缺点或者弱点,展示出自己在各个领域的能力和才能,这样才能更好的驾驭他们。
    3、要让他们觉得跟着你有赚头:让他们知道,做个项目能学到新东西(新的技术,技能),更让他们知道你能为他们争取更多的项目资源(就是钱了)
    唉,就写这么多了,这方面很多东西是要领悟的(记住,并不是说你开发方面的技术好这方面的悟性就高,放低姿态,好好领悟吧)