coder学习提升的要素(中断计划suspendedplaning,持续编码continualcoding)

2016-08-18 来源:网络转载 编辑:
默认
特大
宋体
黑体
雅黑
楷体
条评论
成熟的程序员的思考时间要大于动手编程时间, 想好之后只要一次就编程成功, 而不成熟的程序员往往动手编程时间要远大于思考时间, 而且是边做边想, 通过反复来逼近最终目标。

程序员与人交流的有两个基本能力, 一个是理解能力, 一个是表达能力。 两者缺一不可。

评价好的要看情况而定, 单位同事对人的评价会从两个方面来考虑, 一个是这个人的为人情况, 一个是这个人的工作能力。

 一般而言, 成熟的程序员能够挣得软件业平均收入的中上水平, 或者在一个单位或部门中能够挣得比80%左右员工要高的收入。


面对失败和挫折, 成熟的程序员会坦然面对:编程时出现问题不可怕, 有什么问题就解决问题, 解决不了的问题可以想其他方法进行解决, 不在一棵树上吊死。 面对别人的批评和指责, 首先从自身查问题, 是自己的问题, 那就要主动承担责任, 并尽快改正。 不是自己的问题, 应该换位思考, 理解批评人的焦急心态, 并找机会给予说明。

良好的心理素质在面对困难和挫折的时候, 就会很坦然, 很坚强, 很自信。


程序员也会面对成功的。 有些程序员因开发了某个项目, 因编写了某个程序而感觉良好, 在不自觉中表现出我最牛, 我最好的样子, 面对他人夸夸其谈, 而对其他人不屑一顾。 而更有甚者并其无成果, 表现平平, 却依然会摆出一个高手的样子, 有的仅仅参与了某个项目, 而且不是项目主要开发者, 却会贪天之功, 归其所有, 好像这个项目是他主持开发的。

这些其实也是心理素质不成熟的另一种表现。 成熟的程序员面对成功并不会感觉到高人一等, 该是自己的功劳就是自己的功劳, 该是别人的功劳就是别人的功劳, 即使自己比别人水平高出许多, 他还是在想还有更高的技术顶峰等待攀登, 不可自傲, 看到别人取得的成绩首先感到去祝贺, 然后去学习, 而不是心怀嫉妒, 从中挑刺, 尽量贬低。

良好的心理素质使得程序员更加理性地处理好各种成功和失败带来的各种问题, 更有利于程序员超越自我, 以平常之心去迎接更大的挑战。


IT技术的发展日新月异,新技术层出不穷,具有良好的学习能力,能及时获取新知识、随时补充和丰富自己,已成为程序员职业发展的核心竞争力。 众所周知,现在是一个知识爆炸的时代,知识更新非常快。据测算,一个大学毕业生所学到的知识,在毕业之后2年内,有效的不过剩下5%。对于软件行业而言,这种形势更为明显,我们赖以立足的,不在于我们现在掌握了多少知识,而是我们有多强的学习能力。 学习人人都会,但不同的人学习效果却千差万别。一个善于学习的人,首先应该是一个善于读书的人,懂得如何高效地学习,并且拥有良好的心态。唯有如此,才能成为一个卓有成效的学习者,成就卓越的程序人生。 要善于读书 买书是最划算的投资 古人云:“书中自有黄金屋,书中自有颜如玉。”这说明先贤们早认识到,买书是最划算的投资。 我刚出道时,拿着非常微薄的工资。有一次向主管抱怨道:“现在的书真贵啊,这点工资连饭都吃不起,更别说买书了!”主管对我说:“不要吝惜买书的钱,宁可忍着不吃饭,也不要忍着不买书,因为买书是回报率最高的投资。” 主管的话让我非常震动。后来,我看到喜欢的书时,再也没有手软过。通过不断学习,我的开发能力不断提高,工资水平也大幅提高。一年后,我一个月工资的涨幅,就足够买两年的书了。你说,还有比这更划算的投资吗? 一本书,哪怕只有一页纸是有用的,它所将产生的潜在价值,也会远远超过书本身的价格。当然,书不在多,踏踏实实消化掉一本好书,比泛泛而读10本普通书,要有价值得多。 多读经典书 现在市面上给程序员读的书种类非常丰富。人生有涯,我们只能有选择性地看,要多看好书、多看经典书。 软件开发方面的图书大致分为三类。 1. 浅显的入门类图书。这类书的标题往往是《XX天精通XXX》、《XXX从入门到精通》、《XX开发实战》等,通常从软件的安装讲起。有人批评这类书为烂 书、毫无价值,这并不公平。至少我曾经从这些书中学到了一些东西。即使是21天系列书,也有适合看的人群。只不过,它一般也就只能看21天而已,过后就可 以扔到废纸堆。这类书只适于还没有入门的初学者,从中学到一些入门招式。在刚起步时一般买一本就够了。如果你善于使用搜索引擎,那几乎没有买这类书的必 要。 2. 国内外高手写的实战类图书。这类书实战性很强,将技术及原理讲得很透彻。比如《Windows环境下32位汇编语言程序设计》、《深入解析MFC》、 《Delphi深度探索》、《深入浅出WPF》、《深入剖析ASP .NET组件设计》等。以前这类书都是从国外翻译或从台湾引进的,现在国内高手越来越多,出自国内作者的图书也越来越多。如果能在学习的每个方向看两三本 这类图书,并通过实践消化掉,那么毫无疑问,你会成为一名优秀的程序员。 3. 国外大牛写的揭露本质、有丰富思想的书。这类书就是所谓的经典书,例如《代码大全》、《编程珠玑》、《设计模式》、《重构》、《代码整洁之道》等。经典书 就像一个有深度、有思想的朋友,能给你启发,每次阅读都会有新的收获,这类书具有真正的收藏价值。看经典书永远是正确的选择,它绝不会浪费你的时间,因为 经典书是无数人沙里淘金、帮你挑选出的结果。 然而,阅读这类书并不是一件容易的事情。读者需要有丰富的开发经验,才能与作者产生共鸣。如果一本经典书你看得很辛苦,那么很有可能是因为你功力未够,这种情况下不要着急,慢点来,不妨先将其束之高阁,多看看实战类图书。过一段时间再回头来看,也许你会有新的惊喜。 不要在上班时间看书 一个善于学习的人,首先要善于利用一切时间来学习。雷锋曾说过:“时间就像海绵里的水,只要愿意挤,总还是有的。”然而,当我们从上班时间中挤时间学习时,就千万要注意了,不要在上班时间看书! 上班时间看书,不但是一件很敏感的事情,而且非常吸引眼球,很快就会引起周遭的不爽。首先老板心里不爽:“我给你钱是让你来工作的,不是来学习的”;其次同事们也不爽:“我们工作都做不完,瞧,这小子真闲啊”。用不了多久,你就会成为被众人排斥的异类,这最终会让你自己“很受伤”。 要高效学习 只学习与工作相关的东西 我曾发现不少程序员在学习方面找不到方向,一会儿学学C#,一会儿学学Java,看了最新的编程语言排行榜,又觉得该学C++。这样左抓抓,右挠挠,只会让你觉得更痒。 学习最忌三心二意。俗话说:“伤其十指不如断其一指”,每门都学一点,还不如专心学好一个方向。这个道理谁都懂,可是又该学哪个方向呢?难道只能跟着感觉走吗?不!最实际的方向,应该跟着工作走,工作需要什么,我们就学什么,把工作需要的技能熟练掌握,有很多好处。 首先,可以集中精力,在某一方面钻研得更加深入。所谓“百招会不如一招绝”,有了绝招,你还怕不能在“武林”立足吗?《天龙八部》中的慕容复武功博学无比,最后还不是被只会一招六脉神剑的段誉打得落花流水? 其次,可以学得更快、更深入,因为学习更具有针对性,而且可以立即在工作中运用,可以马上检验出学习的效果。对存在的问题进行深入研究,掌握的知识也会更加牢固。 再次,学习与工作结合在一起,工作时间也就成了学习时间,这样就突破了三个8小时的限制:有人说,我们每天所拥有的时间可以分为三个8小时,工作8小时,睡觉8小时,另外还有8小时可以自己自由支配。工作和睡觉的两个8小时大家都一样,决定人生高度的是另外这个8小时。当我们把学习的焦点放到与工作相关的知识上时,工作时间中的很大一部分,同时也就成了宝贵的学习时间,这真是一举两得的美事啊。 问题是最好的学习机会 日本经营之神松下幸之助曾说过:“工作就是不断发现问题、分析问题、最终解决问题的过程,晋升之门将永远为那些随时解决问题的人敞开着。”可见,工作过程中有问题是正常,没有问题才是真正的问题。在发生问题时,能勇于面对问题、解决问题的人,才是公司真正的骨干。 现实中,很多人总是千方百计回避问题。当上司安排一项艰巨的任务时,也想尽办法推托。殊不知,对于个人而言,问题其实是最好的学习机会。往往那些愿意接受困难工作的人,能力会越来越强,那就是因为他们在克服困难的过程中取得了巨大的进步。 织网式学习 知识的广度和深度都很重要。作为一名程序员,能深入把握技术细节,是写出优质代码的保证。但对于一名项目经理而言,知识的广度更显重要。项目中碰到的问题往 往具有综合性,只有具备广博的知识,才能快速对问题进行分析和定位。在程序员成长的道路上,我们必须有意识地扩大自己的知识面,形成更完善的知识体系。 我曾经编写过一个网络信息采集软件,这个软件可以从具有列表页的网站中按字段设置采集信息,支持自定义字段、页面多级关联、下载附件、支持多种数据库、可视 化定义等特性。刚开始,我认为这个软件只是一个比较大的功能点而已,后来发现这个不起眼的功能关联着大量的知识点(如图所示)。
在开发过程中,我顺藤摸瓜,逐个击破,对很多知识点进行了细致的学习研究。软件开发完成后,我的知识体系网也进一步得到了补充和完善。 经常思考总结 子曰:“学而不思则罔”。人只学习不思考,就会迷惑,难以把握事情的本质。这就好比一个学武之人,只习得其形,而未得其神,难以成为真正的高手。 从入门到成为高手的过程中,程序员往往要经过几次顿悟。记得有一次,我领悟到了一个很简单的结论:“原来高级编程语言中的类库是封装了Windows API来实现的。”后来碰到一些自带类库无法实现的功能时,我就会想到,其实可以通过调用Windows API来实现。利用这个思路,我解决了一些看起来很难的问题,得到老板的赏识,从而很快获得提升。 顿悟非常可贵,然而它不是随便发生的,而是经过一次次苦苦思索之后、灵光闪现的结果。思考的过程,其实就是将外在知识内化为自己的知识的过程。而顿悟,则批量实现这种内化,将无数个知识点连接在一起,达到融会贯通的境界。 克服“高原现象” 爱学习的人都会有这样的经历:学习持续了一段时间之后,往往会有一个瓶颈期,长时间似乎都没有什么进步,于是内心非常着急。 这种情况,实际上是由人的学习规律决定的一种“高原现象”。据研究,学习者在刚开始进步快,随后有一个明显的或长或短的进步停顿期,后期进步慢,中间的停顿期叫高原期(如图所示)。

