自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

老碼農(nóng)的錦囊:10個編程技巧5個糾錯步驟,讓你的編程之路少點(diǎn)坎坷

開發(fā) 后端
在這篇文章里,他給所有的編程者提供了 10 個真誠而且實(shí)用的建議以及快速解決編程錯誤的5個步驟。

善始者實(shí)繁,克終者蓋寡,這句話用來學(xué)習(xí)編程的過程也很合適。在成為頂尖選手之前,總會遇到很多困難,甚至想放棄。本文作者 Jeff Hale 是 Medium 社區(qū)中非常有名的人工智能和技術(shù)領(lǐng)域的專欄作家。在這篇文章里,他給所有的編程者提供了 10 個真誠而且實(shí)用的建議以及快速解決編程錯誤的5個步驟。

[[318058]]

 

在我下決心將編程進(jìn)行到底之前,大概經(jīng)歷了四次放棄又撿起的過程,而且我觀察了一些數(shù)據(jù)科學(xué)的學(xué)生,這種事不光是我一個人做過。

緩慢且乏味的學(xué)習(xí)過程,隨之而來的挫折感,這些都是造成半途而廢的原因。因此,我開始思考如何消除那些本不必要但確實(shí)阻礙了人們成為合格程序員的困難。學(xué)習(xí)都會有困難的,但是我們至少要減少一些沒有必要的障礙。

這里有 10 個技巧可以幫助你更快地跨越障礙,獲得更多的成就感。如果你已經(jīng)寫了很多年的代碼,這里的許多技巧可能顯得用處不大,但是對新手來說就是另外一回事了。而且就算你是個編程老手,也可能會看到一兩個節(jié)省時間的小竅門呢!

十個小技巧

分屏

在大多數(shù)情況下,我建議你在學(xué)習(xí)編程的時候把屏幕分成兩個并排的面板——一個給你的 Jupyter notebook,另一個放瀏覽器,瀏覽器用來查看文檔、Stack Overflow 和一些教程。如果你的屏幕很小,建議在負(fù)擔(dān)得起的前提下?lián)Q個大點(diǎn)的顯示器。在美國,你可以花 100 多美元在亞馬遜 (Amazon) 上買到一臺 25 英寸的顯示器。等你越來越熟練的時候,你就會想要專注于一件工作——這時候可以用鍵盤快捷鍵在分屏和全屏之間切換。在 Mac 上,我喜歡用 BetterSnapTool,如果你的系統(tǒng)是 Windows,可以到這篇文章(https://www.excelcampus.com/tips/split-screen-view-windows-mac/)上看看。

屏蔽干擾

讓電腦和手機(jī)靜音。如果可以的話,把手機(jī)拿開。如果你在一個嘈雜的地方,播放一些安靜的純音樂或者使用降噪耳機(jī)。你越能集中注意力,你就能學(xué)得越快。

親手把示例代碼寫一遍

你不可能讀一遍教程就能記住這些內(nèi)容,復(fù)制粘貼沒有什么實(shí)際價值,你必須先自己寫一遍,然后想想怎么擴(kuò)展一下,最后根據(jù)記憶打出來?!咐碚撋?,理論和實(shí)踐之間沒有區(qū)別。但實(shí)際上是有的?!?mdash;—本杰明·布魯斯特(不是約吉·貝拉最先說的)。

溫故知新

學(xué)習(xí)一個新概念之后,在幾天內(nèi)再測試一下自己。研究表明,需要長期記住一件事時,每隔一段時間重復(fù)一次比直接死記硬背更有效。

通過教別人來學(xué)習(xí)

能教會別人,說明自己徹底懂了。向別人清楚地解釋一個概念(口述或是書面都行)會迫使你理解這個概念的本質(zhì),建立關(guān)系,并創(chuàng)建類比,使得頭腦中的聯(lián)系得以鞏固。這個技巧是 Feynman 學(xué)習(xí)技巧的一部分。

打好語言基礎(chǔ)再調(diào)庫

在使用編寫好的程序庫之前,要充分理解一門編程語言。學(xué)習(xí)變量類型可能很無聊,調(diào)用帶有屬性和方法的類似乎比較高級。但是一旦你很好地理解了一門語言,這個庫的使用會容易得多。這樣可以減少錯誤,節(jié)省大量時間。

一次只學(xué)一個東西

不要試圖同時學(xué)習(xí)兩個東西,這樣你學(xué)習(xí)的時間不只是變成兩倍,而是變成十倍。同理, 不要分心于閃閃發(fā)光的東西。找個地方,把那些誘人但和你正在學(xué)習(xí)的東西不相關(guān)的 url 保存一下,Chrome 的插件 One Tab 就很好用。

睡覺,鍛煉,保持復(fù)原能力

讓你的大腦處于最好的狀態(tài),保持神經(jīng)連接的活躍。如果想要了解更多幫助你保持好狀態(tài)的技術(shù),可以看一下 Memorable Python 這本書。

加快打字速度

你打特殊符號的次數(shù)越多,你打字速度就越快。然而,你只要做一件小事就能很大程度上加快這個過程——學(xué)習(xí)好的觸摸打字方式。這個網(wǎng)站(http://www.speedcoder.net/lessons/py/1/)里是一個 SpeedCoder 的相關(guān)練習(xí)。

學(xué)會使用快捷鍵

這里整理了三份快捷鍵使用方法:

  • Chrome 瀏覽器:https://support.google.com/chrome/answer/157179?hl=en)
  • Mac :https://support.apple.com/en-us/HT201236
  • Windows :https://support.microsoft.com/en-us/help/12445/windows-%20keyboard-

如果你是數(shù)據(jù)科學(xué)家或數(shù)據(jù)分析師,我在 Github 中對 Jupyter Lab 的快捷鍵做了整理 (https://gist.github.com/discdiver/9e00618756d120a8c9fa344ac1c375ac)。通過在~/的 Bash 配置文件中添加 ~/.bash_profile:alias gs="git status"就可以為 Mac 或 Linux 終端創(chuàng)建快捷方式。然后重新啟動你的終端,這時候你需要鍵入的就是兩個按鍵而不是兩個單詞了。

福利:如何快速解決代碼中的錯誤

這個話題太大了,但是卻并沒有得到足夠的重視,我也因此在考慮是否需要寫一篇。這部分算是福利:「一個快速解決錯誤的五步法」。

老碼農(nóng)的錦囊:10個編程技巧5個糾錯步驟,讓你的編程之路少點(diǎn)坎坷

每一個程序員都會碰到很多錯誤。當(dāng)你有經(jīng)驗(yàn)時,碰到錯誤大概就只會聳聳肩,因?yàn)槟憧梢栽谝环昼妰?nèi)解決它們。

但是對于新手來說,一個錯誤可能會耗費(fèi) 20 倍甚至更多的時間去解決。對于初學(xué)者來說,錯誤會讓你覺得正在腳踝深的泥漿中跋涉。

[[318059]]

 

這五個步驟可以幫你快速解決 95% 的錯誤。

看看是不是代碼打錯了

有可能少括號,或者是變量或函數(shù)拼寫錯誤。所以一定要在提供代碼高亮顯示的軟件中進(jìn)行輸入,以避免錯誤或是快速修復(fù)縮進(jìn)、少括號和類似錯誤。有很多好的代碼編輯器可供選擇。如果你是新手,我建議你使用 VSCode——它擁有最大的市場份額,而且是免費(fèi)的,并且有很多方便的功能。

先讀錯誤信息里的開頭和結(jié)尾

相比于開頭和結(jié)尾,錯誤信息的中間部分沒那么有用。之后再看你的代碼,看看你是否能夠根據(jù)錯誤消息中的提示找出問題所在。如果無法快速解碼錯誤信息,請將信息的最后一行復(fù)制并粘貼到谷歌中(如果使用的是 Python),其他語言可能在這之前也有錯誤消息)。新手最大的錯誤是沒有盡快用谷歌來查詢錯誤信息。

