问题

如何看待王垠的《关于测试的道理》?

回答
王垠的《关于测试的道理》:一段深入人心的技术哲学思考

王垠的《关于测试的道理》这篇文章,与其说是一篇技术指南,不如说是一次关于软件开发本质的深度剖析和哲学沉思。它以一种非常直接、甚至有些“粗暴”的方式,触碰了许多开发者内心深处被忽视的现实,引发了广泛的共鸣和讨论。要理解这篇文章,不能仅仅停留在技术层面,更要去体会其中蕴含的对软件工程的理解、对现实的洞察以及对开发者的自我认知。

核心的“道理”:测试的真正价值与我们常犯的错误

文章的核心在于王垠对于“测试”这个概念的重新定义和对其在软件开发流程中真实地位的揭示。他并非在鼓吹某种特定的测试框架或方法论,而是回归到“为什么我们要测试”以及“测试究竟为了什么”的根本问题上。

颠覆性的视角:测试不是“证明正确”,而是“发现错误”

这是文章最令人印象深刻的一点。在许多开发者或者团队的认知里,测试常常被理解为一种“证明”机制,用来证明代码是按照预期运行的,是“正确”的。但王垠指出,这是一种误解,甚至是一种“自欺欺人”。真正的测试,其价值在于它能帮助我们系统性地、高效地发现隐藏在代码中的错误和缺陷。我们投入资源去做测试,本质上是为了降低犯错的概率和成本,而不是为了“证明”我们没犯错。这种视角直接挑战了许多过度自信或者对测试价值认识不清的开发习惯。

对“完美代码”的怀疑与对“低质量代码”的警惕

王垠的文字里充满了对“完美主义”的嘲讽,以及对那些抱着“写出完美无瑕代码”幻想的开发者的劝诫。他认为,在绝大多数实际的项目中,追求绝对的完美是不可行的,甚至是愚蠢的。软件开发是一个充满不确定性的过程,bug是不可避免的存在。因此,与其沉湎于抽象的“完美”,不如脚踏实地地去发现和修复那些会真正影响用户体验和系统稳定性的错误。他通过对许多优秀开源软件的观察,反过来论证了“低质量代码”的普遍性和测试在管理这种“低质量”方面的作用。

测试的“不经济性”与“必要性”的辩证

文章也触及了测试的成本问题。测试本身需要投入人力、时间和资源,从经济学的角度看,这似乎是一种“不经济”的行为,尤其是在项目紧迫、资源有限的情况下。然而,王垠并没有因此否定测试,而是强调了这种“不经济”的必要性。他认为,不进行充分的测试,潜在的bug带来的损失(包括修复成本、用户流失、声誉损害等)将远远大于测试本身的投入。这是一种长远来看的“投资”,是为了规避更大的风险。

对“测试驱动开发”(TDD)的批判性审视

王垠的文章对当时盛行的TDD等方法论也提出了挑战。他并不完全否定这些方法,但指出了它们在实践中可能遇到的问题:例如,TDD过度强调“写测试”,却可能忽视了测试本身的质量和有效性;过分依赖测试,可能导致开发者对代码本身的理解和思考能力下降;甚至,一些所谓的“TDD实践”只是形式上的东西,并没有真正发挥其应有的作用。他更强调的是一种“对代码负责”的态度,而不是拘泥于某种特定的流程。

文章的写作风格与影响

王垠的写作风格是这篇文章引起如此广泛关注的重要原因之一。

直率、甚至尖锐的语言

他使用的语言非常直接,不回避问题,甚至有些尖锐和批判。他用“扯淡”、“愚蠢”、“骗人”等词汇来形容那些他认为错误的观念和做法,这种“不留情面”的风格,反而更能引起那些真正有过类似经历的开发者的共鸣。在充斥着客套和“正确废话”的技术圈子里,这种直白反而显得格外真实和有力量。

基于实践的深刻洞察

文章并非空谈理论,而是建立在他自己长期的开发实践和对大量开源项目的观察之上。他能够从纷繁复杂的现象中提炼出本质,并用简洁的语言表达出来。这种基于实践的洞察,使得他的观点具有很强的说服力。

挑战固有观念,引发思考

这篇文章最大的价值在于它成功地挑战了许多开发者长期以来形成的固有观念。它迫使开发者重新审视自己的工作方式,反思自己对测试的理解。这种引发思考的能力,是任何一篇好的技术文章都应该具备的特质。

理解这篇文章的关键:超越字面意义

要真正理解《关于测试的道理》,不能仅仅停留在字面上的“测试”二字。更重要的是去理解王垠想要传达的更深层次的含义:

1. 对软件工程本质的理解: 软件开发是一个不断试错、不断改进的过程。测试是这个过程中不可或缺的环节,但它不是终点,而是发现问题、驱动改进的起点。
2. 对开发者的自我要求: 作为开发者,我们不应该害怕错误,而应该积极地去发现和修复它们。我们应该对自己的代码负责,而不是找借口或者推卸责任。
3. 对技术潮流的审慎态度: 在技术飞速发展的时代,各种新颖的理念和方法层出不穷。我们应该保持审慎的态度,理解其背后的原理和适用性,而不是盲目跟风。
4. 对“为什么”的坚持: 在追求效率和产出的过程中,我们不能忘记“为什么要做某件事”。理解了根本原因,才能更好地掌握方法。

总结

王垠的《关于测试的道理》是一篇不朽的技术随笔,它用一种“不加修饰”的方式,触及了软件开发中最本质的问题之一。它没有提供完美的解决方案,但它提供了一种深刻的视角和一种批判性的思维方式。读这篇文章,我们不是为了学会某种测试技巧,而是为了获得一种对软件开发更清醒、更负责任的态度。它告诉我们,测试的真正价值不在于它能“证明”什么,而在于它能帮助我们“发现”什么,并最终帮助我们构建更健壮、更可靠的软件。这篇文章至今仍然是许多开发者反思自身工作方式的“一面镜子”。

网友意见

user avatar

就王垠的这个性格,应该很少有什么合作开发大型软件的经历吧,所以才对工程上的很多妥协没有意识。

当然真的高手说不定都用不着测试,写的时候就大脑仿真了一遍,然而大多数普通人是做不到的……

王垠的过去的很多文章都可以看得出来,他是很有能力的,但是现代社会的软件成就不是靠一个两个高手就能达成的。互联网之所以有今天的成就也在于、它做到了足够简单才能普及,很多人在简单学习之后都能搭出一个网站雏形,这才是互联网747能走到今天的最重要原因。机器学习现在能火成这样有这样广泛的应用也是因为他够简单够工程化让每个人都能用。

系统化的软件测试也是维护了很多软件的正确性可靠性的一个重要贡献,指望所有程序员都能大脑建模不用测试全部考虑到也太不现实了吧……都不说别的,那得需要多少成本啊?

