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

兩個程序員的故事

開發(fā) 后端 前端
從前,有兩家互不知曉的公司,一家叫做“自動會計應用協(xié)會”,另外一家叫做“統(tǒng)一計算資本公司”。他們同時決定開發(fā)一種提供相同功能的程序……

[[127391]] 

從前,有兩家互不知曉的公司,一家叫做“自動會計應用協(xié)會”,另外一家叫做“統(tǒng)一計算資本公司”。他們同時決定開發(fā)一種提供相同功能的程序。

“自動”雇傭了一位分析程序員,艾倫,來解決這個問題。

而“統(tǒng)一”決定試一下新來的初級程序員查爾斯,看看他是否有真本事。

艾倫做過一些復雜項目,有著豐富的經驗,決定采用PQR結構化方法來開發(fā)這個程序。于是他找到部門經理,要求增派3名程序員組成一個項目小組。這個小組于是開始工作,搗鼓出初步的項目分析報告。

“統(tǒng)一”這邊,查爾斯抽了點時間想了一下需要解決的問題。同事們常常看到查爾斯把腳翹在辦公桌上喝咖啡。偶爾見到他坐在電腦前,但是那有節(jié)奏的鍵盤聲告訴別人他其實在玩小蜜蜂。

不久,“自動”的小組開始編寫代碼了。程序員們一半的時間用來編寫編譯代碼,另一半的時間待在會議室里,討論模塊間的接口設計。

查爾斯的同事發(fā)現他終于不再玩小蜜蜂,而是一半的時間把腳翹到辦公桌上喝咖啡,另一半時間在紙片上涂寫著什么。他好像不是在紙上玩“井字過三關”,但看起來不像是在寫有用的東西。

兩個月過去了。“自動”的小組終于發(fā)布了項目時間表。計劃再過兩個月,他們就會發(fā)布程序的測試版本。然后再經過兩個月的測試和改進,就可以發(fā)布完成版了。

此刻,對于查爾斯的游手好閑,他的經理再也看不下去了,他決定批評查爾斯一下。但當經理走進查爾斯的辦公室時,他卻驚訝地發(fā)現查爾斯在電腦前正埋頭寫代碼。于是他決定把批評先放一放,隨便跟查爾斯聊了一下就離開了。然而從此他更加注意觀察查爾斯的表現,想借機批評查爾斯。不過不愉快的對話并沒有發(fā)生,他很高興地發(fā)現查爾斯一直在寫代碼。人們偶爾發(fā)現查爾斯推遲了午餐,且一周還主動加2、3次班。

第三個月的月底,查爾斯宣布他已經完成了這個項目。他提交了500行的程序。程序清晰可讀,測試中符合所有的功能要求,甚至具備了一些更加便利的功能,極大地提高了程序的易用性。測試后,程序除了有一處疏忽外,表現得非常好。

“自動”的項目小組到此時已經將4個主要模塊中的2個開發(fā)出來了。在這些模塊被測試的同時,小組繼續(xù)開發(fā)其余的模塊。

又過了3周,艾倫宣布提前一周完成了程序的初級版。他提交了一份清單,列舉了尚需解決的一些缺陷。測試中,客戶發(fā)現了一些清單上沒有的錯誤和缺陷。艾倫解釋說這是意料之中的,畢竟這只是一個初級的版本,有錯誤很正常。

又過了兩個月,項目小組完成了程序的正式版,包含了2500行代碼。測試中發(fā)現,這個版本完成絕大部分的最初需求。程序功能上有一兩處遺漏,且對于數據輸入的格式要求非常嚴格。但公司最終決定使用這個程序,他們可以訓練打字員嚴格按照要求輸入數據。對于那些遺漏的功能,交由維護程序員去添加。

后記:

一開始經理對查爾斯的能力印象深刻??僧斔喿x源代碼的時候,發(fā)現原來問題比自己開始想象的要簡單得多。現在看來,這種難度哪怕對于初級程序員來說也明顯太低了。

的確,查爾斯平均每天產出了5行代碼,這略高于平均水平。但是考慮到項目復雜度是如此的低,略高的生產率也不足為奇。而且經理對他頭兩個月的游手好閑記憶猶新。

業(yè)績評估中,查爾斯薪水的漲幅大概是同期貨幣通貨膨脹率的一半,他也沒被提升。又過了一年,他感到沮喪而離開了“統(tǒng)一”。

“自動”這邊,艾倫因為按時完成這個項目而受到表揚。他的主管翻了幾頁源代碼,發(fā)現代碼符合公司的結構化編程規(guī)范。但他很快便放棄了閱讀代碼的想法,因為它看起來相當深奧。他現在意識到項目的復雜度遠比當初自己設想的高,于是他再一次夸贊艾倫的成就。

項目小組平均每人每天寫3行代碼,剛好是平均水平。但考慮到問題的復雜度,有平均水平就非常不錯了。艾倫被大幅加薪,作為獎勵,他被提升為系統(tǒng)分析員。

英文原文:The Parable of the Two Programmers

責任編輯:林師授 來源: 外刊IT評論
相關推薦

2013-07-05 10:52:07

程序員結對編程

2013-05-10 09:31:06

程序員

2015-09-07 15:02:20

2017-12-27 15:11:22

程序員項目軟件公司

2011-06-10 08:56:27

程序員

2018-12-05 10:25:32

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

2013-11-06 09:54:22

程序Windows

2021-03-18 08:59:14

框架pytorchtensorflow

2017-02-09 15:54:26

編程奇葩程序員

2017-02-08 14:23:46

編程冒牌程序員

2015-06-18 05:33:36

程序員碼農

2020-11-05 10:59:05

程序員技術設計

2021-07-05 07:28:14

程序員菜鳥技術

2011-12-20 10:41:36

程序員

2019-10-15 11:42:23

程序員好好學習算法

2020-02-22 21:51:43

程序員Microsoft SServerSQL

2020-10-05 21:13:37

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

2013-08-20 09:33:59

程序員

2013-08-29 13:44:53

2018-01-15 10:38:04

點贊
收藏

51CTO技術棧公眾號