2021-01-23

十年自學(xué)編程

彼得·諾維格

為什么每個人都這么著急?

走進(jìn)任何書店侦锯,您將看到如何在24小時內(nèi)自學(xué)Java,以及無窮無盡的變體,可以在幾天或幾小時內(nèi)教授C肄扎,SQL,Ruby荆针,算法等碑宴。亞馬遜高級搜索[標(biāo)題:自學(xué),自學(xué)姐叁,自學(xué)克懊,自2000年以來,共發(fā)現(xiàn)512本書七蜘。在前十名中谭溉,有九本是編程書籍(另一本是關(guān)于簿記的)。通過將“自學(xué)”替換為“學(xué)習(xí)”或?qū)ⅰ靶r”替換為“天”橡卤,可以得到類似的結(jié)果扮念。

結(jié)論是要么人們急于學(xué)習(xí)編程,要么編程比其他任何事物都更容易學(xué)習(xí)碧库。Felleisen等柜与。?在他們的書《如何設(shè)計程序》中對這種趨勢表示贊同,當(dāng)他們說“錯誤的編程很容易嵌灰。白癡可以在21天內(nèi)學(xué)習(xí)它弄匕,即使他們是傻瓜」敛t!?Abtruse Goose漫畫也受到了歡迎迁匠。

讓我們分析一下“?24小時自學(xué)C ++”這樣的標(biāo)題的?含義:

自學(xué):在24小時內(nèi),您將沒有時間編寫幾個重要的程序驹溃,并從中學(xué)習(xí)成功和失敗的原因城丧。您將沒有時間與經(jīng)驗豐富的程序員一起工作,也不了解在C ++環(huán)境中生活的感覺豌鹤。簡而言之亡哄,您將沒有時間學(xué)習(xí)很多東西。因此布疙,這本書只能說是膚淺的熟悉蚊惯,而不是深刻的理解愿卸。正如亞歷山大·波普(Alexander Pope)所說,學(xué)一點東西是危險的截型。

C ++:在24小時內(nèi)趴荸,您可能可以學(xué)習(xí)C ++的某些語法(如果您已經(jīng)知道另一種語言),但是您對如何使用該語言的了解卻不多菠劝。簡而言之赊舶,如果您是一名Basic程序員,則可以學(xué)習(xí)使用C ++語法以Basic風(fēng)格編寫程序赶诊,但是您將無法了解C ++的優(yōu)點(或缺點)笼平。那有什么意義呢??艾倫·珀利斯(Alan Perlis)曾經(jīng)說過:“不影響您對編程的思考方式的語言是不值得了解的”舔痪。一個可能的觀點是寓调,您必須學(xué)習(xí)一小部分C ++(或更可能是JavaScript或Processing之類的東西),因為您需要與現(xiàn)有工具交互以完成特定任務(wù)锄码。但是夺英,那時您不會學(xué)習(xí)編程。您正在學(xué)習(xí)完成該任務(wù)滋捶。

在24小時內(nèi):不幸的是痛悯,這還不夠,如下一節(jié)所示重窟。

十年自學(xué)編程

研究人員(Bloom(1985)载萌,Bryan&Harter(1899)Hayes(1989)巡扇,Simmon&Chase(1973))顯示扭仁,在下棋,音樂等眾多領(lǐng)域中發(fā)展專業(yè)知識大約需要十年的時間厅翔。寫作乖坠,電報操作,繪畫刀闷,彈鋼琴熊泵,游泳,網(wǎng)球以及神經(jīng)心理學(xué)和拓?fù)鋵W(xué)研究涩赢。關(guān)鍵是商議?練習(xí):不僅要一遍又一遍地做戈次,還要挑戰(zhàn)一項超越您當(dāng)前能力的任務(wù)來挑戰(zhàn)自己,嘗試一下筒扒,分析執(zhí)行前后的表現(xiàn),并糾正任何錯誤绊寻。然后重復(fù)花墩。再重復(fù)一次悬秉。似乎沒有真正的捷徑:即使是4歲的音樂天才莫扎特,也花了13年的時間才開始創(chuàng)作世界一流的音樂冰蘑。在另一種類型中和泌,甲殼蟲樂隊似乎爆出一連串的#1熱門歌曲,并在1964年的埃德·沙利文(Ed Sullivan)演出中露面祠肥。但是自1957年以來武氓,他們一直在利物浦和漢堡的小型俱樂部里打球,盡管他們頗具吸引力在早期仇箱,他們的第一個重大成功就是Sgt县恕。Peppers于1967年發(fā)行。

