五千年(敝帚自珍)

主题:【整理】关于编程改革 -- 代码ABC

共:💬53 🌺271
全看分页树展 · 主题 跟帖
家园 那得看你做什么样的编程

首先,就像下面代码ABC说的,不管什么样的编程,都需要抽象能力,即建立模型的能力(不一定是数学模型)。其实我觉得如果想写出像样的程序,逻辑能力也非常重要。

但是如果想靠这一行吃饭,数学一定要好。本身抽象能力和逻辑能力就是数学的基石。往上走,一个好的程序员,计算机科学的算法一定要精通,因为在实际问题中,方方面面都会涉及到这些东西。基本的计算机科学的算法设计和分析,以离散数学和数理逻辑为基础,不需要太多的高等数学。但是近来所谓“大数据”大兴其道,程序员除了需要扎实的算法功底来对付“分布式”和“大规模”这些问题之外,也开始要能够理解机器学习,人工智能,优化,统计相关的东西。那些玩意儿所需要的数学基础就广泛了。如果想设计算法,一个计算机科学,或者应用数学,或者其他相关学科的硕士会有很大帮助。

如果再看除了计算机科学这帮人之外的各行各业,其实也有很多“专业”程序员。很多工程方向的程序员,必须精通应用数学才能玩得转。最极端的就是华尔街的矿工:名校理科博士型的程序员(矿工们轻拍)。

总之,不是每个程序员的数学都好。但是薪水越高的,数学越好,虽然他们不一定高等数学好(那大半是因为他们没有受过相关训练,不意味着他们做不了)。这个趋势统计上是没错的。

通宝推:铁手,
全看分页树展 · 主题 跟帖


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河