zoukankan      html  css  js  c++  java
  • 为什么程序员发现不了自己的BUG

    作为开发就和我们成人一样看到问题总是以自己的世界观来理解,导致理所当然的就这样就对了,而真正真相就被隐藏了。

    最近在朋友圈流行了这样的一张小学数学题,当然结果是“出乎意料”,看似简单的结果,几乎很少有人作对,而分析下来的原因无非是惯性思维下的粗心导致完全错误,那么云层带大家分析下思考过程。

    4418040-b4664195748e7606

    看图可知,猫=X 猫头=Y 猫爪=Z 既

    3X=30

    X+Y+Y=20

    Y+Z+Z=9

    所以X=10 Y=5 Z=2

    故结果 Y+Z+X=5+2+10=17

    4418040-73608e65bfcbf9ee

    一般大多数的第一结果可能都是这样!等等,注意最后一个应该是Y+Z*X=?

    心中一百只草泥马奔过,再算一遍

    Y+Z*X=5+2*10=25

    4418040-95f0c3fec3029594

    对不起还是错的,因为猫爪从2只

    4418040-bbb7d7e80b6ce93e

    变成了1只

    4418040-47b8902466fc697c

    所以应该是 Y+Z/2*X= ?心中一千只草泥马奔过,再算一次

    Y+Z/2*X=5+2/2*10=15

    4418040-6437cda60c15e7cf

    对不起还是错的,因为最后一只猫少一个爪子,所以应该是Y+Z/2*(X-Z/2)=?

    4418040-09600079c1f276ab

    心中一万只草泥马奔过,再算一次

    Y+Z/2*(X-Z/2)=5+2/2*(10-2/2)=14

    4418040-bdc59b33687fdc77

    其实大家会发现这个题目非常的“坑爹”,不就是故意折腾人么,但是在很多系统中,开发看到测试提出的Bug也是这样的感觉。作为开发就和我们成人一样看到问题总是以自己的世界观来理解,导致理所当然的就这样就对了,而真正真相就被隐藏了。

    而儿童一般能够做对的原因是,老师有引导性的提示细心的重要性并且长期踩雷。这也是测试人员和开发人员的区别之一,

    现在知道为啥测试不是谁都能做的工作了吧,开发也为啥找不到BUG了吧。

  • 相关阅读:
    EfCore基本用法
    C#笔试题目总结
    LINQ
    markdown 语法
    打造一款 刷Java 知识的小程序(二)
    为了考PMP,我做了一个刷题小程序
    30分钟全面解析-SQL事务+隔离级别+阻塞+死锁
    反制面试官 | 14张原理图 | 再也不怕被问 volatile!
    50+道大厂JVM面试题 + 11张思维导图就是让你懂JVM~
    【从零开始用Swift开发一个iOS应用(仿微博)】开篇-1. demo上手体验
  • 原文地址:https://www.cnblogs.com/hgmyz/p/12352565.html
Copyright © 2011-2022 走看看