成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

不惜一切代價(jià)要避免的35個(gè)糟糕的編程習(xí)慣

譯文
開發(fā) 后端
每個(gè)程序員需要認(rèn)識到哪些糟糕的編程方法,以便避而遠(yuǎn)之?這個(gè)問題最初出現(xiàn)在知識共享網(wǎng)站Quora上,一些見解獨(dú)特的人士在這個(gè)網(wǎng)站上回答引人注目的問題。

【51CTO.com快譯】 每個(gè)程序員需要認(rèn)識到哪些糟糕的編程方法,以便避而遠(yuǎn)之?這個(gè)問題最初出現(xiàn)在知識共享網(wǎng)站Quora上,一些見解獨(dú)特的人士在這個(gè)網(wǎng)站上回答引人注目的問題。

The Firehose Project的首席技術(shù)官兼聯(lián)合創(chuàng)始人肯·馬扎卡(Ken Mazaika)在Quora上回答了這個(gè)問題:

[[173750]]

有35個(gè)常見的糟糕編程習(xí)慣。

糟糕習(xí)慣可能不止這些,而這是我所能想起來的35個(gè)糟糕的編程習(xí)慣。我把最重要的兩個(gè)糟糕習(xí)慣列在第17個(gè)和第35個(gè),因?yàn)槲蚁M隳芸春谜麄€(gè)回答。我認(rèn)為你讀后會有所收獲。

1. 搞得你好像無所不知。別犯傻了,你不可能做到無所不知。那也很正常。

2. 整天開會。如果你把大部分時(shí)間花在開會上,就應(yīng)該考慮更合理地利用時(shí)間了。

3. 有人批評你的代碼時(shí),反應(yīng)過大。最優(yōu)秀的開發(fā)人員愿意抱著一種開放、坦率的心態(tài),探討自己編寫的代碼,以及如何改進(jìn)代碼。

4. 過早地放棄。太多的程序員離解決辦法只差一步,就在快要解決問題前一刻放棄。

5. 拒絕尋求幫助。通過向別人闡述自己的問題,你常常會發(fā)現(xiàn)解決辦法。這就是所謂的“小黃鴨調(diào)試法”(rubber duck debugging)。

6. 將責(zé)任推卸給他人。最可貴的開發(fā)人員敢于為自己編寫的代碼負(fù)責(zé)、并承擔(dān)責(zé)任。

7. 編寫過早優(yōu)化其他代碼的代碼。在大多數(shù)情況下,雖然全面優(yōu)化代碼可以獲得性能方面的優(yōu)勢,但是結(jié)果很難理解代碼,這是不值得的。

8. 忽視其他開發(fā)人員的意見。作為開發(fā)人員,最好的學(xué)習(xí)和成長途徑之一就是與經(jīng)驗(yàn)比自己更豐富的開發(fā)人員結(jié)對編程。要樂于尋求別人的意見。

9. 不知道如何優(yōu)化代碼。有些情況下性能是個(gè)大問題,比如以下方面存在問題:

·算法復(fù)雜性

·低效的數(shù)據(jù)庫操作

·第三方的API

·N+1查詢

出現(xiàn)性能問題時(shí),你需要知道如何分析性能問題,明白什么要花時(shí)間研究,以及如何解決這些問題。

10. 低估與團(tuán)隊(duì)其他成員之間的關(guān)系。你受雇來編寫代碼。但是你也需要能夠與團(tuán)隊(duì)的其他成員處理好關(guān)系。

11. 搞辦公室政治。有時(shí)候,其他開發(fā)團(tuán)隊(duì)會做出你覺得不正確的決定。但是只要你能完成你團(tuán)隊(duì)的目標(biāo),最好繞開其他團(tuán)隊(duì)的錯(cuò)誤,而不是針鋒相對。

12. 一遇到壓力,就呆若木雞。在用戶無法使用產(chǎn)品的場景下,你面臨巨大的壓力。你要養(yǎng)成保持冷靜、完成工作的能力。

13. 沒有能力編寫糟糕代碼。在現(xiàn)實(shí)世界中,需要結(jié)合下列因素做一些取舍:

·最后日期

·實(shí)驗(yàn)

·需要立即修復(fù)的緊急錯(cuò)誤

你要有這種心態(tài):可以編寫糟糕代碼,以滿足眼前的需求。

14. 針對簡單問題卻采用過度設(shè)計(jì)。面對容易處理的問題,別開發(fā)讓人困惑的解決方案。

15. 行為像老板,不像領(lǐng)導(dǎo)人。太多的開發(fā)人員不知道如何管理其他人。你應(yīng)該是其他開發(fā)人員尋求指導(dǎo)和指點(diǎn)的那個(gè)人,而不是僅僅下達(dá)逐步指示。

16. 使用不當(dāng)?shù)墓ぞ邅硖幚砉ぷ鳌?/strong>別再根據(jù)“這是我熟悉的東西”來做決定。你需要敢于使用不同的技術(shù)、語言和框架。

17. 拒絕研究編程問題。谷歌搜索引擎是程序員的工具箱中最強(qiáng)大的工具之一。

18. 不好好掌握工具。由于你要花大量的時(shí)間來使用文本編輯器、命令行及編寫代碼的其他工具等工具,有必要熟練掌握。花時(shí)間學(xué)習(xí)讓你更高效的技巧和竅門。

19. 避免錯(cuò)誤消息。代碼錯(cuò)誤經(jīng)常發(fā)生。它們還通常包括一些很寶貴的信息,表明什么出了錯(cuò),為何會出錯(cuò),哪幾行代碼觸發(fā)了問題。你應(yīng)該找出錯(cuò)誤信息,而不是竭力避免錯(cuò)誤信息。

20. 掰著指頭算時(shí)間。最優(yōu)秀的開發(fā)人員享受編寫代碼的時(shí)光,常常廢寢忘食、樂此不疲。哪怕你編程了10000小時(shí),也好像一如既往地?zé)釔劬幊獭?/p>

21. 拒絕從錯(cuò)誤中汲取教訓(xùn)。犯錯(cuò)后,應(yīng)當(dāng)縮小范圍,明白這三個(gè)方面:

1. 犯錯(cuò)的根本原因是什么?

2. 可以落實(shí)流程或行為,防止將來出現(xiàn)這種類型的錯(cuò)誤嗎?

3.越早發(fā)現(xiàn)錯(cuò)誤,影響就越小。

拒絕從錯(cuò)誤中汲取教訓(xùn)會導(dǎo)致你一再犯錯(cuò)。

22. 害怕丟掉代碼。要知道,花三天時(shí)間編寫錯(cuò)誤的解決方案會讓你更深刻地認(rèn)識到如何淪為分析癱瘓(analysis paralysis)的受害者。

23. 過分偏愛自己的開發(fā)工具包。一些開發(fā)人員喜歡名為vim的文本編輯器。有些人討厭它,喜歡名為emacs的文本編輯器。但是在一些場景下,使用一種而不是另一種是明智之舉。

24. 將自己與開發(fā)者社區(qū)脫離開來。到處都有編程社區(qū)。由于Railsbridge和Girl Develop It之類的組織,以及RubyConf和RailsConf之類的活動以及其他會議,許多社區(qū)等著你去發(fā)現(xiàn)。

25. 沒有推特帳戶。Ruby、Rails、JavaScript等大型開源項(xiàng)目及其他工具的開發(fā)者都擁有推特帳戶。花點(diǎn)時(shí)間在推特上,那樣你有機(jī)會了解設(shè)計(jì)你所用軟件的那些人的想法。

26. 不回饋社區(qū)。你應(yīng)該盡早擁抱編程社區(qū)。如果你這么做,會認(rèn)識到編程社區(qū)有多大的幫助、多么友好。

27. 花好多時(shí)間來解決問題,并且解決了問題,卻沒有記入文檔。你經(jīng)常會遇到網(wǎng)上還沒有人解決的某個(gè)奇怪的、很具體的問題。花時(shí)間自行搞定后,你有必要寫帖子分享或交流,那樣就能幫助下一個(gè)遇到這個(gè)問題的人。

28. 代碼中編寫的注釋不是太多就是太少。對開發(fā)人員來說,注釋是必不可少的說明。但與凡事講究個(gè)度,注釋也應(yīng)該適可而止。

29. 過于懶惰,不愿向產(chǎn)品經(jīng)理告知問題的最新情況產(chǎn)品經(jīng)理獲得及時(shí)的最新情況,并知道產(chǎn)品的狀態(tài)(在合理范圍內(nèi))很重要。如果你不及時(shí)告知問題的最新情況,這會帶來許多頭痛的問題。

30. 經(jīng)常把無關(guān)的功能捆綁到同一個(gè)項(xiàng)目中。很容易養(yǎng)成把兩個(gè)無關(guān)的功能分類到同一個(gè)項(xiàng)目中這種陋習(xí)。如果兩個(gè)不同的系統(tǒng)規(guī)模都很大,厘清問題會來得異常復(fù)雜。

31. 與團(tuán)隊(duì)的其他成員一起認(rèn)真地提出合理的計(jì)劃,結(jié)果發(fā)生某個(gè)意想不到的事情后,全面放棄計(jì)劃,完全改變路線。沒有比這更糟糕的事情了。

