發(fā)布時(shí)間:2021-10-22 09:14:17
作者:微紅科技
閱讀次數(shù):6709
當(dāng)前位置: 微紅科技 - 新聞動(dòng)態(tài) - 微紅科技告訴你——軟件開發(fā)必知的七大原則
原則就是人們行為的基礎(chǔ)性準(zhǔn)則,是具有一定持續(xù)性的規(guī)則
軟件開發(fā)也具有屬于自己的原則,為了提高軟件開發(fā)的質(zhì)量
微紅科技的程序員在開發(fā)時(shí),始終遵守著軟件這些界內(nèi)原則
?
第一原則:存在的理由
一個(gè)軟件系統(tǒng)存在的理由就是:為它的用戶提供價(jià)值。你所有的決定都取決于這一點(diǎn)。在指定一個(gè)系統(tǒng)需求,在寫下一段系統(tǒng)功能,在決定硬件平臺(tái)和開發(fā)過程之前,問你自己一個(gè)問題,“這樣做會(huì)為系統(tǒng)增加價(jià)值嗎?“,如果答案是”yes”,做。如果是”No”,不做。這個(gè)原則是其他原則的原則。
?
?
第二原則(能簡(jiǎn)單就簡(jiǎn)單,愚蠢?。㎏ISS
軟件設(shè)計(jì)不是一個(gè)輕描淡寫的過程。在做任何一個(gè)設(shè)計(jì)時(shí),你必須考慮很多因素。所有設(shè)計(jì)應(yīng)當(dāng)盡可能簡(jiǎn)單,但是不要再比這簡(jiǎn)單了。這樣產(chǎn)生的系統(tǒng)才是可以理解和容易維護(hù)的。這并不是說(shuō)很多有意義的特性,因?yàn)檫@種簡(jiǎn)單性也要被拋棄。確實(shí)很多更優(yōu)雅的設(shè)計(jì)往往更簡(jiǎn)單,但簡(jiǎn)單并不意味著“quick and dirty.”。事實(shí)上,簡(jiǎn)單是通過許多思考和一次一次的反復(fù)修改才達(dá)到的。這些努力的匯報(bào)就是更容易維護(hù),代碼錯(cuò)誤更少。(看看是否違反)
第三原則:保持遠(yuǎn)見
清晰的遠(yuǎn)見是一個(gè)軟件項(xiàng)目成功的基礎(chǔ)。沒有這樣的遠(yuǎn)見,項(xiàng)目開發(fā)最后就變成天天為一個(gè)不好的設(shè)計(jì)做補(bǔ)丁。Brooks說(shuō)過:概念的完整性是系統(tǒng)設(shè)計(jì)中最重要的問題。Stroustrup也說(shuō):有一個(gè)干凈的內(nèi)部結(jié)構(gòu)是構(gòu)建一個(gè)可理解、可辨識(shí)、可維護(hù)、可測(cè)試系統(tǒng)的基礎(chǔ)。Booch則總結(jié)道:只有當(dāng)你對(duì)系統(tǒng)的體系有一個(gè)清晰的感覺,才可能去發(fā)現(xiàn)通用的抽象和機(jī)制。開發(fā)這種通用性最終導(dǎo)致系統(tǒng)更簡(jiǎn)單,因此更小、更可靠。如果你不斷地復(fù)制、粘貼、修改代碼,最終你將陷入一個(gè)大泥潭(the Big Mud),你永遠(yuǎn)不可能對(duì)系統(tǒng)有一個(gè)清晰的認(rèn)識(shí)。
?
第四原則:你制造的,別人會(huì)消費(fèi)
軟件系統(tǒng)不是在真空中使用的。其他人會(huì)使用、維護(hù)、文檔化你的系統(tǒng)。這依賴于對(duì)你系統(tǒng)的理解。所以,你設(shè)計(jì)、實(shí)現(xiàn)的東西應(yīng)當(dāng)能夠讓別人理解。要記住,你寫的代碼并非只給計(jì)算機(jī)看,你要時(shí)時(shí)記住,代碼還要給人看(Kent Beck)。如果到處泛濫似是而非的代碼,別人如何能夠辨別這些代碼的相似和不同,如何去理解這些代碼之間具有何種關(guān)系。
?
?
第五原則:對(duì)將來(lái)開放
一個(gè)成功的軟件有很長(zhǎng)的生命期。你必須能夠使得軟件能夠適應(yīng)這樣和那樣的變化。所以,一開始就不要將軟件設(shè)計(jì)到死角上去。請(qǐng)總是問一下自己“如果這樣,那么。。?“這個(gè)問題,你要考慮到各種各樣的可能性,而不光光是圖省事。復(fù)制,粘貼一下即可。
?
第六原則:為重用做好計(jì)劃
重用可節(jié)省時(shí)間和精力。實(shí)現(xiàn)高水平的重用可以說(shuō)是開發(fā)軟件系統(tǒng)最難的目標(biāo)。代碼和設(shè)計(jì)的重用已被宣稱為使用面向?qū)ο蠹夹g(shù)的主要優(yōu)勢(shì)。但是,這項(xiàng)投資的回報(bào)并不是自動(dòng)的。為了利用面向?qū)ο缶幊烫峁┑闹赜每赡苄裕覀冃枰A(yù)先考慮和規(guī)劃。在系統(tǒng)開發(fā)過程的每個(gè)級(jí)別都有很多技術(shù)可以用來(lái)實(shí)現(xiàn)重用。詳細(xì)設(shè)計(jì)和代碼級(jí)別的重用技術(shù)不但眾所周知而且是有文檔的。
新的文獻(xiàn)正在以軟件模式的形式尋覓設(shè)計(jì)的重用。然而,這只是戰(zhàn)斗的一部分。與組織中的其他人交流重用的機(jī)會(huì)至關(guān)重要。如何重用你不知道的東西?提前規(guī)劃重用可降低成本并提高可重用組件及其所在系統(tǒng)的價(jià)值。
?
?
第七原則:思考!
在采取任何動(dòng)作之前首先做一個(gè)清晰、完整的考慮,這樣才能產(chǎn)生更好的結(jié)果。如果你考慮了,但還是產(chǎn)生錯(cuò)誤的結(jié)果,那么這種努力也是值得的。在你學(xué)習(xí)或研究類似的問題時(shí),將更容易理解和掌握。
?
這些原則告訴我們輕松地復(fù)制、粘貼和修改代碼不可能產(chǎn)生好的,也就是容易理解、維護(hù)、重用的代碼。但請(qǐng)不要走極端。我一直認(rèn)為,一個(gè)好的軟件系統(tǒng)是各種因素權(quán)衡的結(jié)果,也就是你如何把握一個(gè)度的問題,明確的思想進(jìn)入到系統(tǒng),就會(huì)產(chǎn)出價(jià)值。應(yīng)用前六個(gè)原則需要深入的思考,當(dāng)然潛在的回報(bào)也是不可估量。
?
上一篇: 談SEO優(yōu)化理念之主題模型!
下一篇: 談SEO優(yōu)化理念之主題模型!
Copyright ? 微紅科技 All Rights Reserved
黔公網(wǎng)安備
黔ICP備17001430號(hào)-1
【微紅科技官方微博】
版權(quán)所有:微紅科技
百度統(tǒng)計(jì)