天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

開發(fā)人員能夠得到的最好贊揚

  作為軟件開發(fā)人員,有一個小秘密:不管你寫的代碼有多么優(yōu)秀,對另外一位開發(fā)人員來說,都毫無用處。

  如果代碼足夠“干凈”,你都可以吃代碼上面的壽司,這沒什么。如果每次代碼顯示在屏幕上時,約翰·卡馬克(John Carmack)和LinusTorvalds都對這些代碼都佩服的五體投地,這也沒什么。但一些開發(fā)人員稱這些代碼是垃圾,而這些人通常就是你離開之后接手你代碼的人。

  原因有很多,而且比較瑣碎:

  • 在方法/函數(shù)中,你使用了字符串串聯(lián),而不是StringBuilder類。所以,如果這種情況發(fā)生,那么做出這樣的決定就是有意的,因為一般這樣的算法只會串聯(lián)3到4個字符串。下一個開發(fā)人員才不關(guān)心這些。
  • 沒有按照規(guī)定把花括號放到應(yīng)該放置的那一行,而是放到了同一行(反之亦然)。
  • 使用了switch語句,但大家(包括下一個開發(fā)人員)都認(rèn)為應(yīng)當(dāng)將其替換為狀態(tài)或者策略模式。難道你沒讀過《設(shè)計模式》這本書嗎?不要因為只有一個switch語句導(dǎo)致沒有代碼重復(fù)而擔(dān)心。
  • 在依賴注入(Dependency Injection)技術(shù)上,你采用Spring.NET,但下一個開發(fā)人員更喜歡使用Windsor。他們認(rèn)為只有白癡才使用Spring.NET(反之亦然)。
  • 或者你自始至終一直都在采用依賴注入技術(shù)。依賴注入到底是什么鬼東西?現(xiàn)在我完全看不懂代碼!:(


  盡管我們?yōu)橥昝来a而努力,但在真正的項目開發(fā)中,這是很難實現(xiàn)的。因為代碼會受諸如時間壓力之類的約束限制。不幸的是,從代碼中看不出約束來, 看到的只是這些約束造成的影響。當(dāng)下一個開發(fā)人員閱讀你的代碼時,他們是看不出這些代碼是在項目發(fā)布前的剩余1小時內(nèi)完成的。

  然而我承認(rèn),在被誤導(dǎo)性評論中傷之前,很難不先對這類評論采取一些措施,比如通過注釋在代碼中添加一些約束。例如:

public void SomeMethod()
{
/*
程序中至多有4到5個foo,所以,在這種情況下使用字符串串聯(lián)是可行的。這里有5篇有關(guān)性能討論的帖子的鏈接。
讓我休息一下,現(xiàn)在是凌晨3點了,我一直忙于Jolt,這個項目已經(jīng)逾期3個月了,現(xiàn)在我一點社交生活都沒有。放我一馬吧!...
*/
string result = string.Empty;
foreach(Foo foo in Foos)
{
result += foo;
}
return result;
}

  這樣的防衛(wèi)看起來有點過分,不過分?在注釋中說明為什么制定一個特殊的、不明顯的設(shè)計方案,這沒什么問題。事實上,這也正是注釋的作用所在,而不是為了簡單地重述一下代碼做了什么。

  然而問題是,開發(fā)人員有時候彼此之間的制約很大,你用綠色寫論述(或者你的集成開發(fā)環(huán)境中注釋對應(yīng)的任何一個顏色)來標(biāo)明每一行代碼,因為你不知道對下一個開發(fā)人員來說,什么才算是明顯的。

  這也是為什么前幾天收到一個開發(fā)人員的電子郵件我非常高興的原因。這個開發(fā)人員繼承了我寫的一些代碼,并在郵件中評價了我的解決方案,在這里我引用他的原話:“寫的非常棒”。

  真的?你不是在愚弄我吧?Ashton,你究竟躲在哪?

  這很可能是你從別的開發(fā)人員那得到的最高稱贊。而且我認(rèn)為這不是因為我真的是這樣一個卓越的開發(fā)人員。我認(rèn)為真正應(yīng)該贊揚的人是那位給出稱贊的開發(fā)人員。

  我的意思是,當(dāng)我繼承別人的代碼時,我的反應(yīng)很有代表性,他們到底為什么要這樣寫代碼!?難道他們沒有學(xué)過如何編程么!?除了剛剛離開的那位前任開發(fā)人員,還有誰更適合做替罪羊?(編注:伯樂在線在前段時間編譯的《程序員:你的代碼為誰而寫》一文中就說到:“要評判很久以前寫出的代碼是優(yōu)是劣很不容易,因為現(xiàn)在已經(jīng)不知道當(dāng)時為什么編寫這些代碼,也不知道為誰編寫了這些代碼。”所以,這種替罪羊事情比較常見。)

  幸好我比較機智,能將這些想法藏在心里。今后,我會在理解事情上更下功夫。當(dāng)我繼承別人代碼時,我會假設(shè)這些代碼是開發(fā)人員在72小時內(nèi)一次編碼完成的,他魔獸世界中的角色身邊到處都是蜜蜂和劫持的人質(zhì),在一切真正開始變糟之前,他只有1個小時,并且是在一臺386的機器上來完成編碼。

  鑒于那些情況,難怪那個笨蛋不使用IDisposable實例附近的代碼塊。


  譯文出處:伯樂在線 - 職場博客
  譯文鏈接:http://www.jobbole.com/entry.php/452

  原文作者:Phil Haack  編譯:伯樂在線 敏捷翻譯組 - 牛冬梅

  如需轉(zhuǎn)載,但請注明原文/譯文出處、譯文超鏈接和譯者等信息,否則視為侵權(quán),謝謝合作!

it知識庫開發(fā)人員能夠得到的最好贊揚,轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: chinese东北夫妻video | 99热久久视频只有精品6国产 | 亚洲精品无码专区在线播放 | 恋夜影院支持安卓视频美女 | 老师小扫货水能么多叫出来 | 亚洲AV国产福利精品在现观看 | 肉蒲团从国内封禁到日本成经典 | 河南老太XXXXXHD | 国产精品第1页 | 亚洲精品国产专区91在线 | 国产精品你懂得 | 999人在线精品播放视频 | 久久精品热在线观看30 | 变态露出野外调教 | 花蝴蝶在线高清视频观看免费播放 | 亚洲精品自在在线观看 | 5g在线视讯年龄确认海外禁止进入 | 亚洲日韩中文字幕区 | 波多野结衣二区 | 亚洲国产综合久久久无码色伦 | 小小水蜜桃视频高清在线观看免费 | 拔萝卜视频免费看高清 | 久久欧洲视频 | 拔萝卜电视剧高清免费 | 亚洲宅男天堂a在线 | 青柠在线观看免费播放电影 | 国产精品卡1卡2卡三卡四 | 特大黑人娇小亚洲女mp4 | 亚色九九九全国免费视频 | 国产精品99精品无码视亚 | 久久综合香蕉久久久久久久 | 久久精品国产亚洲精品2020 | 免费人成在线观看视频不卡 | 亚洲蜜桃AV色情精品成人 | 果冻传媒视频在线播放 | 精子射到丝袜上图 | 日本一本免费线观看视频 | 99精品免费久久久久久久久蜜桃 | 欧美 亚洲 中文字幕 高清 | 一品道门在线视频 | 先锋资源久久 |