软件开发中最让人伤脑筋的几种人

本文不针对具体的人,仅仅表述现象,正确与否请自行判断

1、为什么呢,为什么呢,没有道理的啊,明明在Firefox中可以正确运行的,到了IE下面就错了呢
可能有时候会碰到人问这种或类似这种问题,他还会很兴奋的叫你过去给他看
不过一般问这种问题的人基本都还是新手,他们还不了解他们自己的工作职责是什么,老板请他来是做什么的
所以如果自己还经常问别人这种问题,请好好思考下。
如果你发现的是一个很少遇见的Bug或者你对某种通常出现的Bug提出了一种很好的解决方式,你可以和其他人交流下
记住,各种浏览器之间的差异是存在的,不要想当然

2、这个问题没有考虑到,这样做不下去了,再换种方法去看看
有可能你已经是一个“设计师”,你的工作是定下一种可行的方案,然后分给手下的人去实现它,可能你还要负责关键代码的实现
如果让你自己来设计并实现一个不是很复杂的系统,你会比较快,因为所有的东西都在你的控制之中,发现问题的时候去解决问题,这样一步一步就解决了
但现在你有更大的责任是负责整个系统及手下的人员,你要让他们去实现一部分功能,首先你给他们讲解,告诉他们怎么去做,然后他们就去按着你给的方法去做了
但过了一段时间,有人过来跟你说,按这样的实现走不下去了,你听他给的理由,然后分析下也确实是这样(不是因为某个技术难点过不去,而是整个方式不对)。
然后你就告诉他让他换种方式去实现,当然他也会照着你的意思去做,当然这极有可能会浪费很多时间。
你的岗位是什么,你的职责是什么,决定要谨慎

3、开什么调试,直接看代码
有些人总是很牛,他们不用调试,不用测试,写好的代码只要编译通过,经过他们的大脑检测“通过”,他们就敢把这些更新提交到线上
如果是这类人员,没什么好说的,建议看看《Facebook是如何管理代码的》,原文《How Facebook Ships Code
可能我们不需要很严格的审查,但是基本的测试还是必要的
你这样做只会浪费更多人力物力,当然有可能是紧急Bug的修改,偶尔可以直接在线上改,然后测
做这行就要专业点,前人的经验还是有用的,测试是必须的

4、这些错误又没有什么关系咯,放在里面好了,不用管
上级领导给你分配了一个任务,让你改改正在运行项目的一个小Bug,你把整个项目Checkout下来,发现项目里面很多错误,虽然和目前系统无关
但是影响了你通过集成开发环境部署测试,你只能改一个Bug提交一点文件到服务器上,根本无法在线下完成一个完整的测试
然后你向领导反映这个问题,项目代码中有很多错误,有很多注释掉的代码,当然最终得到的结果是没有什么改善
保证项目源码的完整性和正确性,无关的代码都清理干净,真正觉得有用目前又用不到的就用公司wiki或bbs之类的记录下来,努力写有用的文档
有时候什么狗血的需求和设计文档都是瞎扯淡的,是给别人看的
代码是写给人看的,很难看懂的代码是利用价值最低维护费用最高的东西

5、这样做也行,那样也可以吧
成员开会讨论问题中,大家提出了很多种解决问题的方法,都具有可行性,都具有优点和缺点,一个小时过去了还是没有决定采用哪种方式,最后会议在没有结果中结束
会议在一句“这样做也行,那样也可以吧”话中结束就是最大的失败,身为核心人物的你总有过人的判断力和经验吧,结合实际情况做出正确的判断是很重要的
建议可以很多,决定应该就那么一个

6、哦,这个问题我改过了,现在不是这样的了
协同开发,你要调用某个功能接口,但这个接口是由其他的人员开发的
某天你发现这结果不对了,然后你开始测试自己的程序,一轮测下来,发现调用的接口有些规则已经变化了,当然之前你都不知道
然后你去询问相关人员,结果得到了这句话
协同工作一定要清楚自己的行为会不会影响到别人,不要以自我为中心

想一想这些人当中有没有自己,我们通常是眼高手低,想当然,飘飘然。

Leave a Reply

Your email address will not be published. Required fields are marked *