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

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

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

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


当前回答

我从没想过我会成为一名专业程序员,我以为我会从事电子工作。但最终,编程更容易,薪水也更高,所以最初的副业变成了我的主要工作。

其他回答

学习语言就是学习语法,以及标准库中最常见的部分。

所有面向对象语言都有相同的面向对象概念。

Java接口=方法的接口。 Java接口是针对需要具有多重继承的特定于语言的解决方案。Ruby的mixin尝试解决同样的问题。 Javascript中提供的开箱即用的继承与Java实现继承的方式非常不同。

这种编程是不可能的。

不是开玩笑的,我一直认为编程是一种不可能学会的东西,我总是远离它。当我接近代码的时候,我永远也无法理解它。

然后有一天,我坐下来阅读了一些基本的初学者教程,并从那里开始学习。现在我是一名程序员,我热爱工作的每一分钟。

另外,我认为编程并不容易,它是一个挑战,我更喜欢学习,没有什么比解决一些编程问题更有趣的了。

编程很简单。

在c++中,很长一段时间我都在想编译器在给纯虚方法定义时拒绝你。

当我意识到我错了时,我很吃惊。

很多次,当我告诉别人为其抽象类提供其纯虚析构函数的默认实现时,他/她都用大大的眼睛看着我。我知道接下来会有一场长时间的讨论……这似乎在c++初学者中是一个普遍的信念(我认为我自己也是如此)。我目前还在学习!)

Wikipedia链接到c++的纯虚拟方法