自媒体论坛 - 专注于自媒体推广|营销|博客|网创|副业的自媒体论坛

标题: 急功近利的开发人员 VS 止步不前的开发人员 [打印本页]

作者: zijuexi    时间: 2017-3-15 14:56
标题: 急功近利的开发人员 VS 止步不前的开发人员



  在为了闲适安逸(相对而言)和金钱财富离开硬件领域,进入软件行业之前,我最早的一份工程师工作是关于芯片设计的。我还记得,当我了解到有多少有问题的处理器被用于测试电路时,我有多震惊。“为什么要浪费这么多处理器在测试上,”当时我想,“为什么我们不能最开始就把它弄对了?”哦,当时我可真是好傻好天真。


  工程师的实际工作很快就会教会一个人:除了氢元素以外,这个世界最不缺的就是对于人们最初设想的嘲弄。甚至在种种变幻莫测的现实状况都已经被“理想状况下”几个字排除的软件行业,这也是一道铁律。墨菲定律实际上是一种很乐观主义的说法:事实上,并不是任何事情都有可能出错——你通常会碰到一些此前你没想到和你的问题有关的因素,而这些因素往往会引发一连串让你追悔莫及的灾难。


  那么,我们该怎么做呢?我们可以深入全面地采取一系列防卫措施。我们遵循“稳健性原则”(robustnessprinciple,又称“鲁棒性原则”、“健壮性原则”)。我们“总是假设那些让你无法继续维护代码的人是知道你住在哪儿的暴力精神病患者,并以此为先决条件进行编码”。我们采取敏捷开发方式(是真的敏捷开发,而不是那种知其然而不知其所以然的敏捷开发)。最重要的是,我们编写测试。对吧?没错吧?


  ……唔,没错,就是这样。在软件工程公司HappyFunCorp工作的时候,我每天都会进行大量的面试,几乎我面试的每一个初级开发人员都会向我保证,他们非常热衷于测试。但是同样,在软件工程公司HappyFunCorp工作的时候,我也常常被叫去帮忙解救那些带着现有代码库来找我们的客户——你知道我在这些案例中很少看到什么吗?没错,就是有用的、更新过的测试。


  我没必要责备他们。或许在你看来,现在的网页开发很糟糕,就像现在大多数工具/服务器开发一样;现在的应用程序开发(尤其是安卓应用的开发)也简直可以说是一团乱……老板/顾客总是在催促开发者更快地开发、更新软件,而要是我们得省略某些环节以便更快地完成开发,我们通常第一个选择舍弃的就是测试环节。


  当然,每个人都可以指责说,这种方式或许从短期来看可以帮助你节省一个礼拜的时间,但是要不了多久,接踵而来的麻烦就会浪费你好几个月的时间。没错,事实确实如此。但是,有一个原因让许多开发者产生了对测试敬而远之的心态:糟糕的测试环节造成的影响几乎和没有测试环节一样恶劣,有时甚至比没有测试环节更加恶劣。甚至在初级开发人员确实打算编写测试的时候,他们也会把测试编写环节当成看牙医——他们会把编写测试当成某种痛苦不堪的任务,尽可能快地去解决它。因此,他们会利用某种似乎能够用于任何他们正在使用的结构框架的测试工具,编写——或者自动生成——一些单元测试,结束测试编写,继续下一环节。


  啊哈,单元测试。


  2个单元测试,0个综合测试pic.twitter.com/V2Z9F4G1sJ


  ——PracticalDeveloper(@ThePracticalDev),2016年1月14日。


  单元测试会把你的整个项目弄得乱七八糟,增加项目的认知负荷,创造代码变化时需要改变的相关数据……当然,它也能找到一些编写得非常好的端对端综合测试找不出的程序错误,但是,这种情况出现得太少了。当然了,如果你在编写一个自动驾驶仪的程序,你肯定希望程序的代码覆盖率能达到100%。但是,我们绝不应该假装这些测试没有隐含成本(包括短期的和长期的)。就像许多工程工作一样,这是一种权衡、一种对最有效点的搜寻。而对大多数项目来说,最好的测试方式显然并非最全面的测试。


  而“端对端”测试的定义通常很灵活。众所周知,自动化用户界面测试是非常困难的。根据我的经验,自动化用户界面测试的存在可能非常令人印象深刻,但是它的实际作用却很有限,就像会做算数的狗狗一样。因此,我们很难将一个端对端测试用于某个一开始就不是其测试对象的网站、服务或者应用程序。(不过,至少负载测试这些年来已经变得简单易用多了,比如loader.io就特别棒)。


  我面试时碰到的高级开发者往往会表现出一种谨慎的态度——因为他们知道他们要说的话听上去像是异端邪说——他们会说:“唔,测试是很重要,但是你在考虑测试的时候得务实一点。”是的,事实确实如此。


  现如今,从事开发工作就像是在享用餐品火候不足的自助餐——今天你想使用哪种有缺陷的半成熟框架?但说到底,许多开发人员之所以不编写测试,或者编写一些不走心的单元测试,原因在于心态而非素材。


  目前,有许多开发团队把自己称之为“敏捷开发”团队。但真正的敏捷开发团队很少。(居然有那么多人认为只要每天都开会他们就是一个敏捷开发团队了,天哪,我简直要哭了。)正如SauceLabs发布的这份测试现状报告(PDF版)所言,作为一个行业,我们还有很长的路要走。(我不同意这份报告对于敏捷开发的定义——我不同意对敏捷开发下任何固定的定义——不过,这份报告指出的整体趋势在我看来是正确的。)


  迷途的开发者们省略了某些环节,只一心想着尽快开发出成品;他们没能设计测试、没能编写测试,他们把这些隐藏在冰面下的问题抛给了下一位可怜的开发者。批评谴责这些开发人员很容易,而且也没批评错。但是,我们也应该看到,这些开发人员尽快开发出成品、尽快有所突破的迫切渴望有其值得赞扬的一面——虽说在某些极端情况下,这可能会致使开发人员大量使用开源脚本语言。(开玩笑的啦。)


  另外,还有一些固步自封的开发者看重深思熟虑、细致分析和测试驱动开发,说起各色理论来头头是道。可是,粗制滥造出没有意义的单元测试的往往也是这群人——因为这样一来,他们就可以宣称他们的代码覆盖率高达90%了。他们会为了获得“认证的敏捷项目管理专家”(CertifiedScrumMasters)的称号而抛弃真正的敏捷开发习惯。他们害怕冒险,害怕进入未知的领域。批评谴责这些人倒也没有批评错。


  一个理想的世界应该既有一心只想着尽快开发出新产品的开发人员,也有固步自封的开发人员,他们会彼此推动,共同进步。我曾在好几个这样运作的团队里工作过,他们都非常优秀。但如今更常见的情况是,这两类开发人员只是互相说些空话。我本来是觉得,作为一个行业,我们现如今的发展状况应该更好才对。