32. 堅(jiān)持執(zhí)行經(jīng)過全面考慮,卻明顯行不通的計(jì)劃。唯一比最后一刻放棄計(jì)劃更糟糕的莫過于拒絕停止執(zhí)行糟糕的主意。

33. 一再為編寫的糟糕代碼而道歉。如果你發(fā)現(xiàn)自己一再為編寫的糟糕代碼而道歉,這可能意味著你需要重新評估最后期限。

34. 沒有把精力花在進(jìn)行代碼審查這項(xiàng)工作上。開發(fā)團(tuán)隊(duì)是個(gè)整體,確保每個(gè)成員貢獻(xiàn)的代碼符合團(tuán)隊(duì)的高標(biāo)準(zhǔn),這是每個(gè)團(tuán)隊(duì)成員義不容辭的責(zé)任。

35. 沒有花足夠的時(shí)間來輔導(dǎo)團(tuán)隊(duì)的其他開發(fā)人員。確保你的團(tuán)隊(duì)在經(jīng)常學(xué)習(xí)、成長以及提高編程能力是你應(yīng)盡的工作。

我堅(jiān)信,每個(gè)開發(fā)人員都在不斷完善之中。所以有這些壞習(xí)慣完全很正常,沒什么大不了。實(shí)際上,作為開發(fā)人員或其他任何類型的專業(yè)人員,提升自我的關(guān)鍵在于遵循這三個(gè)步驟:

1.承認(rèn)自己有壞習(xí)慣。

2.找到改變壞習(xí)慣的動機(jī)。

3.消除壞習(xí)慣,養(yǎng)成好習(xí)慣,從而將這種動機(jī)付諸實(shí)踐。

【51CTO譯稿,合作站點(diǎn)轉(zhuǎn)載請注明原文譯者和出處為51CTO.com】

責(zé)任編輯:趙立京 來源: 51CTO
相關(guān)推薦

2020-12-25 15:22:09

CIO首席信息官云計(jì)算

2020-09-11 09:43:18

移動網(wǎng)絡(luò)測試網(wǎng)絡(luò)速度網(wǎng)絡(luò)通信

2022-01-11 10:50:35

數(shù)據(jù)治理CIOIT領(lǐng)導(dǎo)

2010-09-03 13:39:52

IT“奔三女”

2023-01-31 16:54:47

Linux端口

2017-09-02 15:38:16

2023-10-04 07:57:22

2020-03-17 14:53:17

vivo5G手機(jī)智能手機(jī)

2022-02-23 10:59:04

加密貨幣元宇宙代幣

2013-01-15 15:33:43

2023-12-29 07:54:33

AI智能體人工智能

2020-09-11 10:55:10

useState組件前端

2012-12-31 11:22:58

開源開放

2021-11-01 22:39:14

程序員專業(yè)技術(shù)

2021-02-28 09:47:54

軟件架構(gòu)軟件開發(fā)軟件設(shè)計(jì)

2018-11-23 11:17:24

負(fù)載均衡分布式系統(tǒng)架構(gòu)

2021-02-19 23:08:27

軟件測試軟件開發(fā)

2021-08-02 08:21:53

Python編程語言開發(fā)

2020-10-14 08:04:28

JavaScrip

2021-05-28 07:12:59

Python閉包函數(shù)
點(diǎn)贊
收藏

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

主站蜘蛛池模板: av黄色免费在线观看 | 日本羞羞影院 | 亚洲免费在线观看 | 91在线免费视频 | 在线黄| 欧美日本在线观看 | 免费爱爱视频 | 在线啊v| 黄色一级视频免费 | 精品一区二区观看 | 99精品一区二区三区 | 亚洲444kkkk在线观看最新 | 91视频在线 | 国产精品久久a | 日本一区二区高清视频 | 国产精品欧美精品 | 天天干精品 | 日韩国产一区二区三区 | 午夜影院在线观看 | 国产成人精品免费视频大全最热 | 99久久精品国产毛片 | 国产乱码精品一区二区三区中文 | 精品久久国产 | 国产精品99久久久久久动医院 | 日韩成人影院 | 日本aⅴ中文字幕 | 在线一区二区三区 | 精品国产一区二区三区久久久久久 | 午夜男人免费视频 | 97国产成人 | 日韩精品在线看 | 一级a爱片久久毛片 | 国产成都精品91一区二区三 | 国产视频久久 | 国产精品一区在线观看你懂的 | 中文字幕av高清 | 中文字幕日韩欧美一区二区三区 | 国产精品国产三级国产aⅴ中文 | 成人免费视频久久 | h免费观看| 99国产精品一区二区三区 |