低效碼農的7個壞習慣

您是在違反守則行事嗎?


低效碼農的7個壞習慣

Adapted from Pixabay

重構舊代碼,對修改後的程序進行嚴格的測試,並重新學習最新的熱門JavaScript框架,這都是好事。 但是,現在該看看另一面了—牛仔編碼器和公司時鐘打孔器,它們使您可以看到一些最糟糕的編程實踐,並且從未見過。 這裡列出七個最差的程序員的行為。 可悲的是,您會經常在現實世界中找到他們的影子。

0.保守秘密

如果您不能成為10倍的程序員,請成為9條命的程序員。 那是一個很難被解僱的人,因為他們知道公司應用程序的秘密知識-而且他們從不分享。

要做到這一點,請做好準備。 初級開發人員會問您問題。 您帶他們進行復雜的猜謎遊戲,偶爾做出不屑一聽的表情和諸如“我們已將其混淆”之類的含蓄評論。

是的,您可以分享知識,互相學習並共同成長。 但是,如果目標是用最少的精力獲得最大的工作安全保障,那麼您的優化功能將在這裡發揮領導作用。

1.如有疑問,請添加其他設計模式

正如灰鬍子所說的那樣:“計算機科學中的所有問題都可以通過額外的間接層來隱藏。”在新的橋樑(bridge),適配器(adater),代理(proxy),外觀(facet)和工廠(factory)上加螺栓可能無法解決代碼中的任何錯誤。 但是,它們會很好地隱藏它們,從而將您的缺點變成別人的問題。

此外,混淆的錯誤意味著您可以合理的否認。 誰知道是誰的錯?

2.崇拜新事物

每件事都有自己的生命週期。 如果您使用的是JavaScript庫,那麼這個週期可能只會持續數週。 但是,無論採用哪種技術,最終都該轉向新的東西了。

新技術使所有人興奮。 舊的東西可能仍然有用,但是一夜之間這很尷尬。 記住“它仍然有效”是“它在會議上給任何人留下深刻印象嗎?”的第二要義。

如果您很聰明,可以多次編寫相同的軟件而獲得報酬,每次使用不同的庫和框架。 而且,如果您確實很敏捷,則可以在不必考慮自己的意大利麵條式代碼的成本之前,跳到一個新平臺。 不斷變化=一個合理的機會來解決您的錯誤。

3.不要讓測試影響更多的代碼

如果您想提高工作效率,就必須扭動這些數字。 測試絕對沒有效果。 你知道什麼有生產力嗎? 工具輔助的代碼生成。 您需要大量的東西,根據數據庫模式自動生成的整個數據類集。 下週,您可以更改架構並再次運行所有工具。 現在,這是一個很大的承諾。

無論如何,測試會拖累效率。 請記住,敏捷編程意味著永遠不必說對不起。

4.寫一次,然後不要管了

代碼是不可預測的。 但是,當它起作用時,它就像是精緻的雪花,小心翼翼地棲息在遊戲中的積木塔頂上。 此時,請欣賞您的創作。 但不要冒險更改任何內容。

有必要牢記Pottery Barn的編碼規則。

“如果有人拿起它時摔壞了,那反正是他們的問題。”

5.如果一開始沒有成功,請複製,複製並粘貼

如果上帝(在這裡插入您最喜歡的神)想要我們受苦,那麼他就不會在鍵盤上輸入Ctrl + C。 對於正確的複製和粘貼,很難沒有問題。 您的工作是將關鍵字的組合拼湊在一起,這將為您帶來與StackOverflow相關的代碼段。 將其帶入您的代碼庫,您便可以獲得一些免費代碼!

6.註釋只適用於失敗者

您是在寫代碼。 為什麼要在註釋中重複它呢? (唯一的例外:如果某項功能難以實現且很少使用,請添加TODO註釋並從列表中將其選中。)

此策略也有助於養成#0的習慣。

7.這是最終用戶的錯

那就是他們想要的。 不,他們沒有具體說“構造一個10 x 6的按鈕網格來觸發不同的命令”(來自真實公司的實際示例)。 但是他們確實說所有這些命令都需要一鍵訪問。 您是一名程序員,所以您瞭解邏輯推理的全部知識。

如果有人對您提出疑問,請記住以下幾點:根據我給的規格,此用戶界面不僅是最好的,而且也是唯一的一種。 甚至不必費心推薦更改-客戶永遠不會同意。 等等,這是一項新功能請求。 我們將需要另一個按鈕。


(如果這看起來像八個,那麼讓我提醒您,我們在這裡進行以0為首開始的計數。畢竟,你會認識到我們是Real Programmers™?)


(本文翻譯自Matthew MacDonald的文章《The 7 Habits of Highly Ineffective Programmers》,參考https://medium.com/young-coder/the-7-habits-of-highly-ineffective-programmers-cdd997769879)


分享到:


相關文章: