一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

需求變化與IoC

  文/Todd Wei

  需求又變了,怎么辦?

  先上一個(gè)輕松的段子:

程序員 XX 遭遇車禍成植物人,醫(yī)生說(shuō)活下來(lái)的希望只有萬(wàn)分之一,喚醒更為渺茫。可他的 Lead 和親人沒(méi)有放棄,他們根據(jù) XX 工作如命的作風(fēng),每天都在他身邊念:“XX,需求又改了,該干活了,你快來(lái)呀!”,奇跡終于發(fā)生了,XX 醒來(lái)了,第一句話:“需求又改了?”。

  這個(gè)段子用幽默的方式反映了需求變化是每一個(gè)程序員、架構(gòu)師或項(xiàng)目經(jīng)理都會(huì)經(jīng)常遇到的問(wèn)題。面對(duì)這個(gè)問(wèn)題,不同的人有不同的應(yīng)對(duì)之道,最近微博上有一段關(guān)于需求變化的討論:

@假裝刺猬的豬:我們?cè)谲浖_(kāi)發(fā)過(guò)程中,會(huì)持續(xù)碰到客戶需求變更的情況。如果沒(méi)有領(lǐng)域建模,我們單純將問(wèn)題使用直覺(jué)將問(wèn)題解決,那么等到客戶需求變更或者有新的需求時(shí),就會(huì)面臨一個(gè)僵硬的前設(shè)計(jì)!無(wú)法在以前的設(shè)計(jì)上持續(xù)深入的優(yōu)化模型,導(dǎo)致需求變更無(wú)法及時(shí)深化。設(shè)計(jì)實(shí)現(xiàn)均滯后與變更!

@高煥堂: <碰到客戶需求變更的情況>是合理的;但<領(lǐng)域建模>不是美好的手段!!!

@weidagang: 要不被客戶牽著鼻子走,需要自己有很強(qiáng)的設(shè)計(jì)能力,反過(guò)來(lái)讓客戶跟著你的設(shè)計(jì)來(lái)滿足你的要求。能做到這點(diǎn)的公司很少,但這是軟件行業(yè)唯一有希望的出路。

@高煥堂: <這是軟件行業(yè)唯一有希望的出路>。 Great!!

  如何應(yīng)對(duì)需求變化? @假裝刺猬的豬的答案是領(lǐng)域建模,并持續(xù)優(yōu)化模型,適應(yīng)需求的變化。@高煥堂則認(rèn)為領(lǐng)域建模不是美好的手段。我進(jìn)一步補(bǔ)充,應(yīng)該“反過(guò)來(lái)”讓自己在需求變化中處于主導(dǎo)地位,而不是被動(dòng)地適應(yīng)。

  控制反轉(zhuǎn) (IoC)

  什么樣就算是“反過(guò)來(lái)”了呢?舉個(gè)例子:

用戶想購(gòu)買一臺(tái)普通 PC,他只想電腦能流暢運(yùn)行魔獸世界,他根本不想知道什么叫主板,什么叫內(nèi)存,什么叫 CPU;但他不得不接受必須購(gòu)買主板、CPU、內(nèi)存的事實(shí),因?yàn)?PC 架構(gòu)是產(chǎn)業(yè)標(biāo)準(zhǔn),而不是由用戶定的。客戶有選擇的權(quán)利,但沒(méi)有設(shè)計(jì)的權(quán)利,客戶的需求必須在設(shè)計(jì)框架下得到滿足。

  這里我們要問(wèn) PC 架構(gòu)是保護(hù)了誰(shuí)的利益?顯然,直接的受益者是廠商。如果沒(méi)有 PC 架構(gòu)的保護(hù),廠商就會(huì)直接面對(duì)客戶,客戶說(shuō)我需要功能A,我馬上分析設(shè)計(jì)實(shí)現(xiàn)功能A;客戶說(shuō)我要功能B,我馬上分析設(shè)計(jì)實(shí)現(xiàn)功能B … 有了 PC 架構(gòu)的保護(hù),廠商就變得更加強(qiáng)勢(shì),用戶的一切需求都必須在 PC 架構(gòu)下來(lái)談。廠商可以傾聽(tīng)用戶的聲音,不斷改進(jìn)產(chǎn)品,但設(shè)計(jì)主導(dǎo)權(quán)永遠(yuǎn)在自己手中。我們 IT 行業(yè)常常用“做產(chǎn)品”和“做項(xiàng)目”的視角來(lái)區(qū)分不同的公司,但很少有人用“做設(shè)計(jì)”的視角來(lái)看。實(shí)際上,關(guān)鍵的問(wèn)題在于設(shè)計(jì)主導(dǎo)權(quán)是廠商還是在客戶。如果設(shè)計(jì)主導(dǎo)權(quán)在客戶,不管是做產(chǎn)品、做服務(wù)還是做項(xiàng)目,其命運(yùn)必然是疲于奔命應(yīng)付客戶,最后獲得微薄的利潤(rùn);如果設(shè)計(jì)主導(dǎo)權(quán)在廠商,不管做產(chǎn)品、做服務(wù)還是做項(xiàng)目都能有更多的話語(yǔ)權(quán)和更高的利潤(rùn)。

  當(dāng)然,光有設(shè)計(jì)還不夠,必須客戶接受才能起到通過(guò)設(shè)計(jì)掌握主導(dǎo)權(quán)的作用。這一方面需要自己具有很強(qiáng)的設(shè)計(jì)能力,如蘋果就是以設(shè)計(jì)能力著稱的公司;另一方面,和其他廠商結(jié)盟壯大陣營(yíng)也是一種方法,如最著名的 Wintel 聯(lián)盟(Windows+Intel),以及現(xiàn)在的日益壯大的 Android 陣營(yíng)都屬于此類。假如有廠商不遵守 PC 產(chǎn)業(yè)標(biāo)準(zhǔn),說(shuō)我的 PC 就沒(méi)有主板,沒(méi)有顯卡,因?yàn)橛脩舾静恍枰@些東西;那么,它要么像蘋果一樣獨(dú)樹(shù)一幟成為一種新的標(biāo)準(zhǔn),要么無(wú)人問(wèn)津。

  我所談到的“反過(guò)來(lái)”本質(zhì)上就是軟件設(shè)計(jì)中的控制反轉(zhuǎn) (Inversion of Control, IoC)思想。IoC 是每一個(gè)初級(jí)程序員向高級(jí)進(jìn)階所需要了解的最重要的設(shè)計(jì)思想。由于 Spring 等開(kāi)發(fā)框架的流行,知道 IoC 概念的程序員不在少數(shù),但不少人對(duì)于 IoC 的理解僅僅停留在通過(guò)依賴注入 (Dependency Injection)實(shí)現(xiàn)解耦這個(gè)層面。實(shí)際上,IoC 的應(yīng)用不僅包括解耦,它還是框架的基本原理,在非計(jì)算機(jī)領(lǐng)域,IoC 也是無(wú)處不在,如果你能從上面的例子中體會(huì)到 IoC,這才算是融會(huì)貫通了。

  軟件開(kāi)發(fā)中一種最常見(jiàn)的模式是“以用戶為出發(fā)點(diǎn),以需求分析為核心”。該模式提倡從用戶需求中分析推導(dǎo)出設(shè)計(jì)和實(shí)現(xiàn),比如,TDD 式的設(shè)計(jì)正是這類典型。而 IoC 式的軟件設(shè)計(jì)與此截然相反,IoC 的設(shè)計(jì)是一種“以愿景(自身利益是愿景的重要方面)為出發(fā)點(diǎn),以架構(gòu)為核心”的模式。如果用戶的需求是一臺(tái)電腦,我們?nèi)绾文芡ㄟ^(guò)第一種模式分析需求推導(dǎo)出“主板-CPU-內(nèi)存-外設(shè)”的 PC 架構(gòu)呢?恐怕很難。IoC 式的設(shè)計(jì)是以用戶看不見(jiàn)摸不著的架構(gòu)為核心,自己主導(dǎo)設(shè)計(jì),用戶需求是設(shè)計(jì)的約束條件和驗(yàn)證手段,而不是出發(fā)點(diǎn)和目標(biāo)。我們想要掌握主動(dòng),不被需求變化搞得疲于奔命,就必須熟練使用第二種模式。

  我們的人生都被環(huán)境和各種客觀條件所束縛,多數(shù)人只能隨波逐流,聽(tīng)從命運(yùn)的安排。你有沒(méi)有想過(guò)要擁有人生的主導(dǎo)權(quán)呢?既然你是程序員,你懂 IoC,你能否設(shè)計(jì)自己的人生框架呢?Yes,you can!

it知識(shí)庫(kù)需求變化與IoC,轉(zhuǎn)載需保留來(lái)源!

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

主站蜘蛛池模板: 亚洲女人天堂网 | 国产高清国产专区国产精品 | 免费黄色视屏 | 好吊操视频这里只有精品 | 国产日韩在线 | 国产成人精品日本亚洲网址 | 免费国产精品视频 | 日本欧美一区二区三区视频 | 精品视频一二三区 | vr专区日韩精品中文字幕 | 国产成人精品高清在线观看99 | 五月丁香 | 精品日韩欧美国产一区二区 | 久草热在线视频 | 91精品国产免费久久国语麻豆 | 国产精品白浆在线播放 | 五月婷婷激情六月 | 图片区小说区区国产明星 | 免费一区二区三区在线视频 | 中文一区| 欧美激情二区 | 国产免费人成在线看视频 | 色老板在线视频一区二区 | 337p欧美 | 国产成人午夜极速观看 | 狠狠干一区 | 手机在线观看黄色网址 | 国产伦精品一区二区三区视频小说 | 欧美大尺度无遮挡性视频 | 亚洲国产精品久久婷婷 | 国产精品丝袜高跟鞋 | 狠狠色伊人亚洲综合第8页 狠狠色伊人亚洲综合网站l | 成人小视频在线观看 | 五月婷六月丁香 | 一区二区三区视频网站 | 五月婷婷丁香六月 | 国产成人精品视频免费大全 | 狠狠色噜噜狠狠狠狠米奇7777 | 丁香婷婷基地 | 伊人久久大线蕉香港三级 | 中文字幕在线永久在线视频2020 |