老碼農(nóng)的錦囊:10個編程技巧5個糾錯步驟,讓你的編程之路少點(diǎn)坎坷

 

 

對網(wǎng)絡(luò)資源進(jìn)行篩選以分清良莠

這一部分列舉一些快速找到高質(zhì)量資源的啟發(fā)性方法吧。Stack Overflow、Medium、Reddit、Hacker News、Dev 和其它的線上社區(qū)會有反饋機(jī)制(如贊等)來顯示哪些答案是高質(zhì)量的。這些方法并不完美,但是通常效果也挺好的。大部分解決方案都是在 Stack Overflow、 Towards Data Science、GitHub 中對應(yīng)問題的 issues 板塊中找到的。

[[318060]]

 

在谷歌的搜索結(jié)果中,博客的質(zhì)量是成敗的關(guān)鍵。如果你用的是 Python,我可以根據(jù)我的經(jīng)驗(yàn)推薦一些好的網(wǎng)站:

  • Real Python (https://realpython.com/)
  • Data School (https://www.dataschool.io/)
  • Dataquest Blog (https://www.dataquest.io/blog/)
  • DataCamp Blog (https://www.datacamp.com/community/blog)
  • Practical Business Python (https://pbpython.com/)
  • Chris Albon (https://chrisalbon.com/#machine_learning)

過濾舊資源

對于大多數(shù)問題,你需要的是近幾年的資源。因此當(dāng)在谷歌上搜索一個錯誤的解決方案時,你可以過濾掉舊的結(jié)果,比如在搜索條件里設(shè)置時間限制,或者在查看結(jié)果片段時通過大體掃一遍來肉眼過濾等。

老碼農(nóng)的錦囊:10個編程技巧5個糾錯步驟,讓你的編程之路少點(diǎn)坎坷

 

就比如說,如果你剛開始接觸 Python, 2009 年有關(guān) Python 2 的內(nèi)容可能對您沒有幫助。

API 在不斷發(fā)展,過去使用的方法通常在現(xiàn)在并不適用。你更有可能在相對近期的結(jié)果中找到一個適用的答案。

讀懂錯誤信息

這個網(wǎng)站(https://inventwithpython.com/blog/2012/07/09/16-common-python-runtime-errors-beginners-find/)記錄了常見錯誤信息在 Python 中的含義,這個網(wǎng)站(https://pythonforbiologists.com/29-common-beginner-errors-on-one-page)則可以幫助你解決常見的 Python 錯誤。

如果在用 Python 的 pandas 庫來做數(shù)據(jù)處理,有很多常見的錯誤。這個網(wǎng)頁(https://gist.github.com/discdiver/2f8df1c3f1c66f47129568a82c0666e5)里是我用 Jupyter notebook 整理的常見錯誤及其解決方案。

總結(jié)

只要有正確的心態(tài)、一些指導(dǎo)和大量的實(shí)踐,任何人都可以學(xué)會編程。這個過程可能沒那么快也不算簡單,但希望這篇文章能使這個過程變得不那么令人沮喪。 

 

責(zé)任編輯:龐桂玉 來源: 今日頭條
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號