導航:首頁 > 源碼編譯 > 程序員鄙視鏈一等程序員搞演算法

程序員鄙視鏈一等程序員搞演算法

發布時間:2023-08-01 08:59:53

❶ 為什麼很多程序員會鄙視MATLAB

用MATLAB的人,絕大多數都是做科學計算、工程理論計算、數值分析、金融分析用的,用戶群主要是科學家、工程總師、數學建模、金融投資決策班子等等,其中不乏院士博士,普通程序員就仰望吧,哪裡能鄙視?

因為Matlab掩蓋了大量的程序實現細節 。Matlab是由美國mathworks公司開發的一款大型商業軟體(不便宜哦),它的開發語言是M語言(一門解釋性語言,必須依賴MATLAB解釋器)。

在程序員的圈子裡面,的確存在著鄙視鏈,其中Matlab也的確遭到一大批程序員的鄙視,原因是普通程序員(比如使用C、C++編程語言的)要實現一個功能,就必須理解它的每一個細節,再來組織編碼。而MATLAB卻不同,它本身懈怠了大量的庫,很多功能你根本不需要了解他是如何實現的,在沒搞清楚原理的情況下一行代碼就可以搞定,對於那些辛辛苦苦寫很多代碼的程序員來說,是不是很氣人。其實Matlab是一種很有用的科研工具,下面我就來介紹一下MATLAB的一些更要應用。

關於MATLAB,就先介紹這么多,歡迎大吉關注太科羅技,並在下方積極留言討論。

恕本民科直言,

程序員與做科研,完全就是兩碼事!

程序員是靠編程序混口飯吃,需要優化,精雕細琢!

而做科研關心的是用數學模型來盡快驗證某個猜想是否正確,根本就不想,也不需要在程序的優化上花時間,有現成的拿來就用更好,而MATLAB中的各種應用信手拈來,方便無比,節約大把時間,何樂不為?

這就是本民科用MATLAB做科學研究的原因!

程序員鄙視MATLAB?

反過來了吧?

程序員不會做科研,所以不在一個層次!

因為程序員很少會用Matlab的,根本不知道這裡麵包含了多少技術含量

我跟你講,程序員就這表情,真是人在敲代碼,鍋從天上來。莫名其妙的背上鄙視MATLAB的罪名,也是一臉懵逼呀,而且這「很多」程序員是怎麼統計出來的?

的確,在程序員中的確存在各種語言互相瞧不起的現象。就像某個經典的笑話:某程序猿追求女神,女神說你能讓這論壇里所有人吵起來我就跟你走。某猿說Python是世界上最好的語言,果然整個論壇都炸了。女神說我們走吧,某猿不走,非得說服其他人。

對於普通程序員來說,每天需要實現多少功能,完成多少個頁面,涉及演算法的部分很少。而 MATLAB是個數學軟體,都是數學公式,自然用不上。這應該就是為什麼有些程序員「鄙視」MATLAB的原因了。

MATLAB在演算法開發、數據可視化、數據分析以及數值計算方面是其他語言所無法匹敵的。准確來說,MATLAB是一個研究工具,與C,C++,java等語言不同,其他語言更像一個構造工具。打個比方,MATLAB就好比示波器,而其他語言則是計算機,本身不具備太多比較的意義。

雖然MATLAB在數學處理方面很優秀,但它也局限在這了。程序員是一個很廣泛的工作,包括寫爬蟲,做軟體,開發 游戲 ,部署網路等等。MATLAB就算勉強能實現,編程體驗也比其他語言差。 MATLAB的「偏科」也導致了一部分人對它喜愛不起來,但也構不成鄙視的罪名。

1、使用matlab的根本就不是程序猿

2、程序猿也不鄙視matlab

3、matlab的焦點是實驗實現,而不是生產環境

4、程序猿鄙視的頂多是使用matlab的人的編程水平,因為matlab的語言復雜度和需要的特性比一般編程語言簡單太多了。但是沒哪個程序猿會鄙視使用matlab的人在其領域的專業水準。舉個例子,就好像我會鄙視劉國梁的肚子,但是我不會認為因為我有六塊腹肌我就可以球桌上干贏拿信用卡的胖子。

