我已经听过很多次了,所有的编程都是数学的一个子集。Some suggest说,OO从根本上讲是基于数学的,但除了一些明显的例子外,我不明白其中的联系:
我知道数学对编程非常重要,但我很难接受这种“子集”的观点。编程在哪些方面是数学的一个子集?
我正在寻找一个可能与企业/OO开发相关的解释,如果有足够强的联系的话。
发布于 2008-09-26 03:26:41
总之,请记住,数学是对逻辑的形式化编码,这也是我们在软件中所做的。
您的问题中的主题列表中加载了数学问题。我们能够在一个相当高层次的抽象上进行编程,所以原始的数学可能不会直接盯着你看。例如,您提到了DFAs..您可以在不了解任何数学的情况下在程序中使用正则表达式,但是当您想要设计一个好的正则表达式引擎时,您会发现更需要数学知识。
我想你说中了一个有趣的问题。编程是一门艺术,也是一门科学。有很多“行业工具”,你不一定要坐下来做很多高级的数学运算来简单地写一个程序。事实上,当你在编程时,你可能并不是真的在做太多的数学或计算机科学。
当我们开始解决计算机科学中的难题时,数学就出现了。你走得越深,它就会越充实..通常在较低的抽象级别中。
也有一些编程领域,你不一定要工作,但它们涉及更多的数学。例如,虽然您肯定可以在没有任何正式数学的情况下学习一门语言并编写一些应用程序,但如果没有一些应用数学,您在算法分析方面就不会取得很大进展。
发布于 2008-09-26 03:14:09
从数学的角度来说,它需要对算法等进行抽象思维。
当它涉及到计划时间表、可交付成果、测试时,它就是工程。
当你不知道它最终会变成什么样子的时候,它就是艺术。
发布于 2008-09-26 03:27:24
编程是应用数学中最困难的分支之一;较差的数学家最好保持纯粹的数学家。
--E.W. Dijkstra
https://stackoverflow.com/questions/137550
复制相似问题