我正在对初级(也许是高级)软件工程师所犯的常见错误和错误假设进行一些研究。

你坚持时间最长、最终被纠正的假设是什么?

例如,我误解了整数的大小不是标准的,而是取决于语言和目标。说起来有点尴尬,但事实就是这样。

坦率地说;你有什么坚定的信念?你大概坚持了多长时间?它可以是关于一种算法、一种语言、一个编程概念、测试,或者任何关于编程、编程语言或计算机科学的东西。


当前回答

我持有时间最长(因此也是代价最大)的错误假设是:“业务需求是理智和合理的,我只是还没有理解它们。”

100个绿色假设坐在墙上, 如果一个绿色假设不小心掉了, 墙上有99个绿色假设。

交替:

胖墩儿坐在墙上。 矮胖子摔了一跤, 所有国王的马,所有国王的人, 艾菲姆说,他只是个技术人员。

其他回答

事实证明,在Linux下是否检查内存分配是否返回一个引用并不重要,因为它实际上会欺骗你,在未来的某个时候实际分配内存,或者如果它没有你需要的内存,就完全终止你的程序。

除了插入/冒泡排序之外,任何事情都是非常简单的黑魔法。

如果每一行都计算条件,如果你写这样的代码:

Dim a as Boolean = True
If a Then
    Console.WriteLine("1")
    a = False
    Console.WriteLine("2")
Else
    Console.WriteLine("3")
End If

那么输出将是:

1
3

Python是一种不切实际的、令人讨厌的语言(我仍然可以读到一些关于我早期代码的注释,抱怨它),而c++是唯一真正的面向对象语言。

我错得太离谱了,到现在还觉得羞愧。

一个函数/方法应该只有一个出口点。