Photo by James Pond on Unsplash
注意這些,以便您可以更好地改變自己
我們都有好壞習慣。 編程習慣也不例外。 但是,一旦您開始意識到自己的不良習慣,就可以使自己變得更好。 如果您要打破此列表中的這些不良習慣之一,您不僅會影響自己。 最有可能還會影響您周圍的人。
而且,由于今天比明天更容易擺脫不良習慣,因此我們將介紹這六種編程習慣,這些習慣會使您效率下降。
1.參加會議
會議-它們可能是第一大生產(chǎn)力殺手。 但是,大多數(shù)開發(fā)人員仍然參加太多的會議。 會議涉及兩種類型的開發(fā)人員。
第一組將跳過每次會議,以花時間在他們的鍵盤后面。 該小組認為大多數(shù)會議都是浪費時間,最好做一些實際的工作。
第二組則相反。 該小組抓住一切機會參加預定的每個會議。
如果您發(fā)現(xiàn)自己屬于第二類,那是在浪費很多時間,這些時間本來可以花在編寫代碼和提高生產(chǎn)力上。
會議的事情是,即使可以在不到半小時的時間內(nèi)處理議程,大多數(shù)會議默認都安排為一個小時。 會議的意義是我們可以拒絕很多會議。 或者,也許在中午之前開始對會議拒絕發(fā)言,這樣您便可以在早晨提高工作效率。 而且,如果您真的必須對會議說"是",那么至少要對長時間的會議說"不"。
當您不想做任何事情時,會議都是必不可少的-John Ke.NETh Galbraith
2.過度工程
過度設計是許多開發(fā)人員往往具有的不良習慣之一。 查看代碼庫時,您經(jīng)常會發(fā)現(xiàn)過度設計的代碼段。
過度設計的根本原因在于,您會使產(chǎn)品的設計變得比所需的更堅固或更復雜。 將過度工程引入代碼庫的一種方法是,開發(fā)人員已經(jīng)添加了他認為將來可能會有用的代碼。
這段額外的代碼已添加到代碼庫中,但可能永遠不會使用。 在大多數(shù)情況下,構(gòu)建比實際需要更多的東西的原因是基于推測。 解釋過度工程的最好方法也許是,代碼可以解決不存在的問題。
過度設計可能會導致代碼被設計得過于通用,以致于忽視了最初設計要執(zhí)行的主要任務。 因此,它不僅變得難以使用,而且從根本上變得不智能。
3.編寫自己的數(shù)據(jù)結(jié)構(gòu)
編寫自己的數(shù)據(jù)結(jié)構(gòu)屬于重新發(fā)明輪子的范疇。 養(yǎng)成一個極其低效的習慣。 您需要的所有數(shù)據(jù)結(jié)構(gòu)已經(jīng)準備就緒,可以使用了。 在大多數(shù)情況下,無需重新創(chuàng)建特定的數(shù)據(jù)結(jié)構(gòu)。
而且,數(shù)據(jù)結(jié)構(gòu)并不是開發(fā)人員試圖徹底改變局面的唯一示例。 開發(fā)人員常常傾向于重新創(chuàng)建某些代碼。
如果相同的代碼段已經(jīng)存在并且已知是穩(wěn)定且維護得很好的,那就選擇該路線。 您的版本沒有添加任何新內(nèi)容,甚至更糟的是缺少功能。 它可能引入的唯一新事物是錯誤或約束。
重塑車輪也有積極的一面。 如果您想對某些事物有更深入的了解,最好重新發(fā)明輪子。 但是大多數(shù)情況下不建議這樣做,因為這會花費太多時間。 有時可以證明時間成本是合理的,而有時則無法證明它是合理的。 在其他情況下,這項任務非常關鍵,以至于弄錯它會帶來可怕的后果-這使得重新發(fā)明輪子不是您的最佳選擇。
如果您想改掉這種無效的習慣,最好不要重新設計輪子作為默認設置。
4.不一致
在軟件開發(fā)中,一致性確實是關鍵。 不一致的問題來自時間毀滅軟件的不可避免的事實。 一個軟件存在的時間越長,使用該軟件的人越多,混亂就越多。
始終如一的好于始終如一的好
很高興知道一致性對代碼庫的可維護性有很大影響,尤其是從長期來看。 如果您決定對變量使用駝峰式大小寫,請堅持使用。 是否要使用空格而不是制表符? 大! 不管您在代碼中做什么,至少要始終如一。
5.不計劃
一開始,進入編碼項目可能看起來很令人興奮。 但是,這種興奮可能會浪費您很多時間。 如果您直接進入編碼部分,最終將看不到大局。
在開始之前,需要先計劃和組織代碼。 您如何解決這個特定問題? 您將實現(xiàn)什么結(jié)構(gòu)? 您實施的總體目標是什么?
在開始編碼之前,這些都是很好的問題。 這些問題可以使您更加意識到以下事實:編寫代碼之前,有很多事情要考慮。
當您無法規(guī)劃時,您將獲得某些并非客戶要求的功能。 甚至更糟:您的解決方案不正確。 這導致您稍后必須返回該代碼段并進行修復-這效率低下。
6.不尋求幫助
每個開發(fā)人員,無論經(jīng)驗如何,都將不時卡住。 在這種情況下,保持簡短的反饋循環(huán)很重要。
尋求幫助并不意味著您沒有能力。 如果您盯著屏幕掙扎數(shù)小時而又遇到同樣的問題,人們會認為您不稱職。
在尋求幫助之前,請確保已經(jīng)檢查了所有已知的事項。 不必要地干擾其他開發(fā)人員不是您想要完成的任務。
通常,其他一些開發(fā)人員可以為您提供正確方向的推動。 這樣,您可以節(jié)省大量時間,因為您可以重新開始處理任務,而不必自己搞定。
幫助只提供給需要幫助的人-J.K. 羅琳
(本文翻譯自Daan的文章《6 Programming Habits That Make You an Ineffective Programmer》,參考:https://levelup.gitconnected.com/6-programming-habits-that-make-you-an-ineffective-programmer-aa4aac64fc4e)