當前位置:
首頁 > 知識 > 哈,如何命名竟然是程序員最難攻克的關卡?

哈,如何命名竟然是程序員最難攻克的關卡?

對於軟體開發人員來說,最大的難題是:如何命名(例如:給變數,類,函數和過程命名等等)。

該結果是來自 Quora 問答網站和更早的 Ubuntu 論壇跟帖的 4500 個開發者的投票。如何命名一項的選票幾乎是其他八項的投票結果的總和。

的確,這些基於自我篩選的群體的投票結果是完全不科學的。但是我認為這個結果還是有一定意義的,換句話說,如何命名的確是個很棘手的問題,許多非編程人員可能會意識不到。

對於這個結果,我多少有點意外,因為作為一個多年的開發人員,我不會投給這一項(我想我會投給「修改或維護別人的代碼」)。但是真正讓我驚訝的是,看起來好像不怎麼重要的命名居然排列第一,跟期待的結果實在差太遠了。

關於程序員在編程中對於命名的的痛苦和糾結如下觀點:

「我確實在編程的時候花了很多時間在考慮如何命名。」

「我不得不同意命名是一門藝術。」

「如果你想要提高代碼的可讀性,命名的確很重要。」

我認為最後一條抓住了部分核心,解釋了命名為什麼會這麼難,因為它太重要了。準確的命名可以提高代碼的可讀性,讓人容易理解,方便調試,也給以後修改和維護你的代碼的人帶來方便。一旦開始做了,很快你會發現要想出一個簡潔又準確的名字沒那麼容易。

Jeff Atwood 曾說:「想出好的命名的確很難,但是有難的道理,因為好的命名需要只用一兩個單詞出表達你的根本意思。」

而且,許多人認為,正確的命名能幫你寫出好的代碼。如果不能為一個變數或者函數想出一個清晰又簡潔的名字,那可能是你的代碼有問題。那樣的話,你就得考慮重寫或者進行代碼重構了。

「通常,如果你無法想出一個合適的名字,意味著你的設計可能有問題。你的一個方法里是不是實現了太多的功能?或者你的類的封裝,凝聚性不夠強?」

「我的經驗是如果無法給你的類想出一個合適的名字,大多數情況都是你的類有問題:你可能不需要這個類,它有點多餘了」

「命名難也不見得是壞事兒,它可以迫使你去認真思考你的類到底想要實現什麼功能。」

長話短說:如果你想要學習編程,一定要給自己準備一本好詞典。

對於開發人員來說什麼是最難的?你又有什麼好的觀點呢?

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Linux資訊速推 的精彩文章:

Windows or Linux,這是個問題!
Mozilla 測試 DNS over HTTPs

TAG:Linux資訊速推 |