前幾天有人在微博問我如何學(xué)習(xí)C語言。之前也有人咨詢過類似的問題。我把我學(xué)習(xí)一門語言的過程嘮叨下,僅供參考。
創(chuàng)新互聯(lián)公司專注于藤縣企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站建設(shè),商城網(wǎng)站建設(shè)。藤縣網(wǎng)站建設(shè)公司,為藤縣等地區(qū)提供建站服務(wù)。全流程定制制作,專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)我學(xué)習(xí)一門語言大概會經(jīng)歷如下幾步。
學(xué)習(xí)任何東西,都是一個由表及里的過程。學(xué)習(xí)一門編程語言也一樣。對于一門編程語言來說,表就是基本語法。
對于基礎(chǔ)語法的學(xué)習(xí),我喜歡看一些簡短而又系統(tǒng)的教程。一般這些教程標(biāo)題很有特色。如,X天學(xué)會X語言。一門語言要學(xué)習(xí)的東西其實很多的,這類文章一般會把常用的基本語法總結(jié)提煉。
雖然絕大部分語言的語法都差不多。但是,語言之間語法還是有差異的。如果都這些差異不了解,而是套用以前的經(jīng)驗,很可能掉到坑里面。比如==在PHP和Java中的含義并不是完全一致。
如何避免坑,或者掌握需要特有的技巧?我通常會從兩個途徑下手。第一,看一些面試題之類的文章。第二,看一些優(yōu)秀的源代碼。如一些框架的代碼。在看代碼的過程中,你會發(fā)現(xiàn)一些新的語法,使用技巧等。
基礎(chǔ)語法學(xué)習(xí),能讓你快速上手,應(yīng)用實踐。對技巧和坑的關(guān)注,一定程度上拓展了你的知識面。系統(tǒng)學(xué)習(xí),一方面會進一步拓展你的知識面。另一方面,也有利于你語言知識結(jié)構(gòu)的形成。
找?guī)妆鞠到y(tǒng)講解這門語言的書,認真學(xué)習(xí)。我在學(xué)PHP的時候,曾經(jīng)認真看過PHP手冊??赐曛螅苡惺斋@。
任何一門成熟語言,都有其特有的生態(tài)。這個生態(tài)包括,框架,擴展包,解決方案,規(guī)范等。除了學(xué)習(xí)語法之外,這些東西也是需要學(xué)習(xí)的。這些我一般都是碰到了才去學(xué)。
如果還有精力,我還會去學(xué)習(xí)下語言更底層的東西。而不僅僅停留在應(yīng)用層面。如jvm是如何執(zhí)行java代碼的。java的線程和操作系統(tǒng)線程的關(guān)系。以及一些操作系統(tǒng)方面的知識。
對于發(fā)現(xiàn)的新的語法或者技巧,建議大家親手實踐一次。有些文章已經(jīng)很老了。實踐的目的,一是檢驗是否正確。另外就是加深印象。正所謂,紙上得來終覺淺。
有些人會困惑,每天工作都是數(shù)據(jù)庫的curd操作。如何把學(xué)到的東西應(yīng)用到實踐中?我的解決方法是,自己業(yè)余時間搞一些小項目,把學(xué)到的知識應(yīng)用進入。我當(dāng)初寫kvproxy的時候,沒人要求我去寫。我只是感覺搞這個能鍛煉技術(shù),又能解決一些問題。
一家之言,不分對錯。歡迎交流。
我的博客 www.bo56.com 我的微博 @淘寶信海龍
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。