編程語言的本質都一樣?每當我們去討論某個編程語言的好壞或者特性的時候,總有一些程序員出來說:“討論那么多有什么用,編程語言只是工具而已,用啥都一樣!”。我姑且認為這些人的言論是“凡爾賽”,或許他們掌握的編程語言比較多,所以才會覺得使用什么編程語言都一樣,但是,從學以致用的角度,我不敢茍同!
說大部分編程語言都差不多,其實這點我是比較認同的,比如Java、C#、Python、PHP、Go都可以做網站,而大部分編程語言都可以做桌面開發,但是,您如果說用啥都一樣,那我們就可以展開討論了!
有一門編程語言叫作“易語言”,可能年輕一點的程序員都沒聽說過,而最近一次面試的經歷,讓這門已經快被人民遺忘的編程語言又受到了我的關注。
有一家公司本來使用易語言開發了幾套企業管理軟件,但是,因為這些軟件都是獨立的,平時切換起來很麻煩,所以這家公司想要招聘一個C#程序員,將使用易語言寫的這幾套企業管理軟件進行重寫,合并成一個軟件!
我去對方公司的時候,對方公司給我看了一下這幾套軟件的源碼,并讓我估一下合并這幾套軟件大概需要多久。
我稍微思考了下,最終給他們的答復大概就是三四個月這樣子。
結果,對方公司負責寫這幾套軟件的技術員卻笑了,說他只花了20天不到就把這幾套軟件寫好了,說我需要三四個月的話,時間太長了!
我不知道他花20天是怎么做到的,但是我覺得我20天哪怕使勁加班估計也完成不了這幾個軟件的代碼重構和合并,最后我只能灰溜溜地表示遺憾了!
說易語言這個例子,我想說明幾個事情,第一個就是易語言的確有它的優點,最主要的優點就是對編程小白特別友好!
我過去之所以關注易語言,就是我在做游戲開發的那段工作經歷里,經常會跟各種游戲外掛打交道,游戲外掛對于游戲公司來說,簡直是深惡痛絕!
但是,很多人可能不知道的是,過去很多游戲外掛都是易語言開發的,而很多開發游戲外掛的人基本上都不是科班出身的程序員,很多都是學歷很低的人,就這樣一些人卻能靠著易語言寫出讓很多游戲公司都頭疼的游戲外掛。
包括我面試的這家公司,我也能很明顯感覺到那個使用易語言寫出那幾個企業管理軟件的人也不是一個專業的程序員!但他卻能憑借易語言辦成事!而從他說20天就寫完這幾個企業軟件的情況,如果他所說屬實的話,他的辦事效率明顯是比我高的!
盡管我把易語言說得天花亂墜,但是不可否認的是,現在易語言的確沒幾個正經程序員去學,學了也很難找到工作!
從本質上講,任何編程語言都是通過將代碼通過一道或多道程序(編譯型編程語言和解釋型編程語言)最終轉化成機器能夠識別的機器碼再去執行,但是,從現實上來講,因為編譯過程的不同,每個編程語言最終的代碼執行效率也不同!
因此,說所有編程語言都一樣,是一種不負責任的說法!說學習任何編程語言都一樣,是對學習編程的人的不負責!
我們就不說大的方向,就拿Java、C#和C++這三門編程語言來說吧。
C++的代碼執行效率一般來說是這三門編程語言中最高的,得益于他它能夠自由操作內存,但是,學習C++的成本很高,因為它需要使用者掌握更多的計算機執行邏輯。
而Java和C#則與C++有很大的不同,比如C#的內存是托管的,使用者無需手動分配和釋放內存!
在用人市場方面,Java的的覆蓋面更廣,很多大型互聯網企業都是以Java作為主要開發語言。
假設您想進入一家大型的互聯網公司,只要學歷符合要求,您會C++和Java,能力也符合要求,那么會有很多互聯網公司可以選擇。
但是,如果您只會C#,想要進入大型的互聯網公司,機會會非常少,因為很少有互聯網公司使用C#作為主要開發語言,當然,游戲公司除外!
結語
因此,從現實角度出發,學習哪門編程語言直接決定了您未來能夠在哪些公司就業!
比如說會C++和Java的程序員他的可選擇面比較廣,既能在互聯網公司,也能在普通的軟件公司,也能工業互聯網公司,而會C#的程序員目前大多數只能在一些軟件公司和工業互聯網公司工作。
而那些說學習什么編程語言不重要的人,我覺得他們可能自身所處的工作環境就要求他們必須會多門編程語言。
當然,我不是說會多門編程語言不好,作為程序員多會一門編程語言多一分優勢。
但是,千萬不要說學任何編程語言都差不多!差很多!
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.