在线看片av久草草视频观看|日韩一级片手机在线观看|91人人看人人日韩无码第1页|国产一级无码成人片|精品国产乱伦一区二区三区|欧美极品精品在线|日本无码网站亚洲无码一二区|成人免费电影无码日韩|深爱激情乱伦五月天|欧洲亚洲有码无码a v

學(xué)習(xí)方法

學(xué)習(xí)新的編程語(yǔ)言的方法

時(shí)間:2022-10-05 21:25:30 學(xué)習(xí)方法 我要投稿
  • 相關(guān)推薦

學(xué)習(xí)新的編程語(yǔ)言的方法

  一種新的編程語(yǔ)言怎么樣學(xué)習(xí)比較快?看看下面吧!

學(xué)習(xí)新的編程語(yǔ)言的方法

  1. 將其與類似的語(yǔ)言進(jìn)行比較。

  當(dāng)你首次觀看有關(guān)該語(yǔ)言的第一個(gè)教程或閱讀代碼時(shí),請(qǐng)嘗試猜測(cè)該語(yǔ)言的每個(gè)部分將會(huì)做什么,并檢查你的判斷是否正確。

  如果記筆記可以幫助你整合信息,請(qǐng)拿起一張紙并記下三個(gè)列表:

  看起來(lái)很熟悉的東西,并且做了預(yù)期中的事

  看起來(lái)很熟悉的東西,但做了意料之外的事

  看起來(lái)完全是新的東西

  例如,如果我用來(lái)自 Python 和 C 背景的 Rust 代碼進(jìn)行此練習(xí),那么在第一個(gè)列表中,我會(huì)放上用于表示范圍的花括號(hào),!(看起來(lái)像是布爾類型的 非,但實(shí)際上是 Rust 中的宏定義)則放在第二個(gè)列表,類型簽名語(yǔ)法(type signature syntax)放在第三個(gè)列表。

  如果你保留著初始列表的副本,一旦你更熟練,可使用它通過(guò)語(yǔ)言反思你的進(jìn)展,并提醒自己在嘗試向其他人講授該語(yǔ)言時(shí),有哪些看起來(lái)不熟悉的概念。

  2. 閱讀語(yǔ)言的官方文檔。

  如果希望在使用之前吸收大量信息,從閱讀語(yǔ)言的參考資料中可能會(huì)受益。

  不用擔(dān)心它們會(huì)對(duì)你催眠,參考文獻(xiàn)通常是用于查找使用,而不是用來(lái)記憶。

  3. 使用互聯(lián)網(wǎng)搜索。

  搜索網(wǎng)絡(luò)是一個(gè)很好的方式,可提供有關(guān)特定錯(cuò)誤和一般最佳做法的信息。

  當(dāng)收到錯(cuò)誤信息時(shí),應(yīng)搜索信息中看起來(lái)是錯(cuò)誤的獨(dú)一無(wú)二的部分,但不是代碼唯一的部分。

  例如,如果錯(cuò)誤提示 "Error on line 53: Invalid argument exception(錯(cuò)誤在第 53 行:無(wú)效的參數(shù)異常)",以語(yǔ)言名稱和字符串 “Invalid argument exception” 這樣的組合搜索,以找到最佳的結(jié)果。

  記住要將錯(cuò)誤信息中的所有引用內(nèi)容都包含在內(nèi)。

  還可以在網(wǎng)絡(luò)中搜索有關(guān)解決語(yǔ)言中特定問(wèn)題的最佳做法的博文。

  評(píng)估搜索結(jié)果中顯示的博客帖子的質(zhì)量和決定認(rèn)真采用他們的建議時(shí),請(qǐng)查看作者的公共代碼組合以及發(fā)布日期。

  4. 與社區(qū)接觸。

  雖然博客和新聞文章具有大量有用的信息,但是你嘗試編寫(xiě)的特定代碼片段總會(huì)有些微妙之處。

  不要害怕在郵件列表中發(fā)帖,或加入 IRC 和 Slack 頻道以尋求幫助。

  要提出有幫助的回復(fù)的問(wèn)題,請(qǐng)確保在正確的地方提問(wèn)。

  許多語(yǔ)言都有 “初學(xué)者” 郵件列表或聊天頻道,專門(mén)針對(duì)可能會(huì)頻繁詢問(wèn)的問(wèn)題而建立。

  當(dāng)提出問(wèn)題時(shí),請(qǐng)務(wù)必先總結(jié)準(zhǔn)備做什么、已做過(guò)的東西以及發(fā)生的情況。

  盡量為專家提供足夠的上下文來(lái)了解問(wèn)題,但不需要無(wú)關(guān)緊要的細(xì)節(jié)。

  提出問(wèn)題后,請(qǐng)務(wù)必堅(jiān)持一段時(shí)間來(lái)聽(tīng)取建議或會(huì)回答你的疑問(wèn)可能產(chǎn)生的后續(xù)問(wèn)題。

  5. 編寫(xiě)玩具程序。

  一次練習(xí)一個(gè)新的概念,很少有任務(wù)可打敗只使用某個(gè)概念的玩具程序。

  你可以將重點(diǎn)放在盡可能讓你的代碼清潔和慣用性上。

  如果你將解決 Project Euler 或 Rosetta Code puzzle 作為玩具程序,則可以將你的解決方案與其他使用相同語(yǔ)言編寫(xiě)的解決方案進(jìn)行比較。

  6. 使用該語(yǔ)言編寫(xiě) “生產(chǎn)就緒(Production-Ready)” 的代碼。

  玩具程序是一個(gè)很好的第一步,但在更逼真的的環(huán)境中使用一門(mén)語(yǔ)言可幫助探索其現(xiàn)實(shí)使用中的優(yōu)勢(shì)和挑戰(zhàn)。

  考慮將一個(gè)熟悉的、相對(duì)較小的、經(jīng)過(guò)良好測(cè)試的程序移植到新的語(yǔ)言,以探索其在現(xiàn)實(shí)使用的應(yīng)用。

  7. 閱讀一本關(guān)于這門(mén)語(yǔ)言的書(shū)籍。

  如果有好幾本有用的書(shū),比較它們的評(píng)論,并考慮哪位作者的背景和自己的最相似。

  現(xiàn)在有很多電子書(shū)可以免費(fèi)在線閱讀。

  在購(gòu)買有關(guān)該語(yǔ)言的書(shū)籍之前,請(qǐng)先查看書(shū)籍出版的日期以及其示例所涵蓋的語(yǔ)言版本。

  如果使用的是較舊的書(shū)籍,請(qǐng)務(wù)必使用其所使用的語(yǔ)言版本的示例。

  還要在網(wǎng)上調(diào)查一下,以了解自出版以來(lái)語(yǔ)言發(fā)生了怎樣的變化。

  8. 觀看講座和課程。

  如果你學(xué)習(xí)的語(yǔ)言在在線課堂中有講授,那么視頻應(yīng)該是公開(kāi)的。

  除了學(xué)術(shù)講座之外,還可以考慮尋找錄制講座、會(huì)議談話和有關(guān)該語(yǔ)言的博客。

  當(dāng)在看電視時(shí),談?wù)勀愕男抡Z(yǔ)言是一個(gè)將學(xué)習(xí)融入日常生活很好的方式。

  9. 閱讀示例代碼。

  大多數(shù)關(guān)于編程語(yǔ)言的書(shū)籍都會(huì)包含代碼片段。

  你也可以在博客和 Rosetta Code 上找到示例代碼。

  運(yùn)行示例代碼、修改它們,并嘗試預(yù)測(cè)修改后會(huì)發(fā)生那些情況。

  10. 閱讀生產(chǎn)代碼。

  查找有關(guān)該語(yǔ)言所有類型和大小的項(xiàng)目的一種方法是在 GitHub 上搜索它。

  按最受歡迎或最具影響力進(jìn)行排序,你的熱門(mén)搜索將包括最受歡迎的開(kāi)源工具。

  如果想要了解開(kāi)源項(xiàng)目的設(shè)計(jì),可通過(guò)郵件列表或 IRC 來(lái)與社區(qū)進(jìn)行互動(dòng)。

  你甚至可能會(huì)發(fā)現(xiàn)一些 bug。

  11. 尋找好的工具。

  當(dāng)使用新的語(yǔ)言時(shí),可向其更有經(jīng)驗(yàn)的用戶請(qǐng)教,詢問(wèn)他們的開(kāi)發(fā)環(huán)境。

  你可能會(huì)發(fā)現(xiàn),一個(gè)特定的文本編輯器或 IDE 對(duì)于新語(yǔ)言的支持比你習(xí)慣通常使用的要好。

  調(diào)查在新語(yǔ)言生態(tài)系統(tǒng)中管理依賴關(guān)系、格式化、模糊化和單元測(cè)試代碼的選項(xiàng)。

  12. 保持你的熱情。

  入門(mén)新的語(yǔ)言很容易,但變得真正精通它通常是一個(gè)需要多年的旅程。

  慶祝一路上你的成功,并與追隨你腳步的學(xué)習(xí)者分享你所學(xué)到的知識(shí),保持著學(xué)習(xí)編程的興趣。

【學(xué)習(xí)新的編程語(yǔ)言的方法】相關(guān)文章:

如何學(xué)習(xí)一門(mén)編程語(yǔ)言10-09

c語(yǔ)言編程心得體會(huì)(精選15篇)01-17

c語(yǔ)言編程心得體會(huì)(通用8篇)12-09

編程的心得04-15

如何學(xué)好語(yǔ)言的學(xué)習(xí)方法10-07

數(shù)控編程論文10-08

編程培訓(xùn)心得09-26

編程實(shí)習(xí)心得10-09

計(jì)算機(jī)應(yīng)用軟件開(kāi)發(fā)的Java編程語(yǔ)言的論文10-08