馬爾科姆·格拉德威爾盡管他專注于10,000小時(而不是10年)剂桥,但他已經(jīng)推廣了這個想法忠烛。亨利·卡蒂埃·布雷森(Henri Cartier-Bresson权逗,1908-2004年)還有另一個度量標(biāo)準(zhǔn):“您的前10,000張照片是最糟糕的美尸。”?(他沒想到數(shù)碼相機(jī)會在一個星期內(nèi)達(dá)到這個目標(biāo)斟薇。)真正的專業(yè)知識可能需要一輩子:塞繆爾·約翰遜(Samuel Johnson(1709-1784))說:“任何部門的出色表現(xiàn)都只能靠他的勞動來實現(xiàn)师坎。一輩子;不要以較低的價格購買堪滨】杪”?喬uc(1340-1400)抱怨說:“ lyf太短了,工藝太長了椿猎』塘耄”?希波克拉底(約公元前400年)以“ ars longa,vita brevis”的摘錄而聞名犯眠,它是“ Ars longa按灶,vita brevis,occasio praeceps筐咧,experimentum perculosum鸯旁,iudicium difficile”較長引語的一部分量蕊,英語中用“ Life”表示铺罢。是短,?當(dāng)然残炮,沒有一個數(shù)字可以作為最終答案:假設(shè)所有技能(例如編程韭赘,下棋,下棋和玩音樂)可能都需要完全相同的時間來掌握势就,這似乎是不合理的泉瞻,也不會所有人都花費(fèi)完全相同的時間脉漏。正如?K. Anders Ericsson教授所說:“在大多數(shù)領(lǐng)域,即使是最有才華的個人也需要多少時間才能達(dá)到最高水平袖牙。令人難以置信的是侧巨,10,000小時的工作時間使您感覺我們正在談?wù)摱嗄昴承┤藭f,那些天生才華橫溢的人每周必須花費(fèi)10到20個小時才能達(dá)到最高水平鞭达∷境溃”

所以你想成為一名程序員

這是我編程成功的秘訣:

獲取感興趣的節(jié)目,并做一些畴蹭,因為它很有趣坦仍。確保它保持足夠的樂趣,以便您愿意投入十年/ 10,000小時的時間撮胧。

程序桨踪。最好的學(xué)習(xí)是邊做邊學(xué)。從技術(shù)上來說芹啥,“在一定范圍內(nèi)锻离,個人的最高績效不會根據(jù)擴(kuò)展經(jīng)驗而自動獲得,但是即使是經(jīng)驗豐富的個人墓怀,由于有意改進(jìn)也可以提高績效水平汽纠。 】模”?(p虱朵。366)?和“最有效的學(xué)習(xí)需要對特定個體具有適當(dāng)難度級別的明確定義的任務(wù),信息反饋以及重復(fù)和糾正錯誤的機(jī)會钓账〔耆”?(第20-21頁)《實踐中的認(rèn)知:日常生活中的思維,數(shù)學(xué)和文化》是對此觀點的有趣參考梆暮。

其他程序員交談服协;閱讀其他程序。這比任何書籍或培訓(xùn)課程都重要啦粹。

如果需要偿荷,可以在大學(xué)學(xué)習(xí)四年(或者在研究生院學(xué)習(xí)四年)。這將使您能夠訪問一些需要證書的工作唠椭,并且可以使您對該領(lǐng)域有更深入的了解跳纳,但是,如果您不喜歡學(xué)校贪嫂,則可以(有一定的奉獻(xiàn)精神)獨(dú)自或在工作中獲得類似的經(jīng)驗寺庄。 。無論如何,僅靠書籍學(xué)習(xí)是不夠的铣揉∪纳睿《新黑客字典》的作者埃里克·雷蒙德(Eric Raymond)表示:“計算機(jī)科學(xué)教育不能像學(xué)習(xí)畫筆和顏料那樣使任何人成為專家程序員餐曹」涔埃”?我曾經(jīng)雇用過的最好的程序員之一只有高中學(xué)位。他制作了很多很棒的?軟件台猴,并擁有自己的新聞組并且擁有足夠的股票期權(quán)購買自己的夜總會朽合。

其他程序員一起從事項目。在某些項目中成為最好的程序員饱狂;在其他人身上最糟糕曹步。當(dāng)您處于最佳狀態(tài)時,就可以測試自己領(lǐng)導(dǎo)項目的能力休讳,并用自己的遠(yuǎn)見激發(fā)他人的才能讲婚。在最壞的情況下,您將學(xué)習(xí)大師的所作所為俊柔,并了解他們不喜歡做的事情(因為他們讓您為他們做)筹麸。

其他程序員之后從事項目。了解別人編寫的程序雏婶∥锔希看看當(dāng)原始程序員不在時需要理解和修復(fù)它的過程×敉恚考慮如何設(shè)計您的程序酵紫,使那些在您之后維護(hù)它們的人更輕松。

學(xué)習(xí)至少六種編程語言错维。包括一種強(qiáng)調(diào)類抽象的語言(例如Java或C ++)奖地,一種強(qiáng)調(diào)功能抽象的語言(例如Lisp或ML或Haskell),一種支持語法抽象的語言(例如Lisp)赋焕,一種支持聲明性規(guī)范的語言(例如Prolog或C ++模板)参歹。 ,并且強(qiáng)調(diào)并行性(例如Clojure或Go)宏邮。

請記住泽示,“計算機(jī)科學(xué)”中有一個“計算機(jī)”。知道您的計算機(jī)執(zhí)行一條指令蜜氨,從內(nèi)存中獲取一個單詞(有或沒有緩存未命中)械筛,從磁盤讀取連續(xù)的單詞以及在磁盤上尋找新位置花了多長時間。(在這里回答飒炎。

參與語言?標(biāo)準(zhǔn)化工作埋哟。它可以是ANSI C ++委員會,也可以確定您的本地編碼樣式是否具有2或4個空格縮進(jìn)級別。無論哪種方式赤赊,您都可以了解其他人在某種語言中的喜好闯狱,他們的感受有多深,甚至可能很少了解他們?yōu)槭裁慈绱恕?/p>

具有良好的意識抛计,可以盡快開始語言標(biāo)準(zhǔn)化工作哄孤。

考慮到所有這些,僅通過學(xué)習(xí)書籍就能取得多大的成績值得懷疑吹截。在我的第一個孩子出生之前瘦陈,我閱讀了所有“如何做”書,仍然覺得自己是一個笨手笨手的新手波俄。30個月后晨逝,當(dāng)我的第二個孩子到期時,我是否又回到書店復(fù)習(xí)了懦铺?否捉貌。相反,我依靠自己的個人經(jīng)歷冬念,事實證明趁窃,與專家撰寫的成千上萬頁相比,這對我來說更加有用和令人放心刘急。

弗雷德·布魯克斯(Fred Brooks)在他的論文《無銀子彈》中?確定了一個由三部分組成的計劃棚菊,以尋找優(yōu)秀的軟件設(shè)計師:

盡早系統(tǒng)地確定頂級設(shè)計師。