高原期,实质是一个消化期。由于前期的学习积累了太多的知识点,这些知识点在大脑中乱作一团,还没有形成一个知识体系。这时需要一定的时间来消化它,让它融会贯通,经常思考总结可以快速帮你跨过高原期。 处于高原期时,还可以换一个相关的方向来学习。例如,编程语言学不下去了,可以学习一下设计模式,设计模式也学不下去了,再换成数据库。通过学习这些相关的知识,不但补齐了知识体系中的短板,而且各个知识点之间可以互相启发,帮助你实现顿悟,跨过高原期。 要有好心态 学习要静心 急于求成是学习过程中普遍存在的一种心态,这可以理解。毕竟作为一名程序员,要学的东西实在太多,而社会又是那样的浮躁,让人觉得一切都是那样的不安全、不确定,似乎只有学得快一点,才能跟上社会的脚步。 可是“欲速则不达”,想快快地学,往往会形成东一榔头、西一棒槌的学习方式,每一个点都没有吃透。心沉不下去,知识也会沉不下去。要想成为真正的高手,只能静下心,一步一个脚印慢慢来。 学习是持续一生的过程 人生,就是一个自我完善过程。 子曰:“吾十有五而志于学,三十而立,四十而不惑,五十而知天命,六十而耳顺,七十而从心所欲,不逾矩。”可见孔子也不是天生的圣人,也在不停地学习、进步,从“志于学”到“从心所欲,不逾矩”,孔子一共花了55年的时间。 作为一名程序员,更需要不断丰富自己的知识库。我们所知道的东西,就像一个白色的圆圈,圈外则是黑暗的未知的世界。当圆圈越大,所接触到的黑暗部分就越多。我们只有不停地学习,才能打破更多的黑暗,找到更多光明。 保持饥饿,保持愚蠢 我非常喜欢乔布斯的一句话:“求知若饥,虚心若愚”(Stay Hungry,Stay Foolish)。其实我更喜欢它更原生态的翻译“保持饥饿,保持愚蠢”。我们只有认识到自己还很饥饿和愚蠢,才会像没吃饱一样,由衷地需要学习、爱上学习。 ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- 引导语:"我们先养成好习惯,然后好习惯成就我们。"这是17世纪英国着名诗人约翰·德莱顿的一句名言。日积月累,好习惯会让你受益无穷。每天的24个好习惯让我们受益无穷! 早晨   1.早起。在床上做套热身操再起。   2.锻炼。每天坚持晨练并不难。   3.评估自己的目标。想想自己离近期、中期和长期目标还有多远。   4.阅读或聆听励志材料。在早晨通过阅读励志书籍或播放有声读物的方法,能让自己充满积极的力量。   5.想象。闭上眼睛,花几分钟想象一下一天中发生的好事情。   6.列一份任务清单。每完成一项就在上面划一条横线。   7.浏览标题新闻。了解身边及世界上发生的大事是十分必要的,否则你会发现与人聊天时慢半拍。   8.服一片复合维生素。尽量做到均衡饮食,每天一片复合维生素能确保身体摄入所有必需的维生素和矿物质。   9.整理房间。凌乱的房间会让人心绪不宁,思维不清。所以,每天早晨整理好房间再出门。   10.打扮。必须承认,这个世界大多还是以貌取人的。所以每天早晨花几分钟,把自己打扮到最佳状态。 白天   11.挑重要的事情先办。许多人都会先干那些貌似紧急、其实并不重要的工作,如回邮件或电话等。一定要先办最重要的事,才能真正做到有条不紊。   12.与自然接触。走到户外亲近自然,会使你感到放松和愉悦。   13.写博客。写作能促使人思考。   14.吃零食。用水果、蔬菜和坚果代替薯片、糖果和巧克力。   15.保持积极心态。积极意味着采取主动。每当产生了新的愿望,问问自己:“我现在应该做些什么?”   16.与朋友保持联系。即使在最忙的时候,也每天至少给一位好朋友写封短邮件或发个短信。   17.存钱。每月至少把收入的10%存银行。可以每天存几十元零钞。 晚上   18.享受家庭时光。白天没有时间与伴侣和孩子在一起,所以每天晚上必须珍惜并享受和家人相聚的时光。   19.用牙线清洁牙齿。这对于减少蛀牙和预防牙龈疾病是非常重要的,还可以帮你呈现最美好的笑容。   20.放松。上床前30—60分钟关闭电脑和电视,能睡得更香甜。   21.回顾自己的一天。哪些目标实现了,哪些还没有,原因是什么?每日睡前的反思是自我提升的绝佳方法。   22.读书。读书让人平静,但最好不要选择艰深难懂的书。   23.对家人说“我爱你”。每天至少对伴侣和孩子说一句“我爱你”。   24.早上床。早起的前提是早睡,能让身心得到充分休息。 --------------------------------------------------------------------------------------------------------------------------------------------------------------------

