亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專欄INFORMATION COLUMN

編程新手如何更好地提問

Salamander / 2121人閱讀

摘要:如果你也曾遭遇這樣的問題,或今后打算在編程社區(qū)里成長(zhǎng),請(qǐng)務(wù)必看看我接下來要說的東西如何正確地在編程社區(qū)提問絕大部分得不到滿意回答甚至引來不滿的問題,都是問題本身的原因。對(duì)新手來說,的可能性更大。

學(xué)編程難免遇到問題,遇到問題難免要上網(wǎng)求助。然而有過不少同學(xué)向我訴苦,說 在網(wǎng)上提問沒有人回答,有的還收到一些不是很友好的回復(fù) 。我自己也在經(jīng)常上的論壇上目睹過類似的帖子。以至于有人說,程序員社區(qū)就是對(duì)新人不友好,不愿幫助新人,甚至說這是怕別人學(xué)會(huì)了來搶飯碗。

對(duì)此我想正名一下,程序員們大多很單純,而且這或許是 這個(gè)星球上最樂于分享的群體 。但在這個(gè)充滿理性、邏輯至上的群體里,有著自己一套規(guī)則。當(dāng)一個(gè)不懂規(guī)則的人出現(xiàn)在群體中,往往會(huì)被“教做人”。

如果你也曾遭遇這樣的問題,或今后打算在編程社區(qū)里成長(zhǎng),請(qǐng)務(wù)必看看我接下來要說的東西:

如何正確地在編程社區(qū)提問?

絕大部分得不到滿意回答甚至引來不滿的問題,都是問題本身的原因。我本人在網(wǎng)上回答了這么多年問題,也經(jīng)常是深感困擾。提出一個(gè)好問題,對(duì)于提問者和回答者,都有很大幫助。

提問前準(zhǔn)備

當(dāng)你打算上網(wǎng)求助前,先問自己2個(gè)問題:

搜索 了沒有?

檢查 了沒有?

學(xué)編程,你不是一個(gè)人。幾乎所有你遇到的坑,都有前人踩過,搜索一下就會(huì)有答案。各種文檔、教程里的內(nèi)容也都會(huì)包含在網(wǎng)頁結(jié)果中。搜索的關(guān)鍵是如何描述問題,所以要學(xué)會(huì)看報(bào)錯(cuò),能找到報(bào)錯(cuò)中的關(guān)鍵信息。關(guān)于更多搜索的技巧,參考之前的文章《編程初學(xué)者如何使用搜索引擎》。

編程屆有兩個(gè)詞: RTFM 、 STFW ,含義我不解釋,自己去查。當(dāng)有人在你問題下回復(fù)類似詞時(shí),想想自己有沒有動(dòng)手搜索過。

如果網(wǎng)上找不出你的問題,有幾種可能:1.關(guān)鍵詞選得不準(zhǔn)確;2.你確實(shí)碰上了特殊情況;3.你犯了某些低級(jí)錯(cuò)誤。對(duì)新手來說,3的可能性更大。所以請(qǐng)務(wù)必自己檢查下, 單詞拼寫對(duì)不對(duì)、標(biāo)點(diǎn)是不是英文、縮進(jìn)空格對(duì)不對(duì)、括號(hào)引號(hào)是否成對(duì)、文件路徑是否正確 ……

排除低級(jí)錯(cuò)誤外,你還應(yīng)當(dāng)對(duì)錯(cuò)誤做定位,盡量縮小范圍,增加必要的輸出。這在提問時(shí)也會(huì)極大方便回答者。而且我也經(jīng)常跟人說,當(dāng)你自己把必要的值都輸出出來看清楚后,通常問題已經(jīng)很明顯了。關(guān)于 debug 的技巧,參考之前的文章《開發(fā)5分鐘,調(diào)試2小時(shí) - 該如何debug?》

提問的內(nèi)容

一個(gè)好的問題,應(yīng)當(dāng)是 準(zhǔn)確、具體、簡(jiǎn)潔、完整 ,也就是既要清楚地表達(dá)了問題涉及的信息,又不要夾雜無關(guān)的噪音。

具體來說,通常應(yīng)包括這幾種信息:

問題的表現(xiàn)

平臺(tái)版本

輸出的 報(bào)錯(cuò)信息

相關(guān)部分的 代碼

最好還附上你的 屏幕截圖 (避免你沒意識(shí)到的錯(cuò)誤)以及中間變量的 輸出 (方便回答者,同時(shí)也說明你自己嘗試過)。

特別說一下附上的代碼。對(duì)新手來說,最好 同時(shí)提供截圖和代碼文字 ,截圖是展示電腦上的真實(shí)情況,文字是方便別人復(fù)現(xiàn)。如果你的代碼短,就全部發(fā)上;如果是很多代碼文件的項(xiàng)目,請(qǐng)自己先做初步的定位,只發(fā)關(guān)鍵部分的代碼。

