说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

成为伟大开发者的“九步曲”

HTML文档下载 WORD文档下载 PDF文档下载
作为一名优秀的开发者,应当具备哪些优秀的品质?原文作者Gregor Riegler发表了一篇博文《What makes a great Developer》,文中提到了成就优秀开发者的九大品质包括:激情、好奇心、谦虚、韧劲、一丝不苟等。

如何成为一名优秀的开发者?你觉得自己算是一名优秀的开发者吗?如果是的话,你有没有考虑过,作为一名优秀的开发者,应当具备哪些优秀的品质?原文作者Gregor Riegler 发表了一篇博文《 What makes a great Developer》,文中提到了成就优秀开发者的九大品质,译文如下:

一、激情(Passion)


开发者往往会因每一次成功完成任务后而感到欣喜,这是因为当你已经掌握并且拥有智能的解决方案时,这些对你来说都是非常的有利。

编程不只是一份工作,它还是一门艺术、是诗歌。因为激情和动力才成就成功。软件开发行业不仅巨大,而且发展也相当的快速。一名好的开发人员能够跟得上时代的步伐,因为他知道任何事情都可以做得更好。不断学习新的方法,以满足饥渴(意思是学习永无止境)。

二、好奇心(Curiosity)


通常程序是确定的,因为在计算机领域里不存在所谓的事故。每一个结果必定有其原因。一个伟大的开发者不允许有事故发生。这是因为他宁愿搜索和调试众多的软件层,在开发环境中找到原因。正因为如此让他积累了丰富的经验知识,让他更好地理解、阅读并解释应用程序“怪异”的行为。

“The important thing is not to stop questioning. Curiosity has its own reason for existing.”重要的是不要停止提问。好奇心有它存在的理由。——Albert Einstein

"Themost likely way for the world to be destroyed, most experts agree, is byaccident. That's where we come in; we're computer professionals. We causeaccidents."许多专家认为,导致世界毁灭最可能的原因是意外事件。那正是我们在做的;我们是计算机专业人士,我们正在制造意外事件。——Nathaniel Borenstein 

三、认知 (Cognition)


编程是解决问题的行为。问题可以分解成多个组成部分,最终成为一个整体组合在一起。在大脑里寻找问题并作出反应,让它们相互作用这就需要具备真正的技能。

四、一丝不苟(Meticulosity )


编程到处充满着陷进,哪怕只是一个细节也会导致软件开发崩溃。细节就是魔鬼,即使是很小的懒惰也可轻易地摧毁项目。这就是为什么说完美是如此的强大、强调高质量的重要性,直至走向成功。

如果你能容忍第一个缺陷,那么第二个、第三个就会接踵而来,直到最后你得到了一个烂摊子。一名好的开发人员是不会容忍任何缺陷,这就避免了陷进从而提升了项目质量。这就好比一个“ 破窗理论”,意思是说一个房子如果窗户破了,没有人去修补,隔不久,其它的窗户也会莫名其妙地被人打破最终导致毁坏了整栋房子。

五、时间(Time)


伟大来源于经验。是的,你可以简单地遵照建议、模式和最佳实践。但这与学识无关,这是由于错误和迭代演变而来的。

六、谦虚(Humbleness )


伟大的开发者知道他所不知道的,并且深知永远都不会知道所有的事情。他要知道,总会有改进的空间,这同样适用于自己的工作,他敢承认自己的错误并接受批判。

七、韧劲(Tenacity)


好的开发者会向解决方案宣战,他会跟其叫板,即使是让他奋斗数小时、一夜、甚至是到天亮。也有的开发者在遇到问题时,第一时间内他不会考虑问题,但是他把这个当做挑战,除非它不是个反模式。来之不易的成功来源于自信。

八、视野(Vision )


在软件开发行业中,开发者经常会在小项目上花费很长时间,虽然很集中,但很容易迷失方向,而忽略对系统其他部分的影响。好的开发者在技能上应该眼观大局,根据现状有预见性地作出判断。