我的学习历程

写自己的代码

代码量非常重要,前期要写足一定量代码,再看一些书籍/读一些源码才有感觉。我是如何写代码的:

1、项目代码,这个没得说,在写的过程中思考我们在读书时遇到的一些问题;

2、在写项目的时候我们可能发现我们经常重复做一些事情,此时就需要考虑建立自己的代码工具库,如通用代码库、代码生成工具、常用工具类等; 不要重复自己,遇到重复的就考虑往自己工具箱添加可复用的组件;

3、按照自己兴趣发展一个方向,此时可以考虑写一些相关的轮子;通过轮子再反过来深入学习其他相关的技术。

4、如果有能力就考虑构建自己的平台,简化重复劳动,提升开发效率。


发明轮子我觉得是很有必要的,光看不练没什么多大效果,发明个轮子可以帮助我们更好的理解,轮子不一定非得用到我们的项目,此时的轮子是帮助我们学习的。


阅经典的书籍

读大师经典著作,如

《国外程序员推荐:每个程序员都应读的书》

《一些经典的计算机书籍》

或者关注如iteye等网站,推荐的一些好书。 我经常到 互动  itpub  图灵社区 等看一些新书。


读书不是到用的时候再读,而是按照自己的方向和兴趣选择相关的书籍进行阅读,学习前人经验和思想,开阔自己思路。


读书不是只读一遍,有些好书如《Effective Java》、《设计模式——可复用面向对象软件的基础》、《企业应用架构模式》、《敏捷软件开发:原则、模式与实践》、《面向对象软件构造》等需要重复读,因为时间段不同积累的经验不同,理解会产生改变,每次读都有不同的收获。


