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

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

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

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


当前回答

在初中学习算法的时候,我认为NPC只是一个非多项式问题,这意味着这个问题的复杂性并不比多项式简单。直到我在大学里学了计算理论,我才意识到我错了

其他回答

认为自己对编程中的某种语言/主题了如指掌。根本不可能。

作为一个新手,我有一个假设,在这个领域工作多年的人自然是更好的开发人员。

:

for (int i = 0; i < myObj.variable; i = i + 1)

优化为:

int j = myObj.variable; 
for (int i = 0; i < j; i = i + 1)

哇,当我意识到它们每次都在运行时,我停止在j的地方放入函数调用!

原因:

for (int i = 0; i < myObj.variable; i = i + 1){ 
    if (function_argument == NULL){ 
        myObj.variable++; 
    } else { 
        printf("%d", myObj.variable);
    }
}

并不等同于:

int j = myObj.variable;
for (int i = 0; i < j; i = i + 1){ 
    if (function_argument == NULL){ 
        myObj.variable++; 
    } else { 
        printf("%d", myObj.variable);
    }
}

任意的例子,但是您可以看到优化将如何改变执行。

“On Error Resume Next”是某种错误处理

我是一个优秀的程序员!