九、懒惰(Lazyness )


这个听来很愚蠢,懒惰应该摆在首要位置,但并非如此,懒惰导致了许多改进。最重要的是懒惰导致了许多自动化。每次当你成功拒绝手动而采用自动,或许你已经获得了改进。

自动化是通向完美无缺、高效及进步的关键。完美无缺,因为理想中的计算机是不会犯任何错误的(并不适用于每个方面),但是人类却容易产生错误。效率,从长远来看这是在投资节约时间。你越早使用自动化,越能节省时间。进步,每一次进步都会给做其它事情留些空间。

好的开发者太懒散以至于:

  • 编写完整的API文档,他让JavaDoc做这项工作;
  • 正确格式化代码,让IDE做这项工作;
  • 一遍一遍地测试功能,他使用单元测试进行自动化;
  • 遇到阅读复杂的方法,所以他利用好的命名编写简短易读的方法;
  • 重复编写同行代码,他需求方法来重构以避免这样呆板的代码,因为他太懒不想重复自己(DRY);
  • 没人要求实现该功能(适可而止_YAGNI原则)
  • 使用位运算和移位做减法运算,保持简单原则(KISS)
  • 让同事帮他别写代码(结对编程)

英文出自: Babdev

兰亭集势:被高估的“长尾式采购” 谁说WP手机不行?微软称已成拉丁美洲第二大移动平台 Windows 8之父Steven Sinofsky加盟风投机构A16Z SDCC 2013演讲议题抢先看 腾讯、阿里、支付宝、网易…… [开源推荐]Google开源基于Deep Learning的word2vec工具 【开源专访】DWZ团队:致力打造最简单的Web前端开发方式 Linux黑客车库创业:服务器操作系统CoreOS颠覆互联网 时间序列数据处理的角逐:MongoDB vs. Cassandra 移动周报:Sphinx游戏引擎的前世今生 联想K900评测:英特尔X86兼容性明显提升(组图) 小米手机-HAXLR8on硬件黑客马拉松:32小时的创客狂欢 鲍尔默宣布下台后,微软应该做好这几件事情 IGT张奇伟:从空间物理到博彩游戏研发 Bing即将推出新功能 用户可直接在搜索结果页购买商品 【开源专访】郑晔谈Moco框架的前世今生以及Java编程之道 CTO俱乐部第108期下午茶:电商在微信上的现状与未来 SDCC 2013讲师议题确定 门票即将售罄(图) 简化工作流程,10款必备的HTML5开发工具 六大领域考评鲍尔默微软掌舵能力,只一“C”尔? 剥离自雅虎的Hortonworks:低调发展,三年融资近1亿美元 Google的中国梦如何死于傲慢与不得力公关 [回顾]昨日黄花,那些被人们遗忘的11个操作系统 管理企业级API的7个最佳实践 Java 与 .NET 的平台发展之争 英特尔正在开发3D深度感知摄像头 可读出人类的情绪等 从数据平台到运营平台:国产开源移动统计Cobub Razor发布0.6版本 八月网络事故频现,CN域名遭最大规模网络攻击 Google云平台或将成为Amazon最大竞争对手 Camera360宣布完成1800万美元B轮融资 利用ZK Ajax框架 高效扩展Web App Web开发者需养成的8个好习惯 delphi连ACCESS怎么连,具体点。 一道有关类的习题 关于FORM使用的问题,请高手帮忙!!!!!!!!!! 有一个问题! ADOCommand 的问题 如何执行资源中的EXE文件!高手帮帮忙! 根据年份和月份得到天数? 水晶报表问题 请问用DELPHI做电子商务网有什么好书介绍? 数据库序列中表示当前值是???? 怎样通过数据库的内容,让复选框自动选择选上~~~~~~~~~是多选题来的~~~~ 青铜锁,情同锁 win2003接口问题 一个关于数据填加的问题! 我只有这30分了,一个高难度问题要向大家请教(关于创建及放弃)! 经常在别人的com代码里看到这段代码,做什么用的? 初学windows编程,有几点不明白的地方,请教各位 WinForm.cs(405,6): error CS0122: 不可访问“System.Windows.Forms.ProgressBar.value”,因为它受保护级别限制!!!!!这个错误提示 win2000server问题 那位大虾讲解一下,weblogic+jbuilder7+oracle的整合。给分 恢复数据库,怎样将数据库的连接全部断开? 请问西门子的哪些款手机可以直接识别AT指令?(在线等,马上给分) SQL SERVER数据库,这个语句太复杂了,实在头疼,谁能帮帮我啊 JSP连接DB2的问题 如何在WORD中发信??求助ing ... 一个关于对话框的问题。 《最后一颗子弹留给我》连载 = = = 有请江西的朋友进来一述 = = = 请问用代码如何实现以下批处理功能? 错误,着急! jsp与那个数据库是最好的搭配啊??? 倡导成产手机爱好者与自由开发者协会 在存储过程中能对数组进行操作吗? pb连接access的问题 我要把控制字符发给打印机,让他打印...实验成功洒分100 我有个SQL语句,实在搞不定,请指教…… 如何动态开内存 关于图片存储的问题 Lablel控件上显示的文本可以竖排,如何使QRlabel控件上显示的文本竖排 大家请进来看看吧,我实在没有多少分了,火烧眉毛了! 如何用双重循环实现表格中列的控制。 笑话 我想知道里面的内幕! 这个问题谁能解决阿?VB传C#中文乱码!!!!!!!!!!!!!!!!!!!!!!!!!!!! 请大家帮忙 如何将ASP连接指向服务器端的sql server数据库 如何将Cctrllist的图标拖出来显示。。 [评论]中国人又毁了二个优秀的编程工具! 编译问题 datawindow与存储过程问题! 一个sql server 2000置疑问题 鸟脚类恐龙吃什么?、 鸟喜欢吃什么? 英语翻译1.熟悉windows操作系统以及office Internet互联网的基本操作,获得全国计算机一级证书2.熟练掌握国际经济与贸易的基本知识和技能,通晓贸易实务和物流运作流程,获得国际贸易跟单员资 为什么空气因为包含水分等一些其他物质导致行程了导体,这样就很容易导致电池放电呢?请问一楼 电流是从电池正极流出——空气——水——电池负极,这样可以通路吗?为什么? 怎么追妹子,哈哈 怎么追妹子?宅男一枚,求指教 怎么追妹子比较好 三菱变频器 E.OLF是什么意思 在进行直流系统输出回路压降测量时,考虑到蓄电池组放电端压变化的特点,我们可以采取什么措施? 三菱变频器a700报警 e.ov2怎么处理 测量电池极柱压降时为什么要关掉整流器让蓄电池组单独放电 日本学生12万粒杏仁膏立体再现法国印调查指澳洲侨民向往亚洲 首选泰国、中澳大利亚捐精人数下降 从海外进口满足全球首辆太阳能家用车亮相 未来或大量澳大利亚警方追捕偷车贼 路过少年被无调查报告称澳移民目的地开始从欧美转向泰国国会再开赦免法案审议 政治博弈错加拿大女子相亲网站“钓男人”吃免费餐日本内阁法制局长官:日本变更宪法解释马尔代夫新总统难产 官方不满联合国指背景资料:俄乌天然气之争的背后盆地两重天东边暴晒西边暴雨三新股今日上市13位牛散11亿网下打韩寒:我本来是要反“鸡汤”!儿子吸毒父亲将其扭送到公安机关国际民航业呼吁确保航运安全洋盘了刷下登机牌就能上飞机7月30日掘金机构龙虎榜点评:女乘客表示将起诉多部门联动展开“清洁水源”行动逐步取消非行政许可审批事项父母相继离世 华西阳光助学帮19岁学
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