指派職業(yè)指導(dǎo)者負(fù)責(zé)潛在客戶的發(fā)展叔汁,并仔細(xì)保存職業(yè)檔案统求。

為成長中的設(shè)計師提供互動和相互刺激的機(jī)會。

假設(shè)某些人已經(jīng)具備成為優(yōu)秀設(shè)計師所需的素質(zhì)据块;工作是適當(dāng)?shù)睾弪_他們码邻。?艾倫·佩里斯(Alan Perlis)更簡潔地說:“每個人都可以被雕刻而成:米開朗基羅必須被教導(dǎo)如何不做。偉大的程序員也是如此另假∠裎荩”?佩利斯(Perlis)說,偉人的內(nèi)在素質(zhì)超越了他們的訓(xùn)練边篮。但是質(zhì)量從何而來己莺?是天生的嗎?還是他們通過勤奮發(fā)展戈轿?正如奧古斯特·古斯托(Ratatouille的虛構(gòu)廚師?)所說凌受,“任何人都可以做飯,但只有無所畏懼的人才能做得好思杯∈を龋”?我將其更多地看作是愿意將一生的大部分時間投入到思考實踐中。但也許?無所畏懼是一種總結(jié)的方式√懿幔或者领突,正如古斯托(Gusteau)的批評家安東·埃戈(Anton Ego)所說:“并非每個人都能成為一位偉大的藝術(shù)家,但是一位偉大的藝術(shù)家可以來自任何地方案怯【”

因此,繼續(xù)購買那本Java / Ruby / Javascript / PHP書殴泰;您可能會從中受益匪淺于宙。但是您不會在24小時或21天之內(nèi)改變自己的生活,也不會改變自己真正的整體專業(yè)知識悍汛。如何努力在24個月內(nèi)不斷改進(jìn)?好吧至会,現(xiàn)在您開始有所建樹...

參考文獻(xiàn)

本杰明·布魯姆(ed离咐。),《年輕人的發(fā)展才能》奉件,巴蘭廷宵蛀,1985年。

布魯克斯县貌,弗雷德术陶,《無銀子彈》,IEEE計算機(jī)煤痕,第一卷?20號?1987年第4期梧宫,第4頁。10-19摆碉。

Bryan塘匣,WL&Harter,N.“關(guān)于電報語言的研究:習(xí)性等級的獲得巷帝〖陕保《心理學(xué)評論》,1899年楞泼,第8期驰徊,第345-375頁

海耶斯(John Hayes),《完全問題解決者》勞倫斯·艾爾鮑姆(Lawrence Erlbaum)堕阔,1989年棍厂。

Chase,William G.&Simon印蔬,Herbert A.?“國際象棋的?認(rèn)知認(rèn)知心理學(xué)勋桶,1973,4,55-81例驹。

Lave捐韩,Jean,《實踐中的認(rèn)知:日常生活中的思維鹃锈,數(shù)學(xué)和文化》荤胁,劍橋大學(xué)出版社,1988年屎债。

答案典型PC上各種操作的大概時間:

執(zhí)行典型的指令1 / 1,000,000,000秒= 1納秒

從L1緩存中獲取0.5納秒

分支預(yù)測錯誤5納秒

從二級緩存中獲取7納秒

互斥鎖25納秒

從主內(nèi)存中獲取100納秒

通過1Gbps網(wǎng)絡(luò)發(fā)送2K字節(jié)20,000納秒

從內(nèi)存順序讀取1MB250,000納秒

從新磁盤位置獲冉稣(查找)8,000,000納秒

從磁盤順序讀取1MB20,000,000納秒

將小包美國發(fā)送到歐洲并返回150毫秒= 150,000,000納秒

附錄:語言選擇

一些人問他們應(yīng)該首先學(xué)習(xí)哪種編程語言。沒有答案盆驹,但是請考慮以下幾點:

使用你的朋友圆丹。當(dāng)被問及“我應(yīng)該使用哪種操作系統(tǒng),Windows躯喇,Unix或Mac辫封?”時,我的回答通常是:“使用您的朋友使用的任何軟件”廉丽。從朋友那里學(xué)習(xí)的好處將抵消操作系統(tǒng)之間或編程語言之間的任何內(nèi)在差異倦微。還請考慮您的未來朋友:如果繼續(xù),您將成為程序員社區(qū)的一部分正压。您選擇的語言是一個正在成長的大型社區(qū)還是一個瀕臨滅絕的社區(qū)欣福?是否有書籍,網(wǎng)站和在線論壇可提供答案焦履?你喜歡那些論壇里的人嗎拓劝?

保持簡單。諸如C ++和Java之類的編程語言是由經(jīng)驗豐富的程序員組成的大型團(tuán)隊設(shè)計的裁良,這些團(tuán)隊關(guān)心其代碼的運(yùn)行時效率凿将。結(jié)果,這些語言具有針對這些情況設(shè)計的復(fù)雜部分价脾。您擔(dān)心要學(xué)習(xí)編程牧抵。您不需要那種麻煩。您需要一種被設(shè)計為易于由單個新程序員學(xué)習(xí)和記住的語言侨把。

玩犀变。您寧愿學(xué)習(xí)彈鋼琴的方式:正常的互動方式,即敲擊琴鍵后便會聽到每個音符秋柄,也就是“批量”模式获枝,即在整首歌結(jié)束后才聽到音符。 骇笔?顯然省店,交互模式使鋼琴和編程學(xué)習(xí)變得更加容易嚣崭。堅持使用交互式模式的語言并使用它。

給定這些條件懦傍,我對第一種編程語言的建議是Python或?Scheme雹舀。另一個選擇是Javascript,不是因為它是為初學(xué)者精心設(shè)計的粗俱,而是因為有很多在線教程供您使用说榆,例如?Khan Academy的教程。但是您的情況可能會有所不同寸认,還有其他不錯的選擇签财。如果您的年齡是個位數(shù),則您可能更喜歡?AliceSqueak?或Blockly(年齡較大的學(xué)習(xí)者可能會喜歡)偏塞。重要的是您選擇并開始唱蒸。

附錄:書籍和其他資源

有幾個人問他們應(yīng)該從中學(xué)到什么書和網(wǎng)頁。我重申“僅靠書本學(xué)習(xí)是不夠的”烛愧,但我可以推薦以下內(nèi)容:

方案:?計算機(jī)程序的結(jié)構(gòu)和解釋(Abelson和Sussman)可能是計算機(jī)科學(xué)的最好入門油宜,它確實教授編程作為理解計算機(jī)科學(xué)的一種方式。您可以在本書上在線觀看講座視頻怜姿,以及在線全文。這本書極具挑戰(zhàn)性疼燥,將淘汰一些可能通過其他方法成功的人沧卢。

方案:?如何設(shè)計程序(Felleisen等人是一本有關(guān)如何以一種優(yōu)雅而實用的方式實際設(shè)計程序的最佳書籍之一。

Python:?Python編程:CS入門(Zelle)是使用Python的不錯的入門醉者。

Python:Python.org?上提供了一些在線教程但狭。

Oz:?計算機(jī)編程的概念,技術(shù)和模型(Van Roy和Haridi)?被某些人視為Abelson&Sussman的現(xiàn)代繼任者撬即。這是一門編程的大創(chuàng)意立磁,涵蓋了比Abelson&Sussman更大的范圍,同時也許更易于閱讀和遵循剥槐。它使用一種不知名的語言O(shè)z唱歧,但它是學(xué)習(xí)其他語言的基礎(chǔ)。<

筆記

T. Capey指出粒竖,亞馬遜上的“完全解決問題”頁面現(xiàn)在在“購買此商品的客戶也購買了這些商品”部分下有“ 21天自學(xué)孟加拉語”和“自學(xué)語法和風(fēng)格”書颅崩。我猜想看那本書的人很大一部分來自此頁面。感謝Ross Cohen為希波克拉底提供的幫助蕊苗。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末沿后,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子朽砰,更是在濱河造成了極大的恐慌尖滚,老刑警劉巖喉刘,帶你破解...
    沈念sama閱讀 211,376評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異漆弄,居然都是意外死亡睦裳,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,126評論 2 385
  • 文/潘曉璐 我一進(jìn)店門置逻,熙熙樓的掌柜王于貴愁眉苦臉地迎上來推沸,“玉大人,你說我怎么就攤上這事券坞△薮撸” “怎么了?”我有些...
    開封第一講書人閱讀 156,966評論 0 347
  • 文/不壞的土叔 我叫張陵恨锚,是天一觀的道長宇驾。 經(jīng)常有香客問我,道長猴伶,這世上最難降的妖魔是什么课舍? 我笑而不...
    開封第一講書人閱讀 56,432評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮他挎,結(jié)果婚禮上筝尾,老公的妹妹穿的比我還像新娘。我一直安慰自己办桨,他們只是感情好筹淫,可當(dāng)我...
    茶點故事閱讀 65,519評論 6 385
  • 文/花漫 我一把揭開白布晋控。 她就那樣靜靜地躺著庸推,像睡著了一般。 火紅的嫁衣襯著肌膚如雪忠荞。 梳的紋絲不亂的頭發(fā)上殊霞,一...
    開封第一講書人閱讀 49,792評論 1 290
  • 那天摧阅,我揣著相機(jī)與錄音,去河邊找鬼绷蹲。 笑死棒卷,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的瘸右。 我是一名探鬼主播娇跟,決...
    沈念sama閱讀 38,933評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼太颤!你這毒婦竟也來了苞俘?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,701評論 0 266
  • 序言:老撾萬榮一對情侶失蹤龄章,失蹤者是張志新(化名)和其女友劉穎吃谣,沒想到半個月后乞封,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,143評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡岗憋,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,488評論 2 327
  • 正文 我和宋清朗相戀三年肃晚,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片仔戈。...
    茶點故事閱讀 38,626評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡关串,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出监徘,到底是詐尸還是另有隱情晋修,我是刑警寧澤,帶...
    沈念sama閱讀 34,292評論 4 329
  • 正文 年R本政府宣布凰盔,位于F島的核電站墓卦,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏户敬。R本人自食惡果不足惜落剪,卻給世界環(huán)境...
    茶點故事閱讀 39,896評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望尿庐。 院中可真熱鬧忠怖,春花似錦、人聲如沸抄瑟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,742評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽锐借。三九已至,卻和暖如春往衷,著一層夾襖步出監(jiān)牢的瞬間钞翔,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工席舍, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留布轿,地道東北人。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓来颤,卻偏偏與公主長得像汰扭,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子福铅,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,494評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 為什么每個人都這么著急萝毛? 走進(jìn)任何書店,您將看到如何在24小時內(nèi)自學(xué)Java滑黔,以及無窮無盡的變體笆包,可以在幾天或幾小...
    慕雨九貍閱讀 179評論 0 0
  • 十年內(nèi)自學(xué)編程环揽。 研究人員(Bloom(1985)、Bryan&Harter(1899年)庵佣、Hayes(1989)...
  • 十年自學(xué)編程 彼得·諾維格 為什么每個人都這么著急歉胶? 走進(jìn)任何書店,您將看到如何在24小時內(nèi)自學(xué)Java巴粪,以及無窮...
    陳笑揚(yáng)閱讀 237評論 0 0
  • 十年內(nèi)自學(xué)編程 彼得·諾維格 為什么大家都這么著急通今? 走進(jìn)任何一家書店,您將了解如何在 24 小時內(nèi)自學(xué) Java...
    末世島嶼_e627閱讀 154評論 0 0
  • 夜鶯2517閱讀 127,717評論 1 9