如果你是在論壇、問答網(wǎng)站上發(fā)帖,取個(gè)好標(biāo)題很重要。 把問題在標(biāo)題里簡(jiǎn)要描述清楚 遠(yuǎn)好過“求助!在線等!挺急的”這種無意義的標(biāo)題。

提問的形式

提問時(shí),要選擇 合適的地方,說合適的話 。

比如你在一個(gè)進(jìn)階論壇中問初學(xué)者的問題,往往會(huì)遭到排斥。反過來也不合適。比較可惜的是,在編程屆,進(jìn)階、深入的論壇更多,初學(xué)者論壇則較少。所以如果你愿意, 歡迎來我們的論壇提問 ,當(dāng)然別忘了上面說的幾點(diǎn)。

而至于什么才是合適的話,這個(gè)比較難把握??偟膩碚f, 禮貌永遠(yuǎn)是好的 ,沒人愿意搭理傲慢、粗魯?shù)奶釂枴5袝r(shí)候, 效率比禮貌更重要 。比如 StackOverflow 就禁止打招呼、感謝,因?yàn)檫@會(huì)帶來無效信息。你只需要精確描述問題、采納優(yōu)秀回答即可。同樣,當(dāng)你給別人提問時(shí),直接了當(dāng)?shù)卣f明問題,絕對(duì)不要一句“你好,在嗎?”,等到回復(fù)再來一句“我可不可以問你一個(gè)問題?”這樣留言?;蛟S你覺得這是禮貌,但對(duì)于別人來說,本來一次就可以回復(fù)的事情,硬生生被拖成幾個(gè)小時(shí),可能根本就不理你了。

而當(dāng)你發(fā)布在網(wǎng)上的問題最終被解決后, 在問題后附上解法說明 ,按社區(qū)規(guī)則 采納/點(diǎn)贊 有用的答案,是值得推薦的做法。對(duì)于回答者來說,這比一句口頭贊賞更禮貌。

提問的禁忌

上面說了些建議,如果你還不夠理解,那么請(qǐng)記住,不要像這樣提問:

搜一步就可以解決的問題 。比如“Python 里怎么讀取一個(gè)文件的內(nèi)容?”

X-Y 問題 。所謂 X-Y 問題,就是你要解決 X 問題,你認(rèn)為可以用 Y 方法解決,然后你就問怎么實(shí)現(xiàn) Y,但其實(shí) X 問題根本就有更合適的解法。比如“我怎么取一個(gè)字符串的后3位?”,而實(shí)際他想解決的是“怎樣獲取文件的文件類型?”

籠統(tǒng)而抽象的問題 。比如“我能不能學(xué)會(huì) Python?”。這個(gè)問題被問的頻率很高,但這不該問別人,問你自己。

不要亂猜原因 ,甚至聲稱是別人代碼的 bug。你需要客觀描述和分析問題。比如“我一輸比10大的數(shù)就不對(duì),是不是 Python 在我電腦上有問題?”

不要把多個(gè)問題混為一談 ,分清楚因果。代碼有不止一個(gè)錯(cuò)誤是很正常的,如果別人的方法讓你的報(bào)錯(cuò)發(fā)生變化,說明對(duì)上一個(gè)問題起了作用,這種情況需要進(jìn)一步分析,而不是立刻回復(fù)一句“按照你的方法改了還是不行”。(這種屬于真的不禮貌,會(huì)讓回答者不想再理你)

在開放的論壇、討論組、問答網(wǎng)站,盡量 不要通過發(fā)私信、加好友 的方式來提問。(事實(shí)上,這種方式大多也無效)

不要妄想讓別人替你調(diào)試 bug、寫作業(yè)、開發(fā)。

一個(gè)糟糕問題的例子:

哪位懂Python的幫我看下這是什么問題?  
(一張幾十行的代碼截圖)

一個(gè)好問題的例子:

我的程序里將輸入和變量比較大小,結(jié)果報(bào)錯(cuò),請(qǐng)問是為什么?  
我是Python3
報(bào)錯(cuò):TypeError: "<" not supported between instances of "int" and "str"
(代碼+輸出的截屏、代碼文本)

一個(gè)更好問題的例子:

我的程序里將輸入和變量比較大小,結(jié)果報(bào)錯(cuò),請(qǐng)問是為什么?  
我是 Windows 下的 Python 3.7
報(bào)錯(cuò):TypeError: "<" not supported between instances of "int" and "str"
提示是第11行:if answer < num:
我在前面加了 print,兩個(gè)變量都是有值的。
(代碼+輸出的截屏、代碼文本)

提問的本質(zhì)還是思考 。如果你能提出一個(gè)好問題,必定是對(duì)問題思考后的結(jié)果。這對(duì)你本身也是一種練習(xí)。不思考就直接提問,既浪費(fèi)了鍛煉的機(jī)會(huì),也很難得到滿意答復(fù)。

