App下載

零基礎(chǔ)如何選擇編程語言 小白的我研究了3個月得出一個結(jié)論

猿友 2019-02-26 11:04:43 瀏覽數(shù) (5009)
反饋

導(dǎo)語:去年的某個下午,我突然決定自學(xué)編程。

然而我碰到一個困擾我很久的問題——我應(yīng)該學(xué)習(xí)哪一門編程語言?

后來我花了3個月時間,查看大量知乎的資料、詢問w3cschool的程序員(也就是我同事)、再調(diào)查了當(dāng)前市場各類編程語言的薪資,得出一個很平凡的結(jié)論——選自己喜歡的。

大家好,這里是w3cschool,在線編程平臺。

在去年一個下雨天,我決定學(xué)編程。 

為什么我要學(xué)編程? 

一方面是覺得編程挺好玩的。

另外一方面,是因為w3cschool平臺上有大量的編程初學(xué)者,我想要了解他們學(xué)編程中會碰到什么問題,以便更好解決用戶的問題。 

但是我碰到一個問題,不知道該怎么哪一門編程語言。

似乎每一門編程語言都很不錯,而其牛逼的地方,都有發(fā)展前景。

后來我發(fā)現(xiàn)這個問題不僅僅困擾我,很多想要自學(xué)編程的小伙伴也會碰到這個問題。

心想,如果能一開始就找到自己喜歡的編程語言,是一件很幸運(yùn)的事情。

就像一開始就遇見對的人,然后很早就在一起了,那豈不是很幸福。

也因此,我花費(fèi)了3個月的時間,查詢了知乎的資料,跟w3cschool的程序員,還有去調(diào)查目前各個招聘網(wǎng)站上不同編程語言的薪資待遇。

最后總結(jié)到這篇文章里面,希望能夠幫助到對編程有興趣的小伙伴。

由于本文主要是寫給對編程有興趣的小伙伴,如果有出現(xiàn)偏差,也希望各位能夠留言指正。

如何選編程語言

在我自己準(zhǔn)備自學(xué)編程的時候,就碰到這個問題,當(dāng)時我向w3cshcool的技術(shù)經(jīng)理“老王”請教。 

老王可是一個技術(shù)大佬。 

可是他似乎也挺迷茫,反而問我,你自己喜歡哪一門編程語言? 

當(dāng)時,我也懵,心想似乎網(wǎng)上說的很多編程語言都不錯?。?/p>

“聽說Java很不錯,就業(yè)前景好”

“聽說Python現(xiàn)在很火,而且很簡單,而且從業(yè)方向很高端:人工智能、機(jī)器學(xué)習(xí)”

“PHP是世界上最好的編程語言...”

“要不學(xué)前端吧,簡單,而且聽到到處都確認(rèn)”

“還是C語言吧,所有語言都會死,C語言絕對不會死”

“...”

這就是編程初學(xué)者的困擾!

似乎每個編程語言都很好,你怎么才能知道你喜歡哪個編程語言。

那么我們簡單理清一個問題,編程語言到底是個什么東西? 

學(xué)編程,本質(zhì)是“學(xué)如何使用工具”

編程語言 = 工具

首先,讓我們明確一點(diǎn):學(xué)編程是在學(xué)什么?

 

答案很簡單,就是在學(xué)如何使用工具!

只是這些“工具”,非常強(qiáng)大牛逼,能夠做出非常多很棒的東西。(網(wǎng)站、游戲、爬蟲等)

也正是這些“工具”因為強(qiáng)大,所以使用起來會比較復(fù)雜,需要你花點(diǎn)時間去學(xué)習(xí)。 

就像操作無人機(jī)一樣,無人機(jī)的使用也是很復(fù)雜的。 

你需要花一些時間去學(xué)習(xí),才能熟練使用它,以便達(dá)到自己的目的。 

 

同樣,編程語言也需要我們花費(fèi)一些時間才能學(xué)會。

但是本質(zhì)上,這玩意就只是個工具。 

而各個編程語言的技術(shù)文檔,其實(shí)就是一個工具的說明書而已。 

當(dāng)你學(xué)會一項編程,再去學(xué)其他的編程語言,你會發(fā)現(xiàn)其實(shí)也就那樣。 

所以別被嚇到,你甚至可以把這些“工具”當(dāng)成“玩具”! 