读书读不懂没关系,先放一放,过一段时间再来看,经验到了自然就明白,不要刻意去背,刻意去记,一定要理解着记,记住要理论指导实践,实践检验理论,不可脱节。


不能心急,一下子啃N页,像看小说似的,这样什么都学不到,记不住,即使今天记住了过了几天就忘了,所以要温故而知新。


读书要思考自己之前遇到过类似的场景吗?对比着记更容易,而且记忆的成本会很低。


不要光看自己使用的技术相关的,其他方面的如产品,测试,数据库等相关书籍也建议阅读。在此推荐一本产品入门书:

《Don't Make Me Think》


尤其在学习Java技术时,建议大家有时间把JDK的核心API(如java.lang/java.util等这些我们经常用的)读一下/还有相关的规范(规范是最权威的指南)。


读优秀的代码

阅读优秀的源代码可以帮助我们消化书籍中学到的理论,更好的去使用它,而且能开阔我们的思路,完善我们的思想。


读源代码思路:

1、从使用进行阅读,按照调用关系深入到源代码中,不要一口吃胖子;

2、跟着单元测试走;

3、只需读最核心部分即可,无需读所有代码;

4、从简单的源码入手,刚开始放低难度,如阅读junit、slf4j、ehcache等相对简单的源码,再深入阅读如spring等源代码;

5、阅读源代码要分而治之,一次读一块,不要混读,不要杂读。


记自己的博客

记博客可以思维缜密,完善知识体系,扎实技术;而且可以分享自己的经验想法,如果有错误会有朋友指正,非常好的学习方式。


记博客思路:

1、记录自己工作中遇到的问题及解决方案;自己既然遇到了别人也可能遇到;

2、不要怕写的简单,没面子,我觉得要厚脸皮 

3、任何东西都可以记,留作回忆。


向同事学习

既然能作为同事,说明大家水平差不多,学习同事的优点。


向同事学习思路:

1、没事聊聊技术,听听它的想法;

2、看他的源代码,从中学习;

3、如果你的老大/同事都不上进,你又是很上进的,建议物以类聚,人以群分,换个环境好好发展自己。


善于观察细节

善于观察细节,比如从最基本的同事怎么操作的那么快(观察他是如何进行操作的,如发现自己不会的快捷键)?


观察细节思路:

1、眼要尖,善于发现自己不会的;

2、嘴要勤,善于问自己不了解的(此处不是没事就去问,而是自己思考过,实在不会的,不要憋在肚子里,问一下又不会怀孕);

3、没事读同事的源代码,这个可是免费的,从中能学到好的编码习惯和好的解决问题思路。



学习没有捷径,我不聪明,但我刻苦;刻苦还是不够,得善于思考和总结。

学习不要怕丢人,学到手是自己的,学会厚脸皮。


