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

你優(yōu)化系統(tǒng)的目標(biāo)是什么?

開(kāi)發(fā) 架構(gòu)
讓我來(lái)給你們講一個(gè)故事:當(dāng)我在大學(xué)的時(shí)候,我選了一門(mén)“高級(jí)”面向?qū)ο缶幊陶n程。以前從來(lái)沒(méi)有接觸過(guò)這種知識(shí),這個(gè)課程使用SmallTalk這種語(yǔ)言教學(xué),而且教學(xué)方式非常特別;第一天,教授給我們布置了一個(gè)將會(huì)貫穿整個(gè)4周課程的作業(yè)。

[[73330]]

讓我來(lái)給你們講一個(gè)故事:當(dāng)我在大學(xué)的時(shí)候,我選了一門(mén)“高級(jí)”面向?qū)ο缶幊陶n程。以前從來(lái)沒(méi)有接觸過(guò)這種知識(shí),這個(gè)課程使用SmallTalk這種語(yǔ)言教學(xué),而且教學(xué)方式非常特別;第一天,教授給我們布置了一個(gè)將會(huì)貫穿整個(gè)4周課程的作業(yè)。

[[73331]]

我們的Davidson教授

我們非常興奮,因?yàn)檫@是要編寫(xiě)一個(gè)游戲。一個(gè)老式的文字輸入式的冒險(xiǎn)游戲,類(lèi)似于Zork風(fēng)格。我們分成3人一組,來(lái)到教授擁擠的小屋里。在那里,教授給了我們一頁(yè)紙,上面寫(xiě)著一些說(shuō)明。從那里返回時(shí)我們幾乎是一路小跑。

而就在我們剛要出門(mén)時(shí),教授把我們叫了回去(我相信他是特意選了這個(gè)最佳時(shí)機(jī)):

“哦,我差點(diǎn)忘了。兩個(gè)星期后,我會(huì)對(duì)這個(gè)游戲內(nèi)容做一些大的修改。你們要繼續(xù)按修改后說(shuō)明開(kāi)發(fā)。”

我跟很多的軟件開(kāi)發(fā)團(tuán)隊(duì)(包括一些軟件產(chǎn)品創(chuàng)始人)說(shuō)過(guò)這個(gè)故事,他們的反應(yīng)幾乎都一樣:

  • 你能在屋里聽(tīng)到笑聲。至少是咯咯的笑。經(jīng)常你還能一些“不會(huì)吧”等話
  • “哦,老兄,這也太沒(méi)譜了吧!”
  • “這教授這么難為人嗎——怎么可能有這樣的任務(wù)”

問(wèn)題就在于,教授并沒(méi)有告訴他將會(huì)做什么樣的修改。只是說(shuō)會(huì)修改一些東西——兩周后。

你認(rèn)為我們?cè)撊绾稳ネ瓿蛇@個(gè)任務(wù)?

我們開(kāi)發(fā)時(shí)處處設(shè)防。

  • “哦,不行——如果教授打算改動(dòng)這個(gè)怎么辦?”
  • “也許應(yīng)該把這里做成接口——萬(wàn)一教授要求用不同的方式實(shí)現(xiàn)它呢?”
  • “不行——我們應(yīng)該把這部分提取出來(lái),這樣,當(dāng)我們修改這部分時(shí)就不需要改動(dòng)模塊X了”

這就是我們的做法。我最想說(shuō)的是,這是一個(gè)非常好的作業(yè)任務(wù),它讓我在面向?qū)ο缶幊毯蚐malltalk方面學(xué)到了很多。感謝你,我們的Davidson教授!

最終,我們做成了一個(gè)非常模塊化的系統(tǒng),這使對(duì)它們的修改變得很容易。當(dāng)那一天終于到來(lái),當(dāng)游戲設(shè)計(jì)被修改后,我們通過(guò)努力在一天內(nèi)就按照要求修改了程序,使我們能順利的接著開(kāi)發(fā)界面和怪獸等很酷的部分。

我們?yōu)橐院蟮母淖兌鴥?yōu)化系統(tǒng)。因?yàn)镈avidson教授告訴我們變化很快就會(huì)來(lái)到。

第二個(gè)故事

讓我來(lái)給你們講一個(gè)故事:這是關(guān)于大概25年前開(kāi)發(fā)的一個(gè)系統(tǒng)的故事。它是一個(gè)瑞典大公司的重要業(yè)務(wù)系統(tǒng)。我說(shuō)這是一個(gè)重要業(yè)務(wù)系統(tǒng),是因?yàn)樗幚淼臉I(yè)務(wù)是公司80%的收入來(lái)源。

自打一開(kāi)始,他們就思考的面面俱到,保留的極詳細(xì)的文檔。他們還制定了一套嚴(yán)格的需求變更規(guī)范。他們要求盡量避免這樣的系統(tǒng)里的變更,因?yàn)轱L(fēng)險(xiǎn)很大,一旦出錯(cuò)會(huì)造成巨大的影響。

公司如此為這種事情擔(dān)心,以至于他們編寫(xiě)了一系列的措施來(lái)預(yù)防系統(tǒng)出現(xiàn)問(wèn)題;所有的代碼要經(jīng)非代碼原作者的第二人用偽代碼注釋一遍。而且測(cè)試工作不能由代碼的作者來(lái)執(zhí)行。

同樣,也制定了各種風(fēng)險(xiǎn)管理措施,來(lái)管控軟件規(guī)格說(shuō)明書(shū)的制定。寫(xiě)規(guī)格書(shū)的人被分成了幾個(gè)等級(jí),以此確保在遞交給相關(guān)IT業(yè)務(wù)部門(mén)前經(jīng)過(guò)層層檢查。

很快25年過(guò)去,如今這些編寫(xiě)文檔和管控風(fēng)險(xiǎn)的部門(mén)仍然在忙碌。這套措施很少出問(wèn)題,但卻效率很低。一個(gè)修改從列入計(jì)劃到提交到產(chǎn)品中大概要30周的時(shí)間。一個(gè)想法到正式被寫(xiě)入規(guī)格說(shuō)明書(shū)要經(jīng)過(guò)20多個(gè)不同級(jí)別人的審批。拿著這種說(shuō)明書(shū)的程序員都稱(chēng)自己為“施工人員”,因?yàn)樗麄儗?shí)際的工作是把偽代碼翻譯成 COBOL語(yǔ)言。

所有圍繞這個(gè)系統(tǒng)做的事情都是為了掌控風(fēng)險(xiǎn)和需求變更,把穩(wěn)定放在第一位。他們認(rèn)為只要修改就會(huì)產(chǎn)生意外。但不幸的是,對(duì)于一個(gè)業(yè)務(wù)來(lái)說(shuō),唯一可能發(fā)生的事情就是:改變。而且改變的頻率會(huì)越來(lái)越高。

他們?yōu)榉€(wěn)定而優(yōu)化系統(tǒng)。

我想強(qiáng)調(diào)一點(diǎn),第二個(gè)故事里的這種想法的人在生活中不占少數(shù)。他們是很優(yōu)秀的人,但他們卻被安排去開(kāi)發(fā)以穩(wěn)定為第一位的系統(tǒng)。這才是真正的風(fēng)險(xiǎn)。

結(jié)論

這兩個(gè)故事讓我思考很多:

  • 如今我在寫(xiě)代碼時(shí)是以何目的而優(yōu)化?
  • 變化隨時(shí)都會(huì)到來(lái)。我從開(kāi)始就知道。“在這個(gè)系統(tǒng)運(yùn)行的25年里我將會(huì)不斷的修改它的規(guī)格說(shuō)明書(shū)”。我該如何去應(yīng)對(duì)這種事情?
  • 我是如何看待變化,把它當(dāng)成風(fēng)險(xiǎn)?還是當(dāng)成一種驅(qū)動(dòng)?能夠快速的應(yīng)對(duì)改變是一種商業(yè)優(yōu)勢(shì),是一種管控風(fēng)險(xiǎn)的良方。我如何讓我的代碼更容易改變?
  • 在一個(gè)將要進(jìn)行大量修改的系統(tǒng)里,什么樣的文檔才能滿(mǎn)足我?

你優(yōu)化系統(tǒng)的目標(biāo)是什么?

英文原文:Are you coding for change or for stability?

譯文鏈接:http://www.aqee.net/are-you-coding-for-change-or-for-stability/

責(zé)任編輯:林師授 來(lái)源: 外刊IT評(píng)論
相關(guān)推薦

2013-05-23 09:20:15

系統(tǒng)優(yōu)化

2010-04-22 16:39:21

Oracle 調(diào)優(yōu)

2021-09-26 05:41:13

數(shù)字困境IT領(lǐng)導(dǎo)數(shù)字轉(zhuǎn)型

2018-04-09 14:25:06

數(shù)據(jù)庫(kù)MySQL索引

2012-07-03 16:56:12

Hadoop

2021-08-12 10:35:15

模型優(yōu)化路線

2009-09-04 05:34:57

KVM性能紅帽KVM

2015-08-24 09:23:25

2009-09-17 18:40:12

CLR是什么

2009-11-05 09:29:29

WCF是什么

2013-08-05 09:31:04

Android4.3TRIM

2018-06-27 16:20:56

2012-12-13 09:40:04

架構(gòu)師

2012-11-12 09:47:50

軟件測(cè)試測(cè)試基因測(cè)試

2019-08-08 17:25:20

裁員計(jì)劃程序員

2019-08-12 11:14:00

JVM垃圾對(duì)象

2015-09-29 09:48:28

基礎(chǔ)設(shè)施反思資源交付

2015-10-12 15:21:57

桌面云/銳捷網(wǎng)絡(luò)

2024-01-23 15:54:05

AI精靈人工智能數(shù)據(jù)戰(zhàn)略

2021-10-26 09:40:29

人工智能AI機(jī)器人
點(diǎn)贊
收藏

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