web設(shè)計模式有哪些

本文小編為大家詳細(xì)介紹“web設(shè)計模式有哪些”,內(nèi)容詳細(xì),步驟清晰,細(xì)節(jié)處理妥當(dāng),希望這篇“web設(shè)計模式有哪些”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學(xué)習(xí)新知識吧。

創(chuàng)新互聯(lián)公司長期為1000+客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為于洪企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計、成都網(wǎng)站制作,于洪網(wǎng)站改版等技術(shù)服務(wù)。擁有10年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

1
23種設(shè)計模式:

創(chuàng)建型模式:– 單例模式、工廠模式、抽象工廠模式、建造者模式、原型模式。

結(jié)構(gòu)型模式:– 適配器模式、橋接模式、裝飾模式、組合模式、外觀模式、享元模式、式。

行為型模式:– 模版方法模式、命令模式、迭代器模式、觀察者模式、中介者模式、備式、解釋器模式、狀態(tài)模式、策略模式、職責(zé)鏈模式、訪問者

     其實這些設(shè)計模式只是一種思想,大家不需要把代碼全部背下來,而是將設(shè)計者的思維融入大家的學(xué)習(xí)和工作中,更高層次的思考!

2
單例模式

單例模式主要分為2種,其他的類型我們不做解釋:餓漢式(線程安全,調(diào)用效率高。 但是,不能延時加載。) 

懶漢式(線程安全,調(diào)用效率不高。 但是,可以延時加載

那么單例有什么作用呢?

核心作用:– 保證一個類只有一個實例,并且提供一個訪問該實例的全局訪問

給大家舉幾個很常見的例子 

–  Windows的Task Manager(任務(wù)管理器)就是很典型的單例模式

–  windows的Recycle Bin(回收站)也是典型的單例應(yīng)用。在整個系統(tǒng)運(yùn)行過程中,回收站一直維護(hù)著僅有的一個

有啥子優(yōu)點:

– 由于單例模式只生成一個實例,減少了系統(tǒng)性能開銷,當(dāng)一個對象的產(chǎn)生需要比較多的資源時,如讀取配置、產(chǎn)生其他依賴對象時,則可以通過在應(yīng)用啟動時直接產(chǎn)生一個單例對象,然后永久駐留內(nèi)存的方式來解決

– 單例模式可以在系統(tǒng)設(shè)置全局的訪問點,優(yōu)化環(huán)共享資源訪問,例如可以設(shè)計一個單例類,負(fù)責(zé)所有數(shù)據(jù)表的映射

3
餓漢式單例

public class SingletonDemo1 {
 
 //類初始化時,立即加載這個對象(沒有延時加載的優(yōu)勢)。加載類時,天然的是線程安全的!
 private static SingletonDemo1 instance = new SingletonDemo1();  
 
 private SingletonDemo1(){
 }
 
 //方法沒有同步,調(diào)用效率高!
 public static SingletonDemo1  getInstance(){
   return instance;
 }
 
}
    

     餓漢式,顧名思義,一個字-餓,必然是一加載這個類,馬上就new出一個對象(static變量會在類加載的時候初始化)此時也不會涉及多個線程對象訪問該對象的問題。虛擬機(jī)保證只會裝載一次該類,肯定不會發(fā)生并發(fā)訪問的問題。因此,可以省略synchronized關(guān)鍵。

    但是存在一個問題:就是當(dāng)我們無論是否使用了這個對象,它都幫我們new出來這個對象,這會導(dǎo)致資源的浪費(fèi)!

4
懶漢式單例

public class SingletonDemo2 {
 
 //類初始化時,不初始化這個對象(延時加載,真正用的時候再創(chuàng)建)。
 private static SingletonDemo2 instance;  
 
 private SingletonDemo2(){ //私有化構(gòu)造器
 }
 
 //方法同步,調(diào)用效率低!
 public static  synchronized SingletonDemo2  getInstance(){
   if(instance==null){
     instance = new SingletonDemo2();
   }
   return instance;
 }
 
}

懶漢式,顧名思義,一個字-懶,也就是當(dāng)我們需要他的時候,我們就把他new出來,不需要的時候就不會new出它。

但是也會出現(xiàn)一些問題: 資源利用率高了。但是,每次調(diào)用getInstance()方法都要同步,并發(fā)效率較

讀到這里,這篇“web設(shè)計模式有哪些”文章已經(jīng)介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領(lǐng)會,如果想了解更多相關(guān)內(nèi)容的文章,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)頁名稱:web設(shè)計模式有哪些
網(wǎng)頁URL:http://muchs.cn/article46/iiooeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計公司、營銷型網(wǎng)站建設(shè)、網(wǎng)站營銷、網(wǎng)站導(dǎo)航、小程序開發(fā)、移動網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)