自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

抵制代碼重寫,程序員開發(fā)之道

開發(fā) 后端
本文是從 Fight the Rewrite 這篇文章翻譯而來。 希望對大家有所幫助。

昨天,一位老上級邀請我一起吃午餐。當(dāng)坐在哪里等待上菜時(shí),我們緬懷起早期這個(gè)公司的往事。他有一句話讓我心里一虛:

啊,你這個(gè)判官…我記得當(dāng)你看到Dan(公司的第一位程序員)寫的代碼時(shí)的樣子。你說:“這代碼寫的真爛,需要重寫!”

我恐怕是沒有足夠的勇氣告訴他,我這“代碼需要重寫”的主張是錯(cuò)誤的。不錯(cuò),我認(rèn)為這代碼寫的很亂。但是,據(jù)過去歷次的經(jīng)驗(yàn),我感覺大部分的程序員看著別人寫的程序時(shí)都會想:這代碼寫的真爛。事實(shí)上,當(dāng)一個(gè)程序員數(shù)年后再看自己寫過的程序時(shí)也會想:這代碼寫的真爛。也許他們想的是對的;這代碼確實(shí)很爛。

但是,如果你認(rèn)為代碼需要重寫,你將犯下一個(gè)低級錯(cuò)誤。

公司里有一些想當(dāng)然的看法會讓你可能現(xiàn)在不能認(rèn)識到這點(diǎn)。大量的不成文的想當(dāng)然的觀點(diǎn)可能會讓你無法解釋清楚。

我喜歡Joel Spolsky說的關(guān)于這種事情的話,有些事情你永遠(yuǎn)不要去做:

我們是程序員。程序員,在他們自己的心里,是建筑師,當(dāng)他們來到一個(gè)地點(diǎn),第一件想要做的事情就是:把這地方推平,蓋上輝煌的建筑。他們對慢慢的修繕沒有興趣:小修小補(bǔ),改善,培植花草。

有一種不可捉摸的原因讓程序員們總是希望丟掉這些代碼、重新再寫。原因是他們認(rèn)為老的代碼是混亂的??墒?,你會觀察到一種非常有趣的現(xiàn)象:他們的判斷通常是錯(cuò)的。他們之所以會認(rèn)為老的代碼很爛的原因來自于一個(gè)重要的、基本的編程定律:

讀代碼比寫代碼要難。

這就是為什么代碼很難重用的原因。這就是為什么每個(gè)團(tuán)隊(duì)喜歡用自己不同的函數(shù)來做把字符串拆分成數(shù)組操作的原因。他們要寫自己的方法,這更容易,更有趣,不需要弄清楚老的函數(shù)的工作原理。

根據(jù)這種定律必然得出這樣的一個(gè)結(jié)論,你現(xiàn)在可以問一問任何一個(gè)程序員,問他們對正在寫的程序感覺如何?!皝y的不能再亂了,”他們會這樣告訴你?!拔覍幵赴阉鼈兌紕h了重新再寫?!?/P>

當(dāng)你招募來了一個(gè)程序員,如果他想重寫看來工作的不錯(cuò)的程序,你要抵制。他也許會說Java過時(shí)了,太慢,Ruby on Rails如何的酷。也許他會向你拋了一大堆專業(yè)名稱術(shù)語。不管他如何做,你要三思而行。

你覺得呢?

【編輯推薦】

  1. 想成為更好的程序員嗎?學(xué)習(xí)Prolog語言吧
  2. 15件事造就有理想的程序員
  3. 程序員發(fā)現(xiàn)蘋果史上最嚴(yán)重的隱私侵犯行為
  4. 老程序員10年技術(shù)生涯的思考 從C++到Java
  5. 程序員如何在"小公司成長"和"大公司學(xué)習(xí)"
責(zé)任編輯:金賀 來源: 博客園
相關(guān)推薦

2015-07-27 15:27:11

程序員重寫代碼

2015-07-28 10:28:54

程序員代碼

2018-05-07 15:59:39

代碼程序員重寫

2019-11-08 13:57:53

程序員Excel軟件

2012-07-05 09:37:04

Java程序員

2015-04-08 11:09:28

優(yōu)秀程序員深入理解你的代碼

2009-11-27 09:07:38

程序員

2013-06-28 13:28:09

2010-08-11 09:51:28

Flex代碼

2017-03-13 09:07:05

測定代碼基因

2018-04-03 17:08:08

程序員技能面試

2011-07-27 09:52:38

軟件項(xiàng)目

2019-11-27 10:08:36

程序員技能開發(fā)者

2013-08-20 09:33:59

程序員

2012-03-06 09:22:46

程序員

2015-06-17 14:24:48

優(yōu)秀程序員整潔代碼

2009-12-03 16:50:58

Visual Basi

2011-05-13 14:34:02

程序員

2015-08-25 15:54:17

程序員代碼生成器

2009-12-10 17:05:10

Visual Stud
點(diǎn)贊
收藏

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