作者: 羊咩咩    时间: 2017-3-22 09:44
HOHO~~~~~~  
作者: xuling9912h    时间: 2017-3-22 09:44
谢谢哦  
作者: 13047415881    时间: 2017-3-22 09:44
问渠哪得清如许,为有源头活水来。  
作者: kitty    时间: 2017-4-24 03:41
晕  不信啊  
作者: wingboy    时间: 2017-9-25 14:10
不错,看看。  
作者: 阿文哥    时间: 2017-9-25 14:10
不错的东西  持续关注  
作者: xl6001b    时间: 2017-10-25 17:00
爷爷都是从孙子走过来的。  
作者: 一笑而过    时间: 2017-11-5 01:41
哈哈,看的人少,回一下  
作者: xl19637b    时间: 2017-11-16 02:42
好人一个  
作者: xl15469b    时间: 2017-12-7 17:55
晕  不信啊  
作者: xl0453b    时间: 2017-12-7 17:55
声明一下:本人看贴和回贴的规则,好贴必看,精华贴必回。  
作者: xuling2055h    时间: 2017-12-7 17:55
哈哈,看的人少,回一下  
作者: zombie186    时间: 2017-12-16 18:57
谢谢分享了!  
作者: xl17690b    时间: 2017-12-16 18:57
楼上的稍等啦  
作者: xl24810b    时间: 2017-12-16 18:57
鉴定完毕.!  
作者: wuyuwei    时间: 2017-12-16 18:57
希望大家都有好运  
作者: xl25816b    时间: 2017-12-27 10:55
初来乍到,请多多关照。。。  
作者: cdcjrdd    时间: 2017-12-27 10:55
一个子 没看懂  
作者: xl15853b    时间: 2017-12-27 10:55
活着,以死的姿态……  
作者: 天津一汽    时间: 2022-4-2 15:41
谢谢楼主啊!
作者: 930349581    时间: 2022-4-2 15:41
初来乍到,请多多关照。。。  
作者: xl1453b    时间: 2022-4-2 15:41
去市场买东西,杀价先杀四分之三,现在杀一半行不通了。  
作者: xl15988b    时间: 2022-4-2 15:41
一个鸡蛋跑到青藏高原,结果它变成了氢弹;  
作者: eexopip    时间: 2022-4-28 23:50
支持你一下下。。  
作者: xl10415b    时间: 2022-4-28 23:50
慢慢来,呵呵  
作者: xuling5834h    时间: 2022-4-28 23:50
你喜欢贴子还是发贴子的人  
作者: xl13166b    时间: 2022-4-28 23:50
我有家的感觉~~你知道吗  
作者: 祝英台    时间: 2022-4-28 23:50
要相信自己~智商为0  
作者: utajipvozavom    时间: 2022-6-13 00:14
我也来顶一下..  
作者: oyileubowp    时间: 2022-6-13 00:14
好帖子,要顶!
作者: xl24411b    时间: 2022-6-13 00:14
有才的不在少数啊  
作者: agewinamiqobo    时间: 2022-6-13 00:14
支持你就顶你  
作者: 东莞均少    时间: 2022-6-13 00:14
我回不回呢 考虑再三 还是不回了吧 ^_^  
作者: xuling8312h    时间: 2022-7-12 07:20
长时间没来看了 ~~  
作者: xl9052b    时间: 2022-7-12 07:20
支持~~  
作者: xl15716b    时间: 2022-7-12 07:20
好啊,,不错、、、、  
作者: seeksoft    时间: 2022-8-6 06:58
初来乍到,请多多关照。。。嘿嘿,回个贴表明我来过。  
作者: trudeau    时间: 2022-8-6 06:58
我毫不犹豫地把楼主的这个帖子收藏了  
作者: 暮夏-Gentle°    时间: 2022-8-6 06:58
都是那么过来的  
作者: seeksoft    时间: 2022-8-6 06:58
我假装认真地工作,老板假装认真地付薪水  
作者: xl22946b    时间: 2022-8-7 02:38
回贴赚学识,不错了  
作者: zgzm    时间: 2022-8-7 02:38
楼主good  
作者: iputuizeacu    时间: 2022-8-7 02:38
来几句吧  
作者: 烟波    时间: 2022-8-10 21:11
一个人最大的破产是绝望,最大的资产是希望。  
作者: xl25425b    时间: 2022-8-10 21:11
我在顶贴~!~  
作者: 卡巴mulala    时间: 2022-8-17 17:10
支持你加分  
作者: xxb200341    时间: 2022-8-17 17:10
我该不会是最后一个顶的吧  
作者: xuling11036h    时间: 2022-8-17 17:10
没人理我。。。。  
作者: 老虎仔    时间: 2022-8-17 17:10
希望大家帮我把这个帖发给你身边的人,谢谢!  
作者: xuling9241h    时间: 2022-8-20 12:17
先看看怎么样!  
作者: 快乐时光    时间: 2022-8-20 12:17
自己知道了  
作者: SergioMalm    时间: 2022-8-20 12:17
不错!  
作者: ┋黑洞└    时间: 2022-8-20 12:17
帮你项项吧  
作者: xl17833b    时间: 2022-10-17 19:48
不错不错.,..我喜欢  
作者: 璎珞    时间: 2022-10-17 19:48
看完了这么强的文章,我想说点什么,但是又不知道说什么好,想来想去只想  
作者: zjs123456    时间: 2022-10-17 19:48
给我一个女人,我可以创造一个民族;给我一瓶酒,我可以带领他们征服全世界 。。。。。。。。。  
作者: xuling5010h    时间: 2022-10-17 19:48
感谢党和人民的关爱~~~  
作者: xuling9575h    时间: 2022-12-3 11:45
哈哈,顶你了哦.  
作者: eqarogi    时间: 2022-12-10 11:19
看或者不看,贴子就在这里,不急不忙  
作者: xl5272b    时间: 2022-12-10 11:19
一定要回贴,因为我是文明人哦  
作者: xl17889b    时间: 2022-12-11 09:20
一定要回贴,因为我是文明人哦  
作者: xl22207b    时间: 2022-12-11 09:20
其实回帖算是一种没德德,所以我快成圣人了  
作者: esipuqusu    时间: 2022-12-11 09:20
先看看怎么样!  
作者: 我是鱼    时间: 2023-1-15 11:59
站个位在说  
作者: zovabumi    时间: 2023-1-15 11:59
我不是随便的人。我随便起来不是人  
作者: xuling10163h    时间: 2023-1-24 09:37
文笔流畅,修辞得体,深得魏晋诸朝遗风,更将唐风宋骨发扬得入木三分,能在有生之年看见楼主的这个帖子。实在是我三生之幸啊。  
作者: xuling10163h    时间: 2023-1-24 09:37
哎 怎么说那~~  
作者: toyota716    时间: 2023-2-19 08:26
这个贴不错!!!!!  
作者: ekuulivamop    时间: 2023-2-19 08:26
似曾相识的感觉  
作者: xuling9850h    时间: 2023-2-19 08:26
越办越好~~~~~~~~~`  
作者: uhrafirehaka    时间: 2023-3-7 08:39
回个帖子支持一下!
作者: nhstbq    时间: 2023-3-7 08:39
饭可以乱吃,话也可以乱说,但贴子不可以乱发哦  
作者: xl2802b    时间: 2023-3-25 09:22
晕死也不多加点分  
作者: rizigoneunag    时间: 2023-3-25 09:22
不错啊! 一个字牛啊!  
作者: xl6616b    时间: 2023-3-25 09:22
想都不想,就支持一下  
作者: xuling1891h    时间: 2023-3-25 09:22
也许似乎大概是,然而未必不见得。  
作者: xl13367b    时间: 2023-3-26 05:42
说的不错  
作者: xuling7277h    时间: 2023-3-26 05:42
挤在北京,给首都添麻烦了……  
作者: xl25275b    时间: 2023-5-6 01:15
谁能送我几分啊  
作者: owoyoxegesw    时间: 2023-5-6 01:15
顶.支持,路过.....  
作者: xl9149b    时间: 2023-6-26 03:54
不错,支持下  
作者: 放不低    时间: 2023-6-26 03:54
@,@..是什么意思呀?  
作者: xuling3906h    时间: 2023-6-26 03:54
我回不回呢 考虑再三 还是不回了吧 ^_^  
作者: xl11476b    时间: 2023-6-26 03:54
我不是你想象中的那样完美那样坚强,金钱和美女就足以把我征服!  
作者: xl4780b    时间: 2023-7-23 06:51
谢谢楼主啊!
作者: xl25161b    时间: 2023-7-23 06:51
不错,支持下  
作者: xl24792b    时间: 2023-8-15 23:32
其实回帖算是一种没德德,所以我快成圣人了  
作者: ufioqiiscedq    时间: 2023-8-15 23:32
希望可以用些时间了~````  
作者: cxwpf200    时间: 2023-8-15 23:32
人生感悟:牵手时,即使你的手有多汗,也别放开。  
作者: xl1631b    时间: 2023-8-23 09:36
回个帖子支持一下!
作者: xl25994b    时间: 2023-8-23 09:36
家财万贯还得回很多贴哦  
作者: xl8070b    时间: 2023-8-23 09:36
@,@..是什么意思呀?  
作者: xl0321b    时间: 2023-8-23 09:36
呵呵,等着就等着....  
作者: ucojlehayolk    时间: 2023-8-23 09:36
人之所以能,是相信能。  
作者: 火冰狐    时间: 2023-8-25 11:37
努力~~各位。。。  
作者: xuling7625h    时间: 2023-8-25 11:37
真好。。。。。。。。。  
作者: 风行者    时间: 2023-8-25 11:37
抢座位来了  
作者: xl23615b    时间: 2023-9-10 16:09
看完了这么强的文章,我想说点什么,但是又不知道说什么好,想来想去只想  
作者: webyi    时间: 2023-9-10 16:09
我想要`~  




欢迎光临 自媒体论坛 - 专注于自媒体推广|营销|博客|网创|副业的自媒体论坛 (http://www.zimeitibbs.com/) Powered by Discuz! X2.5