----------------------------------------------------------------------------------------------------------------------------------------------------------------------- 1. 主动学习新的技术和非技术两方面的知识 不好的程序员只有在实在不行的时候才开始进行知识学习。良好的程序员会主动学习新的技术知识。伟大的程序员不仅会自行学习新的技术知识, 而且还会学习非技术方面的知识,对各种知识来源都有一种开放的心态,而不会象有的人那样固步自封。 具体点说,不好的程序员只有在参加了采用WPF的项目时才开始学习XAM;良好的程序员一年前就学习了XAM,因为他感觉它很有意思;而伟大的程序员还阅读了WPF应用程序的设计指南、可用性(usability)理论或者什么类似的学习课程,因而他能够制作出卓尔不群的UI。 2. 务实而不教条 严格遵守那些不成文的“编程规则”往往是一种奢侈品,没有多少开发人员能够承受得起。如果你们的规格说明书不是由顶尖的开发人员编写的,也不是在顶尖的开发人员指导下编写的, 我就可以向你保证,你可能也承受不起。 我经常能够碰到一些程序员,他们无法或者拒绝做某个任务只是因为完成这个任务的做法通常不为最佳实践所接受。业务需求很少会受到实现需求所采用的技术的制约;没有人会说,“这我们不应该把这个需求写到规格说明书里,因为要实现这个需求,程序员就不得不写一段很臭的代码。” 在结束的那一天,程序员的任务是要生成一个有效的应用程序,而绝不是要求在技术方面达到十全十美。我可不是在为垃圾代码做辩护。我想说的是,总会在有些时候,你会写出一些代码,这些代码你永远不会作为范例向别人展示做事的正确方法。如果只有一种写法,那么这种代码就不是糟糕的代码 ——  但要保证你已穷尽了其它所有可能的方案。 3. 懂得如何通过研究找到答案 通过研究找到答案可不仅仅只是在搜索引擎中键入几个关键字那么简单, 也不是到Stack Overflow或者MSDN forums这类网站发个问题帖。我就碰到过在搜索引擎里根本搜不到答案的问题,然后我Stack Overflow 或者MSDN forums里发的所有问题贴都没有一个像样的答案,不过我还是解决了我所碰到的问题使得工作得以继续。我不是魔术师 —— 我只是懂得如何找到答案,如何找出问题的根本原因。 有许问题都属于情景式的问题,如果你依赖于搜索引擎或者论坛,就会在各种链接中浪费大量的实践而最终无法得到真正的答案。要学习如何进行根本原因分析,学习底层系统方面的知识才能够找到其它的线索和解决方案,还要学习如果在对问题有个全局性的认识后才对其进行深入分析。 4. 拥有激情 不喜欢这份工作,就无法成为这个行业中的顶尖高手。倒是也有一些仅仅把编程当作一份普通工作的程序员水平也还不错,但如果你的三观就是如此的话,你就不太会愿意去做能够将你引向成功的所有事情。这个观点会使很多家伙不悦,因为他们会觉得这是一种人身侮辱。“我是一个很好的程序员,但我还有其它重要的事情要做,我不能让工作成为我人生的全部。” 我完全理解;我也有别的更重要的事情。尽管我也痛恨这么说,当我们对我的工作热情高涨之时,我愿意(虽然不是渴望)抛弃我其它更重要的事情来首先完成手头的工作。要说你不愿意全情投入就无法成为高手,不算是人身侮辱,这是事实而已。 你的激情不能仅仅只在编程一个方面 —— 你必须在你的工作、你所使用的技术、你的老板、你的项目等等方面都有激情。 我目睹过一些非常好甚至很伟大的程序员其表现平平,只是因为有一些条件不太合适。比如,他们不喜欢手头的项目,或者项目中所用的技术让他们讨厌。我曾经就是一个这样的程序员,我也同这样的程序员一起共过事。无论从哪个角度讲,我都不喜欢这样的程序员。如果你发现你的情况就是如此,就需要立即解决这个问题,要么挖掘出手头的工作或项目中有意思的地方从而能让你调整心情,要么就不要接着干了。怪不值当的。 5. 将自负留在门外 许多开发人员都非常自负。仅仅是比有些人聪明、懂得多一点或者经验更丰富一点,可不是意味着和那些人相比你才是好人。你要尊重别人,真正听取并考虑别人的观点,在需要的时候向他们求助,而且还不能小瞧别人。 你还应该更加关心团队的胜败,而不是仅仅关心你在工作中的荣誉得失。 6. 具有企业家的精神 最优秀的开发人员不会是游手好闲者。对他们来讲,产品的成功不仅仅意味着他们的薪水有着落了。因为他们在工作中热情饱满,他们是为了项目有更好的发展而工作,而且会一往无前。 7. 测量两次,下刀一次。。。但测量不要多于三次 开发人员可能会犯的最糟糕的错误之一就是还不知道要干什么呢,就一猛子扎到代码里去了。(当他们把这种做法称作敏捷开发时情况更为糟糕,好像用敏捷两字就能让情况好转似的)。当伟大的开发人员跳进代码里去的时候,那是因为需求规格说明同他们以前实现过的某种做法十分相似。伟大的程序员在面临新问题时,他们会进行思考、计划和研究。 开发人员当中最最优秀的不会堕入“分析瘫痪者(analysis paralysis)”陷阱。他们懂得要对某些事情小心谨慎(比如涉及钱或个人数据时),只有这些特殊领域才适合我所说的“要测量三次”。任何超过三次的情况发生就意味着你在浪费你的时间(除非在鲜有的特例中,比如核反应堆、宇宙飞船、对冲基金会计系统)。 在某个特定的时间点就要停止计划,开始编码,然后再看看你的计划在哪些方面需要进行相应的调整,这一点非常重要。顺便说一下,这就是我为什么成为敏捷方法拥趸的原因之一。我所知道的最优秀的开发人员在计划不再合适或者发现计划有缺陷时,都会愿意将计划放弃掉。
300*250
ad640*90
Copyright ©  2010-2016 www.alonely.com.cn 版权所有 浙ICP备09022494号-4 关于我们联系我们友情链接站点地图TAG标签 免责声明