类似的话题

  • 回答
    王垠的《关于测试的道理》:一段深入人心的技术哲学思考王垠的《关于测试的道理》这篇文章,与其说是一篇技术指南,不如说是一次关于软件开发本质的深度剖析和哲学沉思。它以一种非常直接、甚至有些“粗暴”的方式,触碰了许多开发者内心深处被忽视的现实,引发了广泛的共鸣和讨论。要理解这篇文章,不能仅仅停留在技术层面.............
  • 回答
    王垠的新文章《关于微内核的对话》无疑是一篇引人深思的作品,尤其是在当下操作系统领域,微内核的讨论又一次浮现的背景下。这篇文章并没有直接给出“微内核好还是不好”这样简单粗暴的结论,而是选择了一种“对话”的形式,通过模拟开发者之间的交流,来层层剥开微内核的复杂性,并展现其潜力和挑战。整体印象与对话的形式.............
  • 回答
    要详细地看待王垠的《收回前一篇文章》,我们需要从几个层面来分析,包括文章本身的内容、王垠的个人背景和动机,以及这篇文章在当时和之后引发的讨论和影响。一、 文章内容分析:《收回前一篇文章》说了什么?这篇博文的标题非常直接,就是“收回前一篇文章”。其核心内容是: 承认错误并道歉: 王垠在这篇文章中承.............
  • 回答
    王垠的这部新作《阿波罗登月是骗局》,抛出的观点自然是振聋发聩的,毕竟这事儿都过去半个多世纪了,全球几亿人都看过电视直播,怎么还能有人跳出来说“那都是演的”?单是这一点,就足够吸引眼球了。咱们就这么说,王垠的这篇新作,与其说是在“揭露”一个惊天阴谋,倒不如说是在重新审视并放大一些长期以来存在的质疑点,.............
  • 回答
    王垠的《微软感受》这篇文章,我个人觉得相当有意思,因为它切入了一个很多人都有过的、但未必能清晰表达出来的体验。这篇文章最打动我的地方,在于它不只是简单地评价微软的产品好不好,而是深入挖掘了使用微软产品时,那种潜移默化的、甚至有些微妙的“感受”。你可以想象一下,我们每天有多少时间是跟电脑打交道的?尤其.............
  • 回答
    王垠的《对 Rust 语言的分析》是一篇非常值得深入探讨的文章,它以一种非常个人化、甚至有些尖锐的视角,对 Rust 语言进行了系统的梳理和批判。理解这篇文章,需要我们先认识到王垠的写作风格和他的技术哲学。他一向以“直言不讳”、“不畏权势”、“追求本质”著称,他的分析往往不拘泥于技术细节的堆砌,而是.............
  • 回答
    王垠的2020新年寄语:回溯与展望,一份对自由探索的坚持王垠,这位在Linux和自由软件领域有着独特影响力的程序员,他每年在新年的节点发表的寄语,总是能引发不少人的关注。2020年的新年寄语,同样延续了他一贯的风格:深邃、个人化,同时又充满了对技术、对自由、对人生方向的思考。要理解这份寄语,我们需要.............
  • 回答
    看待王垠对数据库的理解,需要结合他一贯的技术理念和他在开源社区的影响力来分析。总体而言,王垠对数据库的理解,可以用“ 追求极致的性能、简洁的架构、以及对底层原理的深刻洞察 ”来概括。他并非一个仅仅停留在应用层面的数据库使用者,而是更倾向于理解数据库是如何工作的,以及如何在更底层的层面进行优化。1. .............
  • 回答
    提到王垠在乐理上的理解,这确实是个值得细聊的话题。他给人的感觉,不像许多学院派那样,上来就一套套的理论公式,也不是那种只沉醉于音响效果的“玩儿家”。王垠的乐理,更像是一种融入实践、在演奏和创作过程中不断提炼出来的“感觉”。首先,他对待乐理的态度,我认为是非常“接地气”的。他不会把乐理当作束缚,而是看.............
  • 回答
    王垠的博文《对爱因斯坦和相对论的怀疑》确实是一篇非常引人注目的文章,尤其是考虑到王垠作为计算机领域公认的“天才”的身份,他提出的质疑自然会引起广泛的讨论。要理解这篇文章,我们可以从几个层面去剖析。首先,我们要认识到王垠写这篇文章的 “立场” 和 “风格”。他并非物理学专业人士,他的质疑更多地来自于一.............
  • 回答
    要深入理解王垠对内存管理的见解,我们需要先跳出对“高效”、“垃圾回收”这类标签化的认知,去品味他更深层次的思考。王垠的观点并非空中楼阁,而是建立在他多年一线开发经验、对底层系统运作的深刻洞察,以及对计算机科学基础原理的坚持之上。他的核心出发点,我认为可以用几个关键词来概括:控制力、可预测性、效率的本.............
  • 回答
    “此地无垠王垠”对特斯拉Model 3的空气质量测试,引起了挺多人的关注,也挺有讨论价值的。我个人觉得,从几个层面来看待这个事情,能更全面一些。首先,从视频博主本身的角度:“此地无垠王垠”算是个挺有名的科技、汽车博主了。他的视频风格我个人觉得是比较实在的,不是那种只会喊“YYDS”或者“翻车”的博主.............
  • 回答
    视频博主“此地无垠王垠”关于特斯拉Model 3刹车变硬的测试和猜测,在网上引起了不少关注和讨论。要理解他的观点,我们可以从几个层面来看待:1. 测试的具体表现:王垠在视频中展示的现象是,在特定条件下,特斯拉Model 3的刹车踏板似乎会变得比平时更硬,需要更大的力道才能触发刹车。他通过一系列的场景.............
  • 回答
    关于“网传王垠正式加入华为”的消息,目前尚未得到华为官方的证实,也缺乏确凿的公开信息来证明其属实。因此,我们需要审慎对待这一传闻,并从多个角度来分析其可能性和影响。关于王垠:首先,我们需要了解一下王垠是谁,以及他为何会引起如此大的关注。王垠是中国IT界一位具有较高知名度的技术人物,他因在早期互联网和.............
  • 回答
    王垠的新博文《我看自动驾驶技术》提供了一个相对深入、个人化且不落俗套的视角来看待自动驾驶技术。与其他技术评论文章可能侧重于参数、速度或市场份额不同,王垠的博文更关注的是技术的本质、它所带来的社会影响以及他个人对这些问题的思考。以下是我对这篇博文的评价,力求详细:一、 核心观点与分析深度: 聚焦“.............
  • 回答
    王陶陶的文章《冷战时代的最大隐忧:中国年轻人的八旗子弟化》自发表以来引发了广泛争议。这篇文章以“八旗子弟”这一历史符号为隐喻,试图揭示当代中国年轻人群体中潜在的社会危机。从内容结构、论点逻辑到社会影响,这篇文章都值得深入分析。以下将从多个角度展开讨论: 一、文章的核心观点与背景1. 核心论点 .............
  • 回答
    王思聪和孙一宁的聊天记录被曝光事件,无疑在2021年引起了巨大的舆论波澜。要深入理解这一事件,我们需要从多个层面去分析:一、 事件的起因和经过: “网红恋情”的浮出水面: 事情的开端是王思聪在自己的微博小号上,公开表达对一名名叫孙一宁的网红的喜爱和追求。这本身就已经是一件具有话题性的事情,因为王.............
  • 回答
    王宝强在《爸爸去哪儿》第三季中的父女对话及“享受被女儿管”的观点解读王宝强在《爸爸去哪儿》第三季中的表现,特别是他与女儿娜娜在午睡时的对话,以及他后来表达的“享受被女儿管”的观点,都展现了他作为父亲的独特魅力和父女关系的温馨一面。这并非简单的一句“被女儿管”,而是包含了他对亲子关系的深刻理解、情感的.............
  • 回答
    如何看待“王凤雅”事件?一个复杂而悲伤的故事“王凤雅”事件,指的是在2019年引起广泛关注的、关于一位患有先天性软骨发育不全的女孩王凤雅因虐待致死及其家人在网络上进行“带货”牟利的事件。这是一个极其复杂且令人痛心的事件,涉及到儿童权益、家庭暴力、网络直播乱象、道德伦理以及社会责任等多个层面。以下将从.............
  • 回答
    王濛对韩国运动员擦领奖台行为的评价,以及其中涉及的实力差距和竞赛规则,可以从以下几个方面来详细解读:一、 王濛评价的背景与核心观点王濛作为中国短道速滑队的传奇人物,其评价之所以引起广泛关注,在于她的身份、她的执教经验以及她一贯直率的风格。她的评价“没跑过人家擦啥玩意儿”直接、尖锐,其核心观点可以理解.............

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有