5、如果真有人鄙視matlab,那就好像是會打字的人鄙視牛頓手上的紙筆說它落後,僅此而已

這樣類比吧,放高中,matlab就是那種最高級別,按鈕最多,一個巨大無比的屏幕,但是只能顯示馬賽克的卡西歐科學計算器。任何一個使用ipad的人都會鄙視這玩意

但是,這貨方便啊!真方便啊,你把考題輸進去(當然很麻煩),不光給你結果,還給你過程,甚至所有參數每一秒的值都給你記錄起來,隨時回頭查看,參數是在那一秒跑飛的都能找出來

沒有程序員鄙視matlab,問題本身就不成立。

先問是不是再問為什麼。

我是程序員,用的是JS主力,含Node.js。

大學參加過數學建模,也拿過國家獎,用的就是matlab。

我不知道你哪裡得出程序員鄙視matlab這一出,高級黑?

另外,樓下瞎吹matlab是什麼工程院院士用的啥啥啥的,抱歉,我一個二本院校小菜雞也用,程序員也用。而且,我是不是可以懟C語言,誰人不用?

歸根到底,就是個引戰,兩個東西不在一條線上,有什麼可對比的?還鄙視?我們程序員也沒那功夫好吧,福報領不完,閑得慌。

作為一個寫了多年代碼的程序員,對於所謂的程序員鄙視鏈已經顯得比較麻木了,對於程序員這份職業對於大部分的人來講可能就是一份工作,工作的目的就是多拿點工資能夠更好的改善家人的生活,當然也會存在一些人發自內心的對編程這份工作感興趣,如果是發自內心的喜歡一件事情,就會非常容易出成績也會工作起來非常的輕松。對於存在所謂的程序員的鄙視鏈一般是對於剛入行的或者門外漢會這么提,軟體行業分類十分眾多而且每個種類裡面都存在很大的差異性,都有其自身的難度所在不能簡單的認為哪種編程語言就是最優的,如果有這種想法證明對於軟體的認知還只是存在於初級的階段。

對於MATLAB軟體使用主要的群體在於科研工作者,無線通信、深度學習、圖像處理與計算機視覺、信號處理、量化金融與風險管理等領域使用的比較多,屬於集成性非常強的工具軟體,軟體從本質上講就是工具般的存在,服務於各個行業如同數學在科學領域的作用,無論多厲害的軟體高手最終還是要以開發的產品為主要的代表作,對於軟體使用層級相對弱化很多,所以作為一個程序員鄙視MATLAB使用者,其實是沒有道理存在的。一個使用者一個開發者本質上沒有鄙視鏈條的存在,而且用好一個軟體也不是一件很簡單的事情,MATLAB屬於集成性非常強的很多成熟的庫文件都集成在裡面了,對於科研工作者來講是一種極好的工具存在。


程序員做的本質工作就是做出優秀的產品給用戶使用,但是很多開發者由於長期盯著功能模塊往往忽視了很多外在的東西存在,特別是初級的程序員始終覺得底層的編程語言在難度上要高於java類的高級語言,其實每種編程語言都有其存在的價值所在,而且每種編程語言都有其內涵所在,真正意義上掌握一種編程語言也不是一件很輕松的事情,從程序員的角度出發只要是掌握了一種編程語言再去學習新的編程語言都會簡單許多,編程語言雖然在語法上有區別但在編程模式上大同小異,如同線程的概念如果是在學習C語言編程的時候已經掌握了,那麼切換到別的語言也會變得順理成章,只是在語法細節上的差異而已。

在程序員領域所謂的鄙視鏈其實更多是外行在擺弄的事情罷了,對於真正意義上的程序員寧願多去看看代碼也懶得去做這種無聊的事情,術業有專攻,但是編程領域行業的差距就十分的巨大,各個領域有機的組合在一起才能夠真正鑄造出好的產品來,從目前編程大的趨勢上看應用類的編程在各個領域展示會更加的明顯,因為軟體行業經過幾十年的快速發展已經積累了大量優秀的資源庫,很多偏向於應用級的軟體就是借鑒和積累了前人的經驗。