從另一個(gè)角度來說,天下沒有免費(fèi)的午餐(也許有,但必另有所圖),不要把別人回答你當(dāng)做一件理所當(dāng)然的事情。所以 請(qǐng)尊重別人的勞動(dòng),并盡可能讓別人樂于回答你 。 不要提糟糕的問題 就是最基本的要求。

說了這么多,你也不要因此而不想提問題。該問的還是得問, 要敢于提問和討論 ,甚至要上 StackOverflow 等英語網(wǎng)站去問。不然怎么提高自己?不但要問,還要回答, “教”是最好的“學(xué)” 。當(dāng)你能向別人解釋清楚一個(gè)東西時(shí),才是你真的理解了它。既回饋了社區(qū),又提升了自己,何樂而不為?

Crossin的編程教室永遠(yuǎn)歡迎好問題。

最后,編程有篇很經(jīng)典的文章,推薦給大家:
How To Ask Questions The Smart Way
http://www.catb.org/~esr/faqs/smart-questions.html
【中文版】 提問的智慧
https://github.com/FredWe/How-To-Ask-Questions-The-Smart-Way/blob/master/README-zh_CN.md

上述這一切,不僅針對(duì)編程。

════
其他文章及回答:
如何自學(xué)Python | 新手引導(dǎo) | 精選Python問答 | Python單詞表 | 人工智能 | 嘻哈 | 爬蟲 | 我用Python | 高考 | requests | AI平臺(tái) | 計(jì)算機(jī)視覺
歡迎搜索及關(guān)注: Crossin的編程教室

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/42634.html

相關(guān)文章

  • [譯] 如何恰當(dāng)學(xué)習(xí) JavaScript

    摘要:原文鏈接恰當(dāng)?shù)貙W(xué)習(xí)適合第一次編程和非的程序員持續(xù)時(shí)間到周前提無需編程經(jīng)驗(yàn)繼續(xù)下面的課程。如果你沒有足夠的時(shí)間在周內(nèi)完成全部的章節(jié),學(xué)習(xí)時(shí)間盡力不要超過周。你還不是一個(gè)絕地武士,必須持續(xù)使用你最新學(xué)到的知識(shí)和技能,盡可能地經(jīng)常持續(xù)學(xué)習(xí)和提高。 原文鏈接:How to Learn JavaScript Properly 恰當(dāng)?shù)貙W(xué)習(xí) JavaScript (適合第一次編程和非 JavaSc...

    Jason 評(píng)論0 收藏0
  • Python

    摘要:最近看前端都展開了幾場(chǎng)而我大知乎最熱語言還沒有相關(guān)。有關(guān)書籍的介紹,大部分截取自是官方介紹。但從開始,標(biāo)準(zhǔn)庫為我們提供了模塊,它提供了和兩個(gè)類,實(shí)現(xiàn)了對(duì)和的進(jìn)一步抽象,對(duì)編寫線程池進(jìn)程池提供了直接的支持。 《流暢的python》閱讀筆記 《流暢的python》是一本適合python進(jìn)階的書, 里面介紹的基本都是高級(jí)的python用法. 對(duì)于初學(xué)python的人來說, 基礎(chǔ)大概也就夠用了...

    dailybird 評(píng)論0 收藏0
  • UCloud用戶社區(qū)UClub新手使用指南

    摘要:用戶社區(qū)的使用用戶社區(qū)為實(shí)名制社區(qū),在提問回復(fù)或發(fā)文評(píng)論前必須綁定手機(jī)號(hào)才能夠正常發(fā)帖。官方有權(quán)對(duì)灌水違法違規(guī)不文明內(nèi)容進(jìn)行刪除。親愛的小伙伴你好!首先感謝你來到UCoud用戶社區(qū),期待你的加入!UClub用戶社區(qū)旨在為UCloud用戶及廣大云計(jì)算愛好者提供一個(gè)開放的學(xué)習(xí)交流平臺(tái)。為了你能更好地使用UCloud用戶社區(qū),請(qǐng)你花費(fèi)3分鐘仔細(xì)閱讀,閱讀完成后將獲得10積分。UCloud用戶社區(qū)的...

    Tecode 評(píng)論0 收藏0
  • Llama3-8中文微調(diào)完成!更好幫助中文寫作、編程和數(shù)學(xué)

    Llama3-8B-Chinese-Chat 是基于 Meta-Llama-3-8B-Instruct 模型通過 ORPO進(jìn)行微調(diào)的中文聊天模型。與原始的 Meta-Llama-3-8B-Instruct 模型相比,此模型顯著減少了中文問題英文回答"和混合中英文回答的問題。此外,相較于原模型,新模型在回答中大量減少了表情符號(hào)的使用,使得回應(yīng)更加正式。與 Llama-3-8B-nsturc...

    UCloud小助手 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<