我正在对初级(也许是高级)软件工程师所犯的常见错误和错误假设进行一些研究。
你坚持时间最长、最终被纠正的假设是什么?
例如,我误解了整数的大小不是标准的,而是取决于语言和目标。说起来有点尴尬,但事实就是这样。
坦率地说;你有什么坚定的信念?你大概坚持了多长时间?它可以是关于一种算法、一种语言、一个编程概念、测试,或者任何关于编程、编程语言或计算机科学的东西。
我正在对初级(也许是高级)软件工程师所犯的常见错误和错误假设进行一些研究。
你坚持时间最长、最终被纠正的假设是什么?
例如,我误解了整数的大小不是标准的,而是取决于语言和目标。说起来有点尴尬,但事实就是这样。
坦率地说;你有什么坚定的信念?你大概坚持了多长时间?它可以是关于一种算法、一种语言、一个编程概念、测试,或者任何关于编程、编程语言或计算机科学的东西。
当前回答
让非程序员明白我在说什么。
其他回答
在c++中,很长一段时间我都在想编译器在给纯虚方法定义时拒绝你。
当我意识到我错了时,我很吃惊。
很多次,当我告诉别人为其抽象类提供其纯虚析构函数的默认实现时,他/她都用大大的眼睛看着我。我知道接下来会有一场长时间的讨论……这似乎在c++初学者中是一个普遍的信念(我认为我自己也是如此)。我目前还在学习!)
Wikipedia链接到c++的纯虚拟方法
当我第一次听说“鸭子打字”时,我以为它实际上是“管道打字”,类似于人们经常说的鸭子胶带。“Duck typing”听起来是错误的,而“pipe typing”则有一种奇怪的意义(拼凑的类型)。
我一直认为,要成为一名优秀的程序员,必须了解系统的所有内部工作原理。我很羞愧,因为在开始编码之前,我不知道关于这门语言的一切,比如它的库、模式、代码片段。 我不再那么天真了。
这种简单性几乎总能战胜复杂性。愚蠢的规则。
编辑:正如葛格所说,我把这个颠倒了。我的思绪一定是在回复中迷失了。如果使用得当,简单性几乎总是能让代码变得更好。
考试只是拖延的另一种方法。