去玩玩它,你會發(fā)現(xiàn),這些“玩具”還挺好玩的。 

只要你看下說明書就能玩。 

所以學(xué)編程第一步,是想辦法“玩它”。 

比如你想把知乎某個用戶的資料都“抓走”,那么你就去學(xué)Python的爬蟲。 

然后去玩玩看。 

當(dāng)我們知道,編程語言是工具的時候,那么剩下問題簡單了。 

了解這些工具都能干啥,我們挑一個我們喜歡的來。 

下面簡單介紹下各個編程語言都能干啥。

編程語言的有什么

編程語言有很多種!

目前已知的編程語言大概就有600多種。 

不過,主流的編程語言其實(shí)不多,這些也就是我們常見的編程語言。 

C語言、C++、PHP、JavaScript、java、python、swift、SQL等等。 

而這些編程語言有什么區(qū)別呢,或者說有什么可比性? 

了解這個,有助于你選擇你喜歡的編程語言。 

這邊舉個例子: 

不同的編程語言,就像不同的交通工具! 

飛機(jī):速度快、限制多(安保、飛機(jī)場地等)、駕駛難度高

輪船:載貨多、航程遠(yuǎn)、效率高、駕駛難度高

高鐵:速度快、路程有限制、、駕駛難度高

汽車:速度相比要慢、但是便利、駕駛難度低

自行車:速度慢、便利、駕駛難度相比之下,最低。

而不同的編程語言,就像這些交通工具一樣。 

你學(xué)編程,其實(shí)就是在學(xué)如何駕駛(使用)這些交通工具(編程語言)。 

而這些交通工具,其實(shí)沒有可比性,他們都是交通工具(都是編程語言)。 

但是在不同的運(yùn)用場景,各有自己的優(yōu)勢! 

你在一個園區(qū)內(nèi)出行,你的選擇肯定是自行車,而不是飛機(jī)!

雖然自行車相比飛機(jī)來說,速度慢、但是比較便利。

但是在園區(qū)這個場景里面,自行車的便利性和優(yōu)勢太明顯了。而且,學(xué)自行車的成本肯定比學(xué)開飛機(jī)低很多。

但是,如果你想出國,那肯定是選擇開飛機(jī)或者駕駛輪船。(但是學(xué)習(xí)成本會比較高)

而在某個工廠里面,可能叉車比自行車、飛機(jī)、輪船有用。

所以編程語言沒有可比性,因為意義不大。 

不同場景,有些語言一定比另外一些語言更適合。 

看到這里,想必各位小伙伴應(yīng)該很清晰了! 

編程語言到底是什么!—— 一些牛逼但是稍微難學(xué)的工具! 

不同的編程語言本質(zhì)區(qū)別是什么!—— 就像不同的交通工具一樣! 

那么我們繼續(xù)邁向我們的核心問題:我應(yīng)該選擇哪一門編程語言? 

如何選擇編程語言?

那么,接下來,我們就可以來選擇這些編程語言了! 

先來看下2019年最新的編程語言使用排行榜(范圍:全球) 

 

上面這些,都是比較主流的編程語言,各位小伙伴稍微了解一下就行。

方法一:簡單粗暴

下面會簡單介紹各個編程語言的用途,屬于比較簡單粗暴!

各位小伙伴隨意選一個,然后學(xué)好!都能夠找到一份薪資待遇不錯的工作! 

網(wǎng)站:選PHP和Java

游戲:Java、C語言和C++ 

數(shù)據(jù)分析:Python 

(說明:數(shù)據(jù)分析可能很多小伙伴不了解,這邊簡單說一下,目前互聯(lián)網(wǎng)上各種各樣的東西,說白了,就是數(shù)據(jù),用python這個工具對數(shù)據(jù)進(jìn)行分析和抓取,有助于運(yùn)營者做決策,當(dāng)然python用途不止這些,有興趣可以自己去了解。)

IOS開發(fā):swift

(swift和objective-C都是應(yīng)用于蘋果系統(tǒng)IOS的開發(fā))

前端開發(fā):JavaScript

數(shù)據(jù)庫:SQL 

PS:

上面介紹的比較籠統(tǒng),比如Python其實(shí)也能開發(fā)網(wǎng)站,比如豆瓣和YouTube就是使用python。

這邊只是說個大概,有興趣最好自己深入了解一下。

