友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!
恐怖书库 返回本书目录 加入书签 我的书架 我的书签 TXT全本下载 『收藏到我的浏览器』

微软研发致胜策略-第8部分

快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部! 如果本书没有阅读完,想下次继续接着阅读,可使用上方 "收藏到我的浏览器" 功能 和 "加入书签" 功能!


我知道学校里的老师在教程序语言时强调不要用
g o t o,基本上是出于善意;他们是对的,但我希望程序设
计师必须明白,尽量少用goto 并不表示绝对不要用。我
更希望学校里会示范少数应该使用goto 的时机,证明在
那些情况下使用goto 是合理的,因为不该用goto 的实例
已经看得太多了。我想这是因为很多老师自己主张绝对不
该使用g o t o,在教学时自然特别强调goto 不可用,只要
62
微软研发
致胜策略下载
一看到学生的作业中有goto 就认为这是可怕的程序,使
得很多毕业出来的程序设计师畏goto 如蛇蝎,就好像电
影中只要有裸露镜头就判定这是不道德的一样。
程序设计中,只有很少数的策略应该被视为规则,规
则该被遵循,但不是死守,主管必须教育组员明白这一点,
并教导组员应该如何灵活运用策略,否则属下若是只晓得
盲从,就是主管的危机。策略不是死的定律,要灵活运用,
不要死守,这是采用任何策略时都应该注意的,当然包括
本书中所提的所有策略。
策略不是死的定律,要把它当作指导原则来活用。
大部分的时候都应该遵循,但也有例外的时候。
给我看原始程序代码
关于是否该用g o t o,教科书、参考书、杂志等已经都
讲烂了。所有关于赞成和反对使用goto 的文章中,麦康
奈尔(McConnell) 所著的《代码完成》(Code plete)一
书中第16章可以说是最完整的了。他除了举出许多用goto
63
微软研发·致胜策略
策略性的作业方式下载
确实可以增加执行效率的实例之外,更进一步告诉读者他
赞同goto 的理由,也证明了部分反对goto 的理由是太牵
强了些;麦康奈尔也整理出很多参考资料,包括爱兹
格·迪杰克斯拉(Edsger Dijkstra) 引发这场世纪大论战的
信件,以及大师唐纳·克努斯(Donald Knuth) 那篇举证繁
多的“ 用goto 的结构化程序设计” ( S t r u c t u r e d
Programming with gotoStatements)。正如麦康奈尔所言,
虽然是否使用goto 的千古难题至今依然在程序设计师的
生活中一再上演,但教科书上的争论,也都还是2 0年前的
东西吵来吵去罢了。
反馈回路
电子工程师会利用一种“反馈回路” (feedback loop)
的电路系统,将输出的讯号再当成输入讯号,反馈给系统
本身。图标如下:
64
微软研发
致胜策略下载
反馈
电路系统
4 输入
1 输出
由于输出不断反馈给输入,这样的电路系统会产生两
种结果:反馈讯号与输入讯号相加,称为正反馈,输出讯
号愈强,得到的反馈愈强,因而导致输出再放大、再放
大;第二种结果正好相反,称作负反馈,反馈讯号会与输
入讯号相减,不断相减的结果,最后会达成一个较稳定的
输出值。从这样相当简单的描述看来,似乎正反馈很了不
起,因为它会自我加强能量,而负反馈则不好,因为无论
它输出的起始值多大,最后都会缩小。事实呢?正好相反,
负反馈远比正回馈有用。
您在听演讲时,可曾听过麦克风尖锐的叫声?足以吓
醒所有的瞌睡虫,这就是正反馈的现象(译注又称作“反
受放大”,在唱KTV 时麦克风绝对不可指向喇叭,就是这
个道理)。麦克风除了接收演讲者的声音外,还接收到喇
叭的放音,不断地反馈循环,最后使喇叭负荷超载,发出
尖锐刺耳的声音,而且频率还愈来愈高。负荷超载
(overload) 就是正反馈常有的问题。
相反地,负反馈则是以输出来抑制回路未来的输出。
其实我们开车就是一种负反馈的系统,先踩点油门,慢慢
加油,发现太快了就带点刹车来减速,如果刚起步就是油
门一踩到底,那就得重踩刹车才能达到正确的速度。也就
65
微软研发·致胜策略
策略性的作业方式下载
是说,输出愈强,需要负反馈的抑制力就要愈大,但也不
是让反馈的力量决定一切,负反馈只是调整用的,好让输
出维持稳定。停车只是刹车踏板的作用之一,让车速保持
稳定也是刹车(负反馈) 的作用。
除了电子工程,您还可以发现有很多各式各样的反馈
回路,包括人际关系和软件开发。有些反馈回路是刻意设
计的,有些则是无意间自然形成的,不论是有意无意的回
馈,都有助于加强对项目的控制,所以,您必须明白反馈
回路的道理,并且善用它。
错虫,就是程序设计的输出产物之一,我们把软件开
发当成电路系统,如果有个负回路可以让错虫导回去抵销
下一个潜在的错虫,那有多好!我们前面谈过的立即除错
就是一个负回路的观念:
要求程序设计师一发现错虫就立即清除。
如果一发现错虫就立即消灭它,它就没有机会影响到
程序设计师的心情,大家可以高枕无忧地继续做下一项工
作。但是如果有个伤脑筋的扩散型错虫,清了这里却错了
那里,再去修改那里却发现还有某处情况不妙,就得坚持
要求这位程序设计师除错到底,把所有的错虫都确实清除
66
微软研发
致胜策略下载
干净了,才可以继续开发工作,否则会造成野火燎原之势,
错虫一发不可收拾。错虫愈多的程序设计师,愈要加强督
促。“立即除错”就是一个最好的负反馈系统,让软件永
远保持无错状态。当然,还有我们前面提过的种种立即除
错的好处—刚生成的错虫比较容易清除、让程序设计师
学习速度加倍、更能准确估算项目的完成日期等等。
反馈回路有利亦有弊,运用不当的话也是会有问题的。
记得我在第1章中谈过的实例吧,那个项目经理总是要求
他的组员写进度报告、开进度检讨会、再做后续报告,没
完没了。这位主管是希望藉此获得项目进度的信息,很不
幸,他的负回路却阻碍了他真正需要的产出,他想了解组
员对于如何解决问题的见解,可惜方法不对,他要求组员
写报告,结果让组员心生反感,根本不想发表意见,他的
制度使人噤声—讲得愈多,你必须写的报告就愈长,没
有人想写报告,所以只好闭上嘴。这正所谓适得其反。
负反馈不是惩罚
惩罚是一种心理上的负向强化作用( n e g a t i v e
r e i n f o r c e m e n t ),惩罚是对员工责骂、训斥与威胁,就像鞭
打马匹使它服从主人的命令。发现有一位组员进度落后了,
67
微软研发·致胜策略
策略性的作业方式下载
不得了!叫过来骂一顿,这就等于是给了他一帖重剂量药
物,逼使他以后不敢对进程掉以轻心。
这种管理手段是该受谴责的,我绝对不鼓励任何人这
么做。想一想我们前面刚讨论过的负回馈的观念,要求程序
设计师立即除错,但程序设计师不需要对除错感到焦虑不安。
由于立即除错的策略,他必须花费好几天的时间解决这个问
题,当然不是他所喜欢的结果,但主管不应该让他因此而感
受到威胁。我们希望任何事情都很自然,没有必要加重组员
的苦恼,绝不是强调谁是老板谁是奴才,谁必须服从谁。
在微软曾经有几位主管,每次一遇到项目进行不顺利,
就把组员叫出来骂,说他们是最差劲的程序设计师,不配
自称是微软的程序设计师,以及等等之类的无聊话。我不
能确定这几位主管究竟用意何在,但是如果他们的目的是
让组员工作更努力的话,那他们的方法可就大错特错了。
我相信您完全可以想像,这种责骂只会激起组员心中的愤
恨、羞恼和沮丧。更糟的是,就我所知这些项目的问题事
实上都出在管理方面,目标不够明确或是野心太大,这些
项目的程序设计师只是倒霉遇上了差劲的主管,其实他们
的能力并不比公司内其他的程序设计师差,因此责骂他们
只会让项目更糟,绝对没有改善的效果。
68
微软研发
致胜策略下载
您必须小心注意,别设置了不当的负回路系统,例如
以程序新增的行数、或新加入程序的数目来决定组员的奖
金,把程序改好则不记入功劳,那么,程序员肯定只爱写
拼拼凑凑的初稿,程序不求精巧,而且不愿认真改善现有
的程序。您原本希望奖励的是生产效率,结果却造成公司
里大而无当的拼凑程序到处泛滥。
我希望您能从以上的讨论中,体会到两点原则,第一,
当您设计一个新系统时,利用负回路的观念来帮助项目进
行顺利;第二,要考虑这种回馈对员工的长期影响,确定
不会造成不良的副作用。
在您的软件开发活动中,小心谨慎地运用负回路
的观念,让项目顺利进行;但务必要注意避免反
馈回路的不良副作用。
愈简单愈好
最后,请您确定您的策略性工作方式够简单明白,让
69
微软研发·致胜策略
策略性的作业方式下载
人容易了解和遵循。
请回想一下我刚才举过的实例:用纸笔写的稿子、咖
啡的浓度、整批阅读e … m a i l、立即除错,这些都是细微的
小事,不会对作业流程发生重大的影响。
人都希望用简单的方式解决复杂又耗时的问题,因为
人们常常被工作之外的程序性事情绊住。如果问一位程序
设计师:“如何避免错虫?”这个简单,但若是要求所有
的程序设计师针对他所遇到过的每一个错虫写出一份报
告,说明如何避免这只虫,那就是另外一回事了,简单的
事情立刻变成大麻烦;如何避免错误的报告应该是主管去
汇总撰写的,组员只要口述检讨就好。这种麻烦像荆棘一
般,会自动蔓延生长,您必须时常大力扫荡一番。
请切记,我们的目的是整体生产力的提升,而不是去
填满繁杂行政程序的各步骤。我们要获得工作方式的好处,
丢弃它的缺点;妥善的策略性工作方式可以达到这个目的。
重点提示
小小的改变可
返回目录 上一页 下一页 回到顶部 1 0
快捷操作: 按键盘上方向键 ← 或 → 可快速上下翻页 按键盘上的 Enter 键可回到本书目录页 按键盘上方向键 ↑ 可回到本页顶部!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!