数学好才能学计算机,或者才能学好Java编程。这个问题没有意思。因为,学会一门语言不是目标,计算机语言只是实现我们想法的手段。所以,没有适合学哪一门语言,只有我们需要哪一门语言。
所谓的数学好,指的是你的高中课业,或者“初等代数”好,那跟学程序语言没有半毛钱关系。
为什么有人一直在强调数学好,才能学好计算机,因为计算机讲究一个逻辑思维的能力,说白了就是懂得条理性,能够举一反三。
如果你的数学很好,是抽象代数或者是函数非常好,这样只是相对于学习函数式语言的计算机编程比较有优势。
因为函数式语言类相对于其他语言编程,与数学更像,而且更依赖数学。其他语言类编程学习能力与数学是不存在必然关系。所以想学习Java就放心的学。
国内的学生群体中普遍存在一定的误区,觉得要学好计算机,能进入IT行业都是理工科学霸,都是数学系牛人。
这也是为什么这么多人黑搞IT的程序猿生活简单,只有代码,而没有文艺气息。这种观点是完完全全错误的。这么不遗余力的黑程序猿单调,只是因为你见到的活的姹紫嫣红的程序猿少,是你少见多怪,而不是人家生活不美满。
如果再有人跟你说,你数学好吗就要学计算机?你数学又不好,肯定干不好IT这一行…你可以打他一顿,或者跟他互删退圈不再联系。这种给你传递负能量给你散播不实消息,误导你高薪就业追寻梦想的朋友,不拉黑难道留着过年吗?
要说函数式语言和数学更像,最基本的就是“函数”。要注意,虽然都叫函数,但是其实二者是完全不一样的。数学中的函数是一个从定义域到值域的映射,而计算机语言中的“函数”至少包括两个意思:procedure和function。
function还可以粗略的等于从参数的空间到返回值的空间的映射关系,但procedure完全就是程序跳转到另一个位置去执行,和“函数”这个东西基本没有任何关系。
而在学C语言的时候,我们叫着函数,却基本都把它理解成procedure。既是有输入有输出的函数,还有和数学中函数的一个最大的不同:确定性。
一般来说,数学中的函数是一个从定义域到值域的确定的映射关系。换言之,确定的输入总产生确定的输出。
但是过程式语言中这一点完全无法保证,例如允许对函数外的变量进行修改。而纯函数式语言中通常要求函数保证无副作用,这样保证了语言中函数和数学中的函数的一致性。
数学上的函数式语言中,函数是first-class的,即和普通变量一样,函数可以操作函数。使用函数式语言,完全就是从数学的角度看问题,这种操作在C和Java中不能直接实现。
所以,综上所述,你想学Java语言,想学什么就大胆勇敢的去吧。
关于Java基础学习你可以看一下我的这篇文章:涡轮增压:2020年Java就业前景如何,零基础能学会吗?需要怎么才能学好?zhuanlan.zhihu.com原文:学习Java开发需要数学很好吗?
平台:哔哩哔哩
作者:Java编程人生