在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Java  Python  C  網(wǎng)絡安全  HTML/ 一個人如何從零到精通學習一門語言的

一個人如何從零到精通學習一門語言的

  1. 剛剛和室友討論一個問題就是,那些學習好的學生從零開始學習一門語言到寫出產(chǎn)品需要多久,室友回答,兩小時,一個小時學習看文檔,下一個小時完成。好學生如何做到的?
  2. 如何快速的使用官網(wǎng)文檔快速的學習一門語言或者快速的使用一個語言的某個框架
回答
編輯回答
晚風眠

更新

題主更新了問題,那么原答案就當回到第一問了,至于第二問,講講我個人的看法吧:

其實編程這個東西,很大程度上上是一個經(jīng)驗工種,前期也許需要一點所謂的理解能力去搞懂一些抽象的東西,也可以不去搞懂,只是這樣的話天花板來的會很快;中期需要橫向拓展,因為很多東西是相同的,比如緩存機制,從硬件一路用到分布式,但是你不靠經(jīng)驗去了解它是很難搞明白怎么用好它的;后期需要縱向深入,中期積累的各方面經(jīng)驗足夠你在一個領域去爆發(fā)的時候,你就可以嘗試一下所謂的一通百通。

當然所謂的前中后期的說法是我自創(chuàng)的,不代表普適規(guī)則,但是終究多數(shù)人是平庸的(無貶義 畢竟我自己也只是個平庸的普通人),在沒有足夠驚艷的天賦時,只能靠經(jīng)驗來強化自己的能力,又由于這個行業(yè)的特殊性,幾乎可以說一生都在學習。

我從初三開始學習編程,批處理入的門,也進過學校的信奧班(奈何智商不夠,沒讀完 ORZ);

高中主用易語言,我知道很多人瞧不起這個東西,但是靠它我可以很快得上手 windows gui 編程,這讓我明白了很多 gui 系統(tǒng)的消息機制到底是什么,也讓我明白了一個通用ui組件的抽象化是怎么做的,中間斷斷續(xù)續(xù)學過 phppython(為了折騰 ss),在此期間我買過 vps 綁過域名也通過 http 權(quán)威指南 懂了一個http請求的歷程;

高中的過分沉迷編程讓我的文化課成績異常糟糕,我那一屆98%的人上了本科而我就是那2%,所以讀了大專

到了大一,按部就班學習 c 語言和網(wǎng)頁,此時的我對 c 已經(jīng)沒太多興趣因為用過高級語言就不想用那么麻煩的東西了 Orz,而網(wǎng)頁我也只是處于知道盒模型但是搞不定兼容 js 更是一竅不通的水平;

到大二我開始用 node.js ,我現(xiàn)在的所有js知識全部來源于此,5月份我開始學習 java,哪怕一行也沒寫過,我也能看過基礎語法后當晚用 java 就寫一個把 .java 轉(zhuǎn)換為 .jsp 的東西(當時猜測 jsp 的性質(zhì)與 php 類似);

現(xiàn)在我大三正準備找實習呢 Orz

講我的經(jīng)歷是因為,以我現(xiàn)在的經(jīng)驗,還有對于編譯原理的一些理論了解(比如我在 sf 倒數(shù)第二篇文章),對于一些 oo 的語言我可以根據(jù)文檔很快上手,其框架也大抵如此,不過這是將將能用而已,很多我重新造輪子的地方后面就發(fā)現(xiàn)框架已經(jīng)提供了我不知道而已。

因此一個語言是變化的,一個框架也是會更新?lián)Q代的,經(jīng)典的思想雖然不會太快過時,但也避不過時代巨輪的碾壓,畢竟硬件性能足夠了我們可能就不那么需要扣內(nèi)存了(所以現(xiàn)如今不用太會算法也足夠找份吃飯的工作了),所以是學不完的。

那么到底怎么快速上手一門語言或者框架呢,無他,唯手熟爾。

這個答案可能不會被很多人看到,但是我自己是個從彎路走上來的人,甚至可以說不算是一個科班出身的,希望能幫到一些人吧。

原答案

突然看到標題說的是從0到精通???

精通這個詞,就不提 c++ 那種多范式的變態(tài),java 這種 語言規(guī)范 加 虛擬機規(guī)范 合起來近千頁的,0基礎一個小時看的完?那還有 Spring 等等之類的文檔還沒開始看呢。

假定我們討論的是,寫的產(chǎn)品的代碼量是一個小時內(nèi)能寫完的。

我見過有研究生寫的代碼是『一個main幾千行』,沒有任何編程思想(指的是抽象 模塊化 這些)在里面。

事實上,語言本身是可以用數(shù)學抽象的,不排除有人對語言的理解就是能一目了然,甚至可以按部就班硬寫個所謂的產(chǎn)品(只要求跑的起來,結(jié)果正確)。

但是還有個大前提,那就是他寫的是這個產(chǎn)品,包不包含其他知識點,你可以用 c 寫個純數(shù)學算法,但是你用 c 寫個 http 響應哪怕是個 socket,你都得還要學習一下網(wǎng)絡協(xié)議,這種情況下,一個小時能不能把網(wǎng)絡協(xié)議看完都是未知數(shù),遑論寫產(chǎn)品。

2017年5月23日 06:50
編輯回答
命于你

一個小時太恐怖啦,對于我這種半瓶水而言。
想起來react的官方教程 里面的教程案例 todolist,看完也就差不多寫完了。但是大項目來說 好難啊,一個App 我都要寫一周Orz

2018年5月1日 13:23
編輯回答
我以為

三小時太夸張了。
有公司招聘有多年經(jīng)驗的程序員,沒有用過Go 語言的,給三天學習時間,三天后用Go語言開發(fā)項目。

2017年9月26日 05:04
編輯回答
夏夕

為什么要強調(diào)清華學生,扎心了老鐵。
何況從零到精通,兩個小時就可以的話,那他們編程系的學生豈不全都可以牛的上天了?
別討論清華學生怎么學了,自己加油。

2017年4月14日 07:50
編輯回答
兔寶寶

從0到精通這個過程,我個人覺得這個周期的長度是因人而異的。如果你是小白,那么你想入門很簡單,但是你想精通你需要很長的一段時間,除非你功底特別好。對操作系統(tǒng),數(shù)據(jù)結(jié)構(gòu),編譯原理,網(wǎng)絡相關的都比較熟悉。在學習語言的過程中,除了掌握當前語言的特性之外,還要多問幾個“為什么”?比如:“為什么會這樣實現(xiàn)多態(tài)?”等等之類的問題。然后找?guī)讉€這個語言的開源項目,記住不要找太大的,然后閱讀下源碼。如果這門語言有其內(nèi)核相關的資料,然后去閱讀下,比如php,去了解下php的內(nèi)核了解下zval,了解下它的生命周期。總結(jié)一下,從入門到精通是一個漸進的過程,我們說的方法只提供參考,你要根據(jù)你自己情況來安排。

2017年10月11日 21:32
編輯回答
下墜

其實當你掌握了一門語言后,再去學習其他的語言,很快可以上手做項目,但是如果真的是從0開始,連基本語法,運算符都不懂,2個小時根本沒可能

2018年6月8日 09:56
編輯回答
吃藕丑

如果寫個HelloWorld的話是可以的

2017年4月24日 10:56
編輯回答
懶豬

所謂的精通是什么?
語法知識可能1-2小時可以學完,但精通(很好的理由語言特性)可能需要很多理解,這也是為什么有那么多 Think in XXXX(語言) 之類的書了。

2017年2月6日 20:44