App下載

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

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

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

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

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

大家好,這里是w3cschool,在線編程平臺(tái)。

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

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

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

另外一方面,是因?yàn)閣3cschool平臺(tái)上有大量的編程初學(xué)者,我想要了解他們學(xué)編程中會(huì)碰到什么問題,以便更好解決用戶的問題。 

但是我碰到一個(gè)問題,不知道該怎么哪一門編程語(yǔ)言。

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

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

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

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

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

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

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

如何選編程語(yǔ)言

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

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

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

當(dāng)時(shí),我也懵,心想似乎網(wǎng)上說的很多編程語(yǔ)言都不錯(cuò)??!

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

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

“PHP是世界上最好的編程語(yǔ)言...”

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

“還是C語(yǔ)言吧,所有語(yǔ)言都會(huì)死,C語(yǔ)言絕對(duì)不會(huì)死”

“...”

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

似乎每個(gè)編程語(yǔ)言都很好,你怎么才能知道你喜歡哪個(gè)編程語(yǔ)言。

那么我們簡(jiǎn)單理清一個(gè)問題,編程語(yǔ)言到底是個(gè)什么東西? 

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

編程語(yǔ)言 = 工具

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

 

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

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

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

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

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

 

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

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

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

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

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

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

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

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

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

然后去玩玩看。 

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

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

下面簡(jiǎn)單介紹下各個(gè)編程語(yǔ)言都能干啥。

編程語(yǔ)言的有什么

編程語(yǔ)言有很多種!

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

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

C語(yǔ)言、C++、PHP、JavaScript、java、python、swift、SQL等等。 

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

了解這個(gè),有助于你選擇你喜歡的編程語(yǔ)言。 

這邊舉個(gè)例子: 

不同的編程語(yǔ)言,就像不同的交通工具! 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

所以編程語(yǔ)言沒有可比性,因?yàn)橐饬x不大。 

不同場(chǎng)景,有些語(yǔ)言一定比另外一些語(yǔ)言更適合。 

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

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

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

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

如何選擇編程語(yǔ)言?

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

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

 

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

方法一:簡(jiǎn)單粗暴

下面會(huì)簡(jiǎn)單介紹各個(gè)編程語(yǔ)言的用途,屬于比較簡(jiǎn)單粗暴!

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

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

游戲:Java、C語(yǔ)言和C++ 

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

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

IOS開發(fā):swift

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

前端開發(fā):JavaScript

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

PS:

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

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

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

方法二:性格測(cè)試

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

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

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

再比如說你是個(gè)極簡(jiǎn)主義者,那么你適合Python,如果不是的話,可能你適合C語(yǔ)言。 

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

你也可以測(cè)試看看,也許就知道你適合什么編程語(yǔ)言了。 

 

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

方法三:選大概率能贏的

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

選編程語(yǔ)言也一樣! 

這邊推薦兩個(gè)編程語(yǔ)言:Java和JavaScript 

Java: 

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

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

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

Java也被稱為“萬(wàn)事通”編程語(yǔ)言,意思就是幾乎啥事都能干! 

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

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

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

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

悄咪咪打個(gè)廣告,w3cschool有初級(jí)、中級(jí)、高級(jí)一整個(gè)體系的Java課程啊!

JavaScript

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

因?yàn)槟壳皣?guó)內(nèi)互聯(lián)網(wǎng),對(duì)前端開發(fā)工程師,需求量特別大! 

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

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

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

Python!

好玩!熱門!酷炫!

為什么我這么捧Python!因?yàn)槲易约壕瓦x擇Python!(哈哈哈哈哈哈) 

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

為什么那么火? 

因?yàn)楹?jiǎn)單,因?yàn)閺?qiáng)大! 

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

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

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

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

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

而且對(duì)網(wǎng)絡(luò)運(yùn)營(yíng)也很有好處,因?yàn)镻ython也刪除做數(shù)據(jù)分析。 

但是,最最最重要,是python真的簡(jiǎn)單。 

人生苦短,我用python。 

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

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

最后的最后! 

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

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

畢竟你就是白紙一張。 

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

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

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

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

把各個(gè)編程語(yǔ)言,寫在不同的紙上,投骰子。 

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

以后就選這個(gè)編程語(yǔ)言! 

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

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

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

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

0 人點(diǎn)贊