各位小伙伴可以先看下自己喜歡做什么,如果你覺得看完上面,還是不知道如何選。

方法二:性格測試

哈哈,是不是很意外,很驚喜,選編程還能用性格測試?

確實(shí),在知乎上,關(guān)于編程有一篇文章,大概就是說不同編程語言的程序員,性格和處理問題的方式也不一樣! 

比如說喜歡收拾房間的人,可能適合Java、C語言、C++這種編程語言,而不喜歡的適合PHP、JS這種編程語言。 

再比如說你是個極簡主義者,那么你適合Python,如果不是的話,可能你適合C語言。 

w3cschool根據(jù)知乎和自己網(wǎng)站的用戶,在w3cschool的小程序里面做了一個簡單的學(xué)前評測。 

你也可以測試看看,也許就知道你適合什么編程語言了。 

 

(PS:這個圖很明顯有廣告嫌疑,不過挺準(zhǔn)挺好玩的,各位小伙伴來試試嘛【手動狗頭】)

方法三:選大概率能贏的

成年人做事,盡量不要去考慮結(jié)果,選大概率能贏的! 

選編程語言也一樣! 

這邊推薦兩個編程語言:Java和JavaScript 

Java: 

就像交通工具一樣,我們盡量選汽車這種交通工具! 

能運(yùn)東西,也能跑長途,也能跑短途! 

而有一種編程語言特別像這種交通工具,那就是Java! 

Java也被稱為“萬事通”編程語言,意思就是幾乎啥事都能干! 

開發(fā)游戲、開發(fā)網(wǎng)站、數(shù)據(jù)分析、人工智能,Java都挺適合的! 

另外學(xué)Java還有一個好處! 

Java屬于入門不難,而且屬于強(qiáng)語言! 

學(xué)完Java,再去學(xué)其他類似Python、PHP這種語言,會簡單非常多。 

悄咪咪打個廣告,w3cschool有初級、中級、高級一整個體系的Java課程??!

JavaScript

前端開發(fā),是非常多的人,無腦選擇的編程語言。

因為目前國內(nèi)互聯(lián)網(wǎng),對前端開發(fā)工程師,需求量特別大! 

另外前端入門不難,薪資待遇也很贊。 

前端開發(fā),也是非常穩(wěn)的! 

方法四:選熱門選酷炫的選好玩的

Python!

好玩!熱門!酷炫!

為什么我這么捧Python!因為我自己就選擇Python!(哈哈哈哈哈哈) 

Python是去年最熱門編程語言,這點(diǎn)應(yīng)該沒有爭議。 

為什么那么火? 

因為簡單,因為強(qiáng)大! 

不久的將來人工智能必然崛起。

最近華為5G不是出來了么,那么AR和VR也必然興起。 

這也是Python為什么火爆的原因之一。 

另外Python能做很多很好玩的事情! 

比如寫爬蟲,爬取數(shù)據(jù)。 

而且對網(wǎng)絡(luò)運(yùn)營也很有好處,因為Python也刪除做數(shù)據(jù)分析。 

但是,最最最重要,是python真的簡單。 

人生苦短,我用python。 

你看下各類編程語言發(fā)明者的發(fā)量,你就知道了。 

方法五:選自己喜歡的——投骰子

最后的最后! 

給一個非常非常中肯的建議:選自己喜歡的! 

其實(shí),對于初學(xué)者來說,各個編程語言,難度都一樣。

畢竟你就是白紙一張。 

所以務(wù)必選自己喜歡的!

興趣會彌補(bǔ)掉非常非常非常多的短板,什么英語不好,數(shù)學(xué)不好,都不是問題! 

最重要還是你得你自己喜歡! 

如果實(shí)在不知道,選哪個。 

把各個編程語言,寫在不同的紙上,投骰子。 

投中哪個,就告訴自己,這就是我最喜歡的編程語言,然后把其他紙全部撕了。 

以后就選這個編程語言! 

如果你想再投一次,那么先把你投中的撕掉,再接著投。

直到你拿到一張你不舍得撕掉的編程,那么這就是你喜歡的編程語言。 

腫么樣,這個辦法是不是非常贊?。。。。。。?! 

今天,就到這里,下面一篇會給各位小伙伴帶來的是零基礎(chǔ)學(xué)編程的方法!

0 人點(diǎn)贊