计算机科学家和计算机程序员之间的区别

Pra*_*nav 28 computer-science

计算机科学家和计算机程序员之间有什么区别?他们在工业界的实际工作有何不同?(不是在学术界)你能提供一些真实世界的例子吗?

Ste*_*per 34

计算机科学是一个学术领域.这有点像学习数学.它正在研究和研究算法,数据结构等.

计算机程序员编写程序; 这个术语倾向于用来描述工业界人士,当然计算机科学家也会编写程序.

一个典型的计算机科学家就像Don Knuth一样.他在算法方面的工作很有传奇色彩.

一个典型的计算机程序员可能是杰夫阿特伍德.我们现在正在使用他的网站.

  • Don Knuth是罕见的人之一(我认识的唯一人),他不仅是计算机科学家,也是优秀的程序员; 他写了TeX(当前奖励$ 327.68,发现任何错误)和CWEB并创造了"文学编程"的实践. (15认同)
  • 像Dijkstra这样的人可能更像计算机科学家. (6认同)
  • Dijkstra自己认为自己是程序员,即使他已停止使用电脑了!(参见他的"The Humble Programmer","被认为是人类活动的编程"等) (2认同)

And*_*int 9

如今,即使他们所知道的唯一语言是VBScript,也可以称自己为计算机程序员.除了玩世不恭之外,我对自己的一些行业术语感到沮丧,例如计算机程序员或软件开发人员.

见一个软件工程师的定义,程序员和工程师之间的区别

科学家和工程师之间的区别非常明显.两者都需要了解计算机科学,但科学家的主要焦点是扩展科学知识体系,而工程师则专注于将这些知识应用于现实世界的系统中.


Óla*_*age 7

*puts on the not serious answer hat*

一个是务实的,另一个不是.


Uma*_*med 7

它与工程师和机械师一样.不幸的是,我认为我是一名机械师:P

  • 实际上,我倾向于将其视为物理学家和工程师.我们通过理解物理学和一些我们在没有基础研究的情况下无法建立的东西来建立更好的桥梁.不过,我宁愿聘请土木工程师来搭建桥梁. (11认同)

小智 7

我是一名计算机科学家(说我的学位,所以一定是真的!)有26年的经验.我花了5%的时间编写程序; 剩下的就是:

  • 其他人编写的性能测试应用程序,并在发现问题时推荐解决方案
  • 在大公司建立测试能力团队
  • 运营运营团队
  • 经营研发团队
  • 软件架构
  • 调查和批准适用于我所在组织的架构解决方案(最近,Ruby,F#,Erlang)
  • 设计基础设施方案
  • 开设技术培训课程
  • ...

我现在编写的代码主要是为了让我的工作更轻松,或者为了我自己的兴趣; 我不是一名"编码员",很少依赖我的编码技能来获取收入.

如果你正在寻找一个关于行业差异的简单解释,我建议程序员主要关注什么是完成和什么时候,而计算机科学家主要关注它如何完成以及为什么.我有兴趣听听别人对这种区别是否符合他们经验的想法


Art*_*ger 5

你可以与数学和应用数学并行.一个人能够探索和研究新的数学模型和定理,第二个是如何在实践中使用和应用它们.所以完全是计算机科学和计算机编程.一是探索新的CS场定理,探索新的高效数据结构,二是如何有效地利用科学结果.