關(guān)于軟件設(shè)計(jì)一直是很多人想要了解的內(nèi)容,尤其是關(guān)于軟件設(shè)計(jì)有哪些好的方法,設(shè)計(jì)模式和原則是什么等問(wèn)題。其實(shí)關(guān)于軟件設(shè)計(jì)的方法有很多,但是問(wèn)題是看要設(shè)計(jì)什么樣的產(chǎn)品。而關(guān)于軟件設(shè)計(jì)的模式就是GOF的23種設(shè)計(jì)模式。另外關(guān)于軟件設(shè)計(jì)的原則,這里總結(jié)了10個(gè)原則,大多數(shù)情況下,非常適用,不過(guò)具體情況還要根據(jù)實(shí)際需求來(lái)看。
軟件設(shè)計(jì)有哪些好的方法?
不同的軟件,開(kāi)發(fā)設(shè)計(jì)有不同的方式,但不論是什么軟件,一定是根據(jù)需求來(lái)的,首先都是分析軟件需要什么樣的功能,然后劃分模塊,再分別實(shí)現(xiàn)、完成測(cè)試,最后就是成品。也正因?yàn)檐浖奶匦裕杂蟹譃椴煌拈_(kāi)發(fā)模型,如敏捷開(kāi)發(fā),針對(duì)小型項(xiàng)目快速的開(kāi)發(fā)模式,周期短,成品快。如MVC開(kāi)發(fā)模型,很基礎(chǔ)的開(kāi)發(fā)模式,相信程序員都學(xué)過(guò),適合很簡(jiǎn)單的網(wǎng)站系統(tǒng)開(kāi)發(fā)。總之,開(kāi)發(fā)設(shè)計(jì)的模型模式很多,適合項(xiàng)目的開(kāi)發(fā)模式才是好的開(kāi)發(fā)模式,有興趣可以去看看開(kāi)發(fā)模型的書(shū)籍。更多軟件知識(shí),關(guān)注留言,相互探討。
軟件設(shè)計(jì)模式是什么?
常用的就是GOF的23種設(shè)計(jì)模式:
1. 創(chuàng)建型(5):?jiǎn)卫J剑S方法模式,抽象工廠模式,建造者模式,原型模式;
2. 行為型(11):觀察者模式,策略模式,命令模式,狀態(tài)模式,解釋器模式,迭代器模式,中介者模式,訪問(wèn)者模式,備忘錄模式,責(zé)任鏈模式,模板方法模式;
3. 結(jié)構(gòu)型(7):適配器模式,外觀模式,代理模式,裝飾者模式,組合模式,橋接模式,享元模式。
框架模式:
MVC
MVP
MVVM
軟件設(shè)計(jì)原則是什么?
1.可靠性
用軟件系統(tǒng)規(guī)模越做越大越復(fù)雜,其可靠性越來(lái)越難保證。應(yīng)用本身對(duì)系統(tǒng)運(yùn)行的可靠性要求越來(lái)越高,軟件系統(tǒng)的可靠性也直接關(guān)系到設(shè)計(jì)自身的聲譽(yù)和生存發(fā)展競(jìng)爭(zhēng)能力。軟件可靠性意味著該軟件在測(cè)試運(yùn)行過(guò)程中避免可能發(fā)生故障的能力,且一旦發(fā)生故障后,具有解脫和排除故障的能力。軟件可靠性和硬件可靠性本質(zhì)區(qū)別在于:后者為物理機(jī)理的衰變和老化所致,而前者是由于設(shè)計(jì)和實(shí)現(xiàn)的錯(cuò)誤所致。故軟件的可靠性必須在設(shè)計(jì)階段就確定,在生產(chǎn)和測(cè)試階段再考慮就困難了。
2.健壯性
健壯性又稱魯棒性,是指軟件對(duì)于規(guī)范要求以外的輸入能夠判斷出這個(gè)輸入不符合規(guī)范要求,并能有合理的處理方式。軟件健壯性是一個(gè)比較模糊的概念,但是卻是非常重要的軟件外部量度標(biāo)準(zhǔn)。軟件設(shè)計(jì)的健壯與否直接反應(yīng)了分析設(shè)計(jì)和編碼人員的水平。
3.可修改性
要求以科學(xué)的方法設(shè)計(jì)軟件,使之有良好的結(jié)構(gòu)和完備的文檔,系統(tǒng)性能易于調(diào)整。
4.容易理解
軟件的可理解性是其可靠性和可修改性的前提。它并不僅僅是文檔清晰可讀的問(wèn)題,更要求軟件本身具有簡(jiǎn)單明了的結(jié)構(gòu)。這在很大程度上取決于設(shè)計(jì)者的洞察力和創(chuàng)造性,以及對(duì)設(shè)計(jì)對(duì)象掌握得透徹程度,當(dāng)然它還依賴于設(shè)計(jì)工具和方法的適當(dāng)運(yùn)用。
5.程序簡(jiǎn)便
6.可測(cè)試性
可測(cè)試性就是設(shè)計(jì)一個(gè)適當(dāng)?shù)臄?shù)據(jù)集合,用來(lái)測(cè)試所建立的系統(tǒng),并保證系統(tǒng)得到全面的檢驗(yàn)。
7.效率性
軟件的效率性一般用程序的執(zhí)行時(shí)間和所占用的內(nèi)存容量來(lái)度量。在達(dá)到原理要求功能指標(biāo)的前提下,程序運(yùn)行所需時(shí)間愈短和占用存儲(chǔ)容量愈小,則效率愈高。
8.標(biāo)準(zhǔn)化原則
在結(jié)構(gòu)上實(shí)現(xiàn)開(kāi)放,基于業(yè)界開(kāi)放式標(biāo)準(zhǔn),符合國(guó)家和信息產(chǎn)業(yè)部的規(guī)范。
9.先進(jìn)性
滿足客戶需求,系統(tǒng)性能可靠,易于維護(hù)。
10.可擴(kuò)展性
軟件設(shè)計(jì)完要留有升級(jí)接口和升級(jí)空間。
以上即是關(guān)于軟件設(shè)計(jì)有哪些好的方法,以及軟件設(shè)計(jì)模式和原則是什么的全部?jī)?nèi)容,想了解更多關(guān)于軟件設(shè)計(jì)的信息,請(qǐng)繼續(xù)關(guān)注中培偉業(yè)。