每種軟體都有其存在的價值和屬性。而且只要生態存在那麼就會有意義存在,MATLAB的存在讓很多科研工作者提供了極大的便利,從國內軟體所欠缺的就是對於軟體基石的投入,國內大型的互聯網公司把主要的精力放在應用級層面的開發,都是想著如何開發出億萬級的用戶的應用,對於基礎層面的軟體投入想對稀少,基礎軟體層面的投入需要長期周期長見效慢,而且這種生態的建立需要相當漫長的時間,像常見的工具軟體圖形處理以及文字處理軟體,看起來不起眼都是背後的企業經過多年的時間鍛造出來的,一旦涉及到版權層面就會容易被卡脖子,華為公司公司被美國公司打壓就是典型的例子,基礎才是決定是否能夠成功的關鍵因素。

❷ 程序員等級劃分標准

初級程序員通常能完成簡單模塊和項目的開發工作,但難以勝任復雜模型的開發。一般是入行不久,1年以下工作經驗的同學。熟悉前端基礎知識,如HTML、JS、CSS。能夠使用一門MVVM框架進行簡單的業務開發。遇到復雜的組件和模塊,會找現有的輪子使用。會使用網路、Google等檢索工具搜索問題。

高級程序員一般具有獨擋一面的能肢空前力,能夠高質量的完成工作,能把握一個系統團隊的整體實現,在推行過程中歷清能提煉新的方法或方案,或對現有方案提出改進建議並被證明有效,通常是具有3年+工作經驗。

❸ 是不是被鄙視過,講講IT工程師的鄙視鏈

工具鄙視鏈
Allegro → mentor →PADS → AD→ protel99se
示波器之間的鄙視,這就涉及到示波器內部電路的復雜及技術的先進性了。
用安捷倫示波器 →泰克示波器 →台灣產的示波器 → 國產示波器→ 二手模擬示波器 → 沒有示波器
邏輯鄙視鏈
Altera和Xilinx相互鄙視,他們都鄙視用Lattice晶元的……
Verilog和VHDL相互鄙視,他們都鄙視用原理圖拉線的……
以前用VerilogHDL的鄙視用HLS、鄙視用OpenCL的,現在情況變了……
現在輪到談談軟體的鄙視了,軟體就多了,各種語言之間的鄙視
asm → C ↔ C++ ↔ Java ↔ C# → JavaScript → VB → VBScript
Common Lisp ↔ Scheme → Emacs Lisp →→ Python
Python ↔ Perl → shell
php → all
程序員鄙視鏈
搞C的>=搞C++的>搞java的>搞.net的>搞js的>搞html的>美工
會匯編語言的鄙視會C 語言,搞C 語言的鄙視 C++ 。C++ 又要鄙視 Java 和 C# ,Java 和 C# 他們相互鄙視, C# 又鄙視 Visual Basic和會把 C# 念成「C 井」的,會把 C# 念成「C 井」的則鄙視認為 HTML 是一種程序語言的,還有很多語言之間的鄙視,數不勝數,也五花八門,他們總是能找到鄙視的對象,為了表示自己的工作如何高大上。
用Python 3的工程師鄙視還在用 Python 2 的工程師,用 Python 2 的工程師鄙視遇到 UnicodeEncodeError 的工程師。
工種鄙視鏈
研發的 → 測試的 → 生產的 → 焊接的→ 不會焊接的研發
軟硬皆通的 → 只會軟體 或只會硬體→ 軟硬都會,萬金油型。
搞硬體的 → 畫PCB設計的 → 不懂PCB設計只懂硬體的。------啊!你是PCB工程師,不就是畫圖嘛,就是個工具而己。
結構設計、PCB設計、熱設計,平時客客氣氣的,在出毛病的時候就開始相互鄙視了,誰都不認誰。
銷售和研發,相互鄙視;產品和研發,相互鄙視

❹ 程序員的鄙視鏈是什麼

編輯器的:

Emacs → Vim → Sublime → Word → Power Point

Vim →→ Emacs + evil插件

notepad++ → notepad

all → Source Insight → notepad

編程語言的:

asm → C ↔ C++ ↔ Java ↔ C# → JavaScript → VB → VBScript

Common Lisp ↔ Scheme → Emacs Lisp →→ Python

Python ↔ Perl → shell

PHP → all

操作系統的:

Unix → Linux → Windows → DOS

Solaris →→ 其他Unix

*BSD ↔ System*

OpenBSD ↔ FreeBSD → NetBSD

Arch → Debian* → Redhat*

Debian → Ubuntu

Fedora → CentOS → RHEL

OSX → all

IDE的:

Emacs + plugins ↔ Vim + plugins → 其他加插件的編輯器

IntelliJ → Eclipse → NetBeans

Code::Blocks → CodeLite

VS → all → Turbo C 2.0

❺ 程序員演算法解題方法與思路

此方法通過寫出問題的一些特定的例子,分析總結其中的規律。具體而言,就是通過列舉少量的特殊情況,經過分析,最後找出一般的關系。

問題與以前莫個演算法解決過的問題相似,此時就可以觸類旁通,嘗試改進原有演算法來解決

此方法首先將問題簡單化,如改變數據類型、空間大小等,然後嘗試著將簡化後的問題解決。

為了降低問題的復雜度,很多時候都會將問題逐層分解,最後歸結為一些簡單的問題,這就是遞歸法

將一個難以直接解決的大問題,分割成一些規模較小的相同問題,以便各個擊破,分而治之。分治法一般包括以下三個步驟:

1)將問題的實例劃分為幾個較小的實例,最好最有相等的規模。

2)對這些較小的實例求解,而最常見的方法一般是遞歸。

3)如歌有必要,合並這些較小問題的解,以得到原始問題的解。

一般而言,時間復雜度越低的演算法越高效。而更想達到時間復雜度的高效,很多時候就必須在空間上有所犧牲,用空間來換時間。而用空間換時間最有效的方法就是Hash法、大數組和點陣圖法。

在設計題目時,往往會有一個載體,這個載體便是數據結構。如數組、鏈表、二叉樹和圖等,當窄體確定後,可用的演算法自然而然就會顯現出來。可問題是很多時候並不確定這個載體是什麼,當無法確定這個載體時,一般也就很難想到合適的方法了。

當遇到上面的問題時,可以採用最原始的思考問題的方式——輪詢法。常考的數據結構與演算法一共就幾種,如下圖

此種方法看似笨拙,卻很實用,只要對常見的數據結構與演算法爛熟於心,一點都沒有問題。

❻ 程序員學演算法到底有什麼用

演算法是編程的基礎,可以提升自己的邏輯能力,好的演算法可以使編程更簡單,減少冗餘,用最短的代碼實現功能,學好演算法是很有必要的


演算法是計算機的靈魂,是解決所有問題的根源,所以計算機與數學關系非常密切。


程序是演算法加編程語言。其中,編程語言是很多程序員都熟知的。但說到演算法部分程序員覺得跟自己關系不大。實際上,所有的程序都要用到演算法。下面舉幾個演算法的例子幫您理解一下演算法的作用。

HelloWorld里的演算法

學過編程的人,接觸到的第一個程序大概都是著名的「Helloworld」了。這么簡單的程序會有演算法嗎?當然有啦,請思考一下計算機是只認識數字的,怎麼讓它能識別文字呢?聰明的人類給每一個文字都制定了一個編碼,配合數據類型的定義,計算機就能識別文字了。這種編碼的方式就是一種演算法了。您在鍵盤上輸入文字本身就是一種演算法的實現。英文還好就一兩百個字母數字和符號。漢語博大精深有幾萬個字元,用101個按鍵組合來體現所有的文字這本身就是一種了不起的演算法。

經典的演算法-割圓術

割圓術跟程序的關系不大,但它卻凝聚了編程的思想。我們知道所謂程序運算是由四則運算加上邏輯運算組成的。割圓術正是反復使用用了這些基本運算,經多次循環不斷接近圓周率的。這個方法在演算法中叫遞推法。在只能用算籌的年代,就能想到這么時尚的方法,我不得不說老祖宗真的很聰明。從另一個角度上說,哪亮氏演算法其實是超越了編程的一種思想。

