张宇杰 2011年08月11日 星期四 21:13 | 1803次浏览 | 2条评论
背景
项目中的一个模块。负责人的思路是初级程序员的思路,所以我知道是一定会出问题的。我要求他写文档,是按我的思路来写,但没有强制,所以最后没写完。
程序出问题了,code size大了。要求负责人讲解程序时,老大们都认为程序结构本身就有问题,由于该模块的复杂度,会造成风险过高。
=======================我是傻傻的分割线===========================
今天发生的事
首先我被老大训了,老大认为我手腕不够强硬,没有在一开始就把他们摁住,让他们按正确的方式来做。
叫来负责人让他讲他的思路,及改进方法。老迈提出了要求,及应该做成什么样。
当全部讲完,老大要他给出schedule时,我跳出来说,这有问题。于是我把我的思路彻底讲了一遍。并强制要求他按我的思路做。
老迈说,你这听着这么玄乎,最后和我刚说的是一样的呀。我说,他们的思路是有问题的,必须让他们按照正确的思路去思考,最后才能得到更接近我想要的结果。
=======================又是我傻傻的分割线==========================
补充说明
刚开始我是故意没强制要求他们按我的思路做的
我这次给他们机会,一次已经够了,以后我会很强硬的,呵呵。
=======================不好意思又是我别打我==========================
一些可以思考的
1. 我开始没有强制要求,我的考虑是。如果我当时那么做了,他们肯定会有强烈的抵触情绪,因为我要求写文档时,他们找各种接口来拒绝。他们也会觉得没有给他们机会来表现。那么这些负面情绪会带来不好的结果。他们的能力还没有达到足够的水平来理解我的思路,他们在不理解的情况下被强制执行的话,可能会写个四不像出来,后果更遭。所以,现在他们的问题暴露出来了,他们知道自己错了,我现在再来贯彻我的思想的时候,他们应该更容易接受。
2. 由于我开始的不强硬所造成的正面影响。员工应该能得到一定的成长,他们知道自己的路是错误的,我告诉他们正确的路是怎样的。如果这次能把code调整好,那么后面bug会少,风险就降低了。负面影响。项目延期是肯定的了,如果老美责备下来,老大们就得扛着了。
3. 老迈和我最后给出的结果是一样的,说明我们的设计思路是基本一致的。这个设计思路和设计面向对象时的思路也是基本一致的。我为什么提这个,因为老迈做了一辈子的嵌入式,据我了解一直在写C,没怎么用过java, C++之类的语言。但我相信如果告诉老迈java的语法,那么他写出来的第一个程序,一定是一个漂亮的面向对象程序。因为他分析问题的思路和面向对象的思路是一致的。
4. 面向对象不是一种语法或语言,而是一种思维方式。作为一种思维方式,如何去设计一个类,仅仅是一种表现。更深层的是如何去分析问题,比如如何抛开错综复杂的业务而抓住其核心。如果掌握了正确的分析方法,一定可以写出漂亮的面向对象程序,不过,到这时,用不用面向对象,已经无所谓了(浮云而已),呵呵。
5. 3和4说明了,如果把一种语言学好了,再学其他的语言,很快就能掌握。那什么才叫学好了。理解程序究竟是个神马东东,有正确的分析问题的方法。
=======================我分割线又回来了==========================
以上是我今天的思考,这些也可以被写成很多个问句,有兴趣的人可以一起来思考。
谢谢大家。
Zeuux © 2024
京ICP备05028076号
回复 Ford Guo 2011年08月19日 星期五 14:26