我正在对初级(也许是高级)软件工程师所犯的常见错误和错误假设进行一些研究。
你坚持时间最长、最终被纠正的假设是什么?
例如,我误解了整数的大小不是标准的,而是取决于语言和目标。说起来有点尴尬,但事实就是这样。
坦率地说;你有什么坚定的信念?你大概坚持了多长时间?它可以是关于一种算法、一种语言、一个编程概念、测试,或者任何关于编程、编程语言或计算机科学的东西。
我正在对初级(也许是高级)软件工程师所犯的常见错误和错误假设进行一些研究。
你坚持时间最长、最终被纠正的假设是什么?
例如,我误解了整数的大小不是标准的,而是取决于语言和目标。说起来有点尴尬,但事实就是这样。
坦率地说;你有什么坚定的信念?你大概坚持了多长时间?它可以是关于一种算法、一种语言、一个编程概念、测试,或者任何关于编程、编程语言或计算机科学的东西。
当前回答
学习语言就是学习语法,以及标准库中最常见的部分。
其他回答
C/ c++中if语句的求值顺序是特定于编译器的。所以写作:
if (pointer != NULL) && (pointer->doSomething())
是不安全的,因为可以交换求值顺序。我最近发现(在多年的谎言之后),它是ANSI-C规范的一部分,您可以保证订单和它的完全安全。
詹姆斯
“这个项目将在两周内完成”
and
“这需要2个小时才能实现”
用汇编语言进行优化=重写。
When I first really understood assembly (coming from BASIC) it seemed that the only way to make code run faster was to rewrite it in assembly. Took quite a few years to realize that compilers can be very good at optimization and especially with CPUs with branch prediction etc they can probably do a better job than a human can do in a reasonable amount of time. Also that spending time on optimizing the algorithm is likely to give you a better win than spending time converting from a high to a low level language. Also that premature optimization is the root of all evil...
这种编程是不可能的。
不是开玩笑的,我一直认为编程是一种不可能学会的东西,我总是远离它。当我接近代码的时候,我永远也无法理解它。
然后有一天,我坐下来阅读了一些基本的初学者教程,并从那里开始学习。现在我是一名程序员,我热爱工作的每一分钟。
另外,我认为编程并不容易,它是一个挑战,我更喜欢学习,没有什么比解决一些编程问题更有趣的了。
如果你看不懂我的代码,那你就是不懂这门语言。我有一些代码审查,我试图反击。
我又花了几年的时间才明白,有一个时间和地点可以让你的代码变得神奇,那就是在库中,而不是在应用程序中。该应用程序是为了清晰和可读性。Magic最好隐藏在扩展方法和框架后面。