一個關於演算法的故事

這個故事有點悲傷。我們知道法律規定一個人去逝後,他的遺產要由直系親屬繼承。有這樣一個家庭夫婦二人和一個孩子。有一天丈夫帶著孩子二人坐飛機旅行,不幸的是飛機墜毀了二個人都遇難了。現在出現了一個遺產繼承的問題。

丈夫的父母都健在,如果丈夫先於孩子去世,那麼按照法律他的遺產要由父母妻子和孩子四人繼承,每人分得四分之一。之後孩子去世,妻子將繼承孩子的全部財產。結果是父母每人分得四分之一,而妻子一人獨得二分之一。

如果孩子先於丈夫去世,則結局就是父母和妻子每人得三分之一。

到底該怎麼分呢?沒人能知道,因為誰都沒有辦法搞清楚丈夫和孩子哪個先去世。這說明了前面那個關於繼承的法律有點問題。這個問題是一個關於時間的演算法問題。這種現象在互聯網的世界裡很普遍,很多人都在發信息,但互聯網不能保證先發的信息就能先到。因此,必須要設計出演算法來解決這種時間上的沖突。

我們可以把計算機程序想像成用數字去模擬現實世界,演算法則對應了現實世界中的各種規則。不李散懂得演算法,我們便無法確定寫出來的程序能否滿足需求。


很高興回答您提出的,程序員學好演算法到底有什麼用?

1、首先演算法學好的話,不論對你思考問題的方式還是對你編程的思維都會鍵拍有很大的好處。

2、編程演算法只是演算法的一種表達形式,還可以用表格或流程圖來表達演算法。

3、各種演算法在不同領域扮演不通角色,本質上沒有區別,一通百通。

4、一些基礎演算法的話,沒必要找資料書籍,也沒有太多要求,隨便在網上搜索一下,就能找到很多詳細的資料。





其實,一般初級甚至中級程序員在日常開發中是用不了演算法的,要麼接觸不到,要麼別人幫你封裝好了,你可以用現成的

但是時間一長,你就會發現不會演算法,就很難變得更加優秀,你會發現優秀框架的源碼,部分是需要用到演算法,你不懂,有些存儲原理,也用到演算法,用到這些演算法,你的代碼執行的效率更高,這個時候你就需要去了解這些東西,否則你就很難再上一層樓

千萬不要覺得演算法不重要,其實這個是一種寶貴財富,在日常的開發中,對你有潛移默化的影響,所以,想成為一個優秀的程序員,演算法數據結構是必不可少學的,一起加油學習演算法吧


❼ 為什麼計算機鄙視軟工

因為有的程序員十幾年如一日,只會花架子,比招式,而真正的高級程序員修煉的是內功。這就是所謂的程序員鄙視鏈,初級程序員比招式,高級程序員只看內功。修煉內功就得從基礎原理做起。

❽ 程序員鄙視鏈,所有工程師都鄙視php工程師,為什麼

鄙視像條食物鏈,無處不在。

工作篇

閱讀全文

與程序員鄙視鏈一等程序員搞演算法相關的資料

熱點內容
h3c光纖全工半全工設置命令 瀏覽:135
公司法pdf下載 瀏覽:379
linuxmarkdown 瀏覽:347
華為手機怎麼多選文件夾 瀏覽:679
如何取消命令方塊指令 瀏覽:345
風翼app為什麼進不去了 瀏覽:774
im4java壓縮圖片 瀏覽:358
數據查詢網站源碼 瀏覽:146
伊克塞爾文檔怎麼進行加密 瀏覽:886
app轉賬是什麼 瀏覽:159
php的基本語法 瀏覽:792
對外漢語pdf 瀏覽:516
如何用mamp本地web伺服器 瀏覽:869
如何加密自己js代碼 瀏覽:627
排列組合a與c的演算法 瀏覽:534
如何在文件夾中找到同名內容 瀏覽:786
有什麼app文字轉韓文配音 瀏覽:372
循環宏1命令 瀏覽:35
斐波那契數列矩陣演算法 瀏覽:674
公式保護後加密不了 瀏覽:82