为什么招程序员不考虑MATLAB技能?

mllmtv


matlab不叫编程,只是用来处理数据的一个软件。 信号处理 图像处理 声音处理 甚至控制工程 一般所有涉及到数据的matlab都能干。并且有很多toolbox 可以用。

为什么matlab不叫编程? 因为编程是你需要这个程序达到某种功能。而matlab只是一个用来处理数据的工具。其运用过程没有很多的逻辑。只要有公式,有 transfer function 输入进去 就可以。

再就是matlab“编程”基本也是用官方的函数,如果你不知道怎么用 在matlab官网搜一下就知道了。基本多用几次就能掌握。

国外的学校根本就不会特意教matlab ,而是都让学生上matlab官网找。然后自学即可。


薯条98535661


自己做了面试官才知道,就算你能用matlab画出一个鱼塘来,人家也不介意。然而我在搞学术期间唯一用过的编程语言就是MATLAB,并且一度非常傻的把擅长MATLAB写入了求职简历。

MATLAB的使用场景

首先,MATLAB是一个商业用的数学软件,并且是收费的,主要用于算法开发以及数据可视化的场景。

具体来说就是,我研究生期间研究的是粒子群算法的改进,我需要用MATLAB跑原始的粒子群算法以及经过我改进的粒子群算法,并且画出对比曲线来证明我的工作是有意义的。我们跑一次算法对比通常要花很久,一般都是晚上回宿舍之前,点击开始运行程序,第二天早上来了,可能只跑完一半,在MATLAB跑的时候,我们就继续读论文,等结果跑好了,再用MATLAB强大的画图功能,画出文献里大家常见的各种高大上的数据对比图。


MATLAB的局限性

根据上面描述的使用场景,大家是不是已经感受到MATLAB的局限性了呢。

首先,它是一个数学软件,而实际程序员找工作的时候,除非是应聘算法岗位,否则都是开发能力优先,没有哪个项目组会在立项之前,先用MATLAB跑一份立项前后的收益对比图出来的。

其次,它的运行速度很慢,我曾经把同样的代码与数据移植到java上,结果表明,用java跑出来的速度要比MATLAB快得多。在当今讲究效率的时代,谁会舍近求远,舍快求慢呢。

综上,MATLAB是一个更适用于学术环境的数学软件,而大部分程序员的职位是在给定工资的情况下,要你创造更多价值的,因此MATLAB反而没有了用武之地。

以上是个人浅见,如有意见,欢迎在评论中沟通。

如果你也是程序员,也许也会对Python与Go的问题感兴趣,欢迎点击,与我共同讨论, https://www.wukong.com/answer/6660093544880931084/?iid=64011468761&app=wenda

https://www.wukong.com/answer/6660087711832998148/?iid=64011468761&app=wenda

我是苏苏思量,头像是本人,来自BAT的java开发工程师,每天都会与你分享科技类见闻,欢迎关注我,与我共同进步。


一个存在感小透明


首先是不是不考虑matlab技能!!!

1.MATLAB介绍:全称是Matrix Laboratory,是一款科学计算软件,主要是以数学矩阵的形式处理数;这款软件本身是很强大,现在也有很多的高等学院校、科研机构等还在使用,证明它的市场价值还是有的。

2.程序员的要求:

一般的程序员都有四年的在专业领域的学习,需要一个在计算机程序领域的学士学位获得者,不论是数学方面的还是工程方面的都是可以的。

程序员大多数都是至少熟练掌握两到三种开发工具,而这主推的是C/C++和JAVA开发工具,主要是因为C/C++以其高效率和高度的灵活性成为开发工具中的利器,其次,能掌握一种简便的可视化开发工具,如VB,PowerBuilder,Delphi,CBuilder,则更好,而matlab也是可以作为一款可视化软件使用。

3.原因解释:

(1)而matlab只是一款工具,一款比较基础的工具,相对其它更具有开发利用的工具来说,这就是短板,因为matlab里面内置了很多函数命令,基本算是比较能很快上手的软件,而相对需要创新开发的程序员来说,这是最为基本的,因为程序员能看懂matlab的代码,但是掌握matlab的人不一定能看懂JAVA工程师写的代码;

(2)MATLAB语言不适合进行底层的编程,主要适合用于需要快速认证的算法的使用。在实际程序开发中,很少用到MATLAB。


matlab小小咖


说实话matlab和office是一样的,不能算编程,那些外行看似程序的代码只能算软件使用,简单说编程是开发,matlab或者python都只是工具语言,我们需要他们得到一个结果而不是为别人创造接口


悦5467388


说工业界就过分了,以我熟悉的汽车电子领域为例,目前主流的软件开发手段已经从手写C代码发展到Matlab/Simulink搭建软件模型、Embedded Coder自动生成代码了,应用非常广泛,其他领域,比如军工,这也是趋势,F35飞控软件的主要开发工具也是Matlab/Simulink。


Ren


matlab是目前最强大的数学工具软件,在各行各业的核心工程技术中都有广泛应用。如果你连高等数学(基本的微积分,微分方程,复变函数与积分变换,概率论与数理统计,线性代数与有限元分析,等等)都不懂,或者工作中根本用不到什么高阶的数学知识,当然体会不到Matlab的重要作用。

去问问搞通信,IC 设计,控制,材料等方面基础研究的人士,看看Matlab有多重要。


dsqs


Python+numpy+ matplotlib可以广泛替换matlab


数据科学家之路


曾经有过matlab编程经验,个人认为matlab的优势在于矩阵运算。也就是说在处理解决问题的策略上如果是为了提高速度应该尽量减少循环嵌套次数而将需要处理的数据转变为矩阵形式进行一次性运算。矩阵可以非常大型,比如二维多页,三维立体多页都可以。矩阵化后的matlab运算速度可以大幅提升。我当时优化的算法是计算复杂多体系统的稳定极限,前人给的算法使用的是c和c++,同样的设备计算一次需要七天,经变更后使用matlab计算只需要4小时。现在基于gpu算法的开发也越来越多的与matlab结合,gpu这东西跟matlab实在太搭了。所以matlab其实是个数学工具,过于专一,应用范围过于狭窄。


身形矫健的笨花栗


我觉得MATLAB搞学术多,数学应用软件。程序员应该最低标准会c++吧,厉害一点的java,phython很溜吧!我是搞机电一体控制的,不是专业人!


抹去悲伤留下快乐


会用matlab又不是一种能力,值钱的是用matlab写出算法的脑袋,日常搬砖的怎么懂得到这一点!一般做算法研究的流程是阅读别人的论文,然后用matlab写出论文中的算法,然后模拟仿真加以修改调试参数或者加入自己的新的思想,再然后是浮点c实现,再然后定点c实现下载到dsp芯片。所谓的一般程序员就是浮点转定点这个环节!通常搞算法的都会matlab到浮点c!并且做算法的人从来都不会把会写matlab作为一种技能,重要的是用matlab写出好的算法有效果的算法的思想!


分享到:


相關文章: