為什麼招程序員不考慮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寫出好的算法有效果的算法的思想!


分享到:


相關文章: