成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

資訊專欄INFORMATION COLUMN

架構(gòu)整潔之道(二)——兩個(gè)價(jià)值的故事

denson / 3458人閱讀

摘要:每個(gè)軟件系統(tǒng)都提供兩個(gè)價(jià)值給利益相關(guān)者表現(xiàn)和結(jié)構(gòu)。來(lái)自利益相關(guān)者的觀點(diǎn),開發(fā)者僅僅只提供了一些形態(tài)上的粗略改變,來(lái)自開發(fā)者的觀點(diǎn),老板的需求越來(lái)越難。記住,作為一個(gè)開發(fā)者,你就是利益相關(guān)者,你需要維護(hù)的軟件里有你的利益。

每個(gè)軟件系統(tǒng)都提供兩個(gè)價(jià)值給利益相關(guān)者:表現(xiàn)和結(jié)構(gòu)。軟件開發(fā)者應(yīng)的確保這兩個(gè)價(jià)值盡量高負(fù)責(zé)。然而很不幸,程序員很多只關(guān)心其中一個(gè)而忽略另一個(gè),甚至更不幸,他們可能關(guān)注的不是這兩個(gè)價(jià)值,留下沒有價(jià)值的系統(tǒng)

表現(xiàn)

軟件的第一個(gè)價(jià)值是他的表現(xiàn),程序員被雇傭來(lái)幫利益相關(guān)者讓服務(wù)器來(lái)掙錢或省錢,實(shí)現(xiàn)這個(gè)的方式是依照功能規(guī)范或?qū)懶枨笪臋n,來(lái)寫代碼實(shí)現(xiàn)這些需求。當(dāng)程序出問題時(shí),程序員修bug。很多程序員相信這就是他們工作的全部,他們就是為了實(shí)現(xiàn)功能和修bug而工作,但這是錯(cuò)誤的。

架構(gòu)

第二個(gè)價(jià)值必須和軟件這個(gè)詞一起處理--一個(gè)由soft和ware組成的復(fù)合詞。ware意味著產(chǎn)品,soft就是第二價(jià)值--”架構(gòu)“的所在的地方
軟件具有柔軟的特性,他打算用一種簡(jiǎn)單的方法改變機(jī)器的行為。為了達(dá)到目的,軟件必須柔軟,能夠很輕松地改變,當(dāng)利益相關(guān)者想要改一個(gè)需求,改變就需要簡(jiǎn)單并且可以輕松實(shí)現(xiàn),改需求的困難應(yīng)該僅僅是改變的范圍,不是改變的形態(tài)。
范圍和形態(tài)都能驅(qū)動(dòng)軟件開發(fā)成本上升,但是兩者是不同的。這就是成本不隨需求改變的比例上升的原因,這也是開發(fā)一年比一年更便宜的原因。來(lái)自利益相關(guān)者的觀點(diǎn),開發(fā)者僅僅只提供了一些形態(tài)上的粗略改變,來(lái)自開發(fā)者的觀點(diǎn),老板的需求越來(lái)越難。
問題當(dāng)然是系統(tǒng)的架構(gòu),架構(gòu)不好,后面的需求將會(huì)越來(lái)越難適合現(xiàn)在的架構(gòu)

更大的價(jià)值

功能或架構(gòu),誰(shuí)能提供更大的價(jià)值,誰(shuí)在軟件開發(fā)中更重要,或者誰(shuí)在添加需求中更能輕松修改系統(tǒng)。如果你問業(yè)務(wù)經(jīng)理,他們可能覺得功能更重要,輪流問開發(fā)者,很多人也贊同這觀點(diǎn),但是這是錯(cuò)誤的,我能用一個(gè)極端的邏輯工具測(cè)試他是錯(cuò)的。
如果你給我一個(gè)能運(yùn)行,但不可能改變的系統(tǒng),改需求就不能運(yùn)行,這個(gè)系統(tǒng)將無(wú)用。
如果給我一個(gè)不能運(yùn)行,但能夠輕松修改的系統(tǒng),我可以讓他適應(yīng)需求,然后運(yùn)行起來(lái)。這個(gè)系統(tǒng)就有用了
你可能覺得這個(gè)例子不能讓人信服,畢竟沒有不能改變的項(xiàng)目,然而有些系統(tǒng)基本不可能改變,因?yàn)楦淖兊某杀境^(guò)了改變的好處。

為架構(gòu)而戰(zhàn)

為了實(shí)現(xiàn)架構(gòu)這一責(zé)任,我們需要加入戰(zhàn)斗,我也許該用奮斗這個(gè)詞。坦白地說(shuō),基本上都是這樣說(shuō)的。開發(fā)團(tuán)隊(duì)必須為能讓公司發(fā)展最好的東西而奮斗。管理團(tuán)隊(duì),市場(chǎng)團(tuán)隊(duì),銷售團(tuán)隊(duì),運(yùn)維團(tuán)隊(duì)也是如此。都要奮斗。
有效率的開發(fā)團(tuán)隊(duì)迎面奮斗。記住,作為一個(gè)開發(fā)者,你就是利益相關(guān)者,你需要維護(hù)的軟件里有你的利益。這是你任務(wù)的一部分,責(zé)任的一部分,也是為什么你被雇傭的主要原因
如果你是架構(gòu)師,這個(gè)挑戰(zhàn)將會(huì)是雙倍難度。架構(gòu)的主要責(zé)任是系統(tǒng)的結(jié)構(gòu),,而不是開發(fā)功能,架構(gòu)師創(chuàng)造一個(gè)允許快速開發(fā),修改,擴(kuò)展功能的架構(gòu)。
記住,如果架構(gòu)來(lái)晚了,系統(tǒng)將變得更難維護(hù),修改對(duì)于部分或者整個(gè)系統(tǒng)最終將變得不可能。如果上述情況發(fā)生,那說(shuō)明軟件開發(fā)團(tuán)隊(duì)沒有為必要的東西付出足夠的努力。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/12002.html

相關(guān)文章

  • 代碼整潔之道

    摘要:在代碼整潔之道,提出一種軟件質(zhì)量,可持續(xù)開發(fā)不僅在于項(xiàng)目架構(gòu)設(shè)計(jì),還與代碼質(zhì)量密切相關(guān),代碼的整潔度和質(zhì)量成正比,一份整潔的代碼在質(zhì)量上是可靠的,為團(tuán)隊(duì)開發(fā),后期維護(hù),重構(gòu)奠定了良好的基礎(chǔ)。 現(xiàn)在的軟件系統(tǒng)開發(fā)難度主要在于其復(fù)雜度和規(guī)模,客戶需求也不再像Winston Royce瀑布模型期望那樣在系統(tǒng)編碼前完成所有的設(shè)計(jì)滿足用戶軟件需求。在這個(gè)信息爆炸技術(shù)日新月異的時(shí)代,需求總是在不停...

    icattlecoder 評(píng)論0 收藏0
  • Java程序員必讀書籍

    摘要:對(duì)于專業(yè)的開發(fā)者來(lái)說(shuō),單元測(cè)試是一項(xiàng)必備的技能,多數(shù)的程序員卻不具備測(cè)試驅(qū)動(dòng)開發(fā)的能力。對(duì)于工程來(lái)說(shuō),開源項(xiàng)目基本都嚴(yán)格遵守執(zhí)行單元測(cè)試,而很多商業(yè)的工程則在單元測(cè)試方面有所缺失。一個(gè)擁有單元測(cè)試的項(xiàng)目會(huì)變得更加容易維護(hù)和更改。   作為一名合格的Java程序員,日常工作除了上班擼代碼就是加班擼代碼。擼碼其實(shí)不難,無(wú)非詢問Google,StackOverflow,解決方法和demo一籮...

    aisuhua 評(píng)論0 收藏0
  • 《代碼整潔之道》讀書筆記

    摘要:但大多數(shù)情況下應(yīng)該盡量利用一些機(jī)制將二元函數(shù)轉(zhuǎn)換成一元函數(shù)。應(yīng)該為起一個(gè)更能描述函數(shù)功能的函數(shù)名副作用在于對(duì)這個(gè)調(diào)用函數(shù),顧名思義,就是用來(lái)檢查密碼。注釋及其描述的代碼之間的聯(lián)系應(yīng)該顯而易見。受控異常的代價(jià)就是違反開放閉合原則。 大師級(jí)的程序員把系統(tǒng)當(dāng)作故事來(lái)講,而不是當(dāng)作程序來(lái)寫。 showImg(https://ws3.sinaimg.cn/large/006tKfTcgy1fs0...

    pakolagij 評(píng)論0 收藏0
  • 代碼整潔之道

    摘要:代碼寫得是否整潔是客觀的,是的人或后期維護(hù)的人覺得好才是真的好。三代碼設(shè)計(jì)原則要想寫出優(yōu)雅整潔的代碼,就要遵循特定的設(shè)計(jì)原則。 歡迎關(guān)注我的公眾號(hào)睿Talk,獲取我最新的文章:showImg(https://segmentfault.com/img/bVbmYjo); 一、前言 最近在做一些項(xiàng)目重構(gòu)的工作,看了不少臟亂差的代碼,身心疲憊。本文將討論如何編寫整潔的代碼,不求高效運(yùn)行,只求...

    stefan 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<