计算机科学 – 我应该知道什么计算机科学概念?

你认为计算机科学中的什么概念使你成为一个更好的程序员?

我的学位是在机械工程,所以最终作为一个程序员,我有点缺乏基础。有几个标准的CS概念,我最近学到了,让我更深入地了解我在做什么,具体来说:

语言特性

>指针&递归(感谢Joel!)

数据结构

>链接列表
> Hashtables

算法

>泡沫排序

显然,列表是一个有点短,所以我希望建议:

>我应该理解什么概念,
>任何良好的资源,以正确理解他们(因为维基百科可能有点密集和学术有时)。

看看Steve Yegge(以前的亚马逊,现在在谷歌)的这篇博客:

> The Five Essential Phone Screen Questions

它详细介绍了开发人员应该知道的五个最重要的概念:

>基本编程(包括递归,文件I / O,格式化输出,循环等)
>面向对象设计(包括设计模式等)。你应该能够产生明智的OO设计以及理解概念。
>脚本和正则表达式。
>数据结构 – 列表,集合,哈希表,树,图形等 – 以及Big O表示法和算法复杂性。
>位,字节和二进制数 – 计算机中的数字如何表示,以及如何操作它们。

http://stackoverflow.com/questions/747292/what-computer-science-concepts-should-i-know

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:计算机科学 – 我应该知道什么计算机科学概念?