日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > asp.net >内容正文

asp.net

《研磨设计模式》chap23 职责链模式chainOfResponsibility(3)功能扩展+总结

發布時間:2025/3/21 asp.net 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《研磨设计模式》chap23 职责链模式chainOfResponsibility(3)功能扩展+总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1. 擴展

功能鏈:某個鏈處理完繼續向下傳遞。

public class SaleModel {//銷售的商品 private String goods;public String getGoods() {return goods;}public void setGoods(String goods) {this.goods = goods;} public String toString(){return "商品名稱="+goods+",銷售數量="+saleNum;} }public abstract class SaleHandler {//持有下一個處理請求的對象 protected SaleHandler successor = null;//設置下一個處理請求的對象 public void setSuccessor(SaleHandler successor){this.successor = successor;}//處理保存銷售信息的請求 public abstract boolean sale(String user,String customer,SaleModel saleModel); }public class SaleDataCheck extends SaleHandler{public boolean sale(String user, String customer, SaleModel saleModel) {//進行數據通用檢查,稍麻煩點,每個數據都要檢測if(user==null || user.trim().length()==0){System.out.println("申請人不能為空");return false;}if(customer==null || customer.trim().length()==0){System.out.println("客戶不能為空");return false;}if(saleModel==null ){System.out.println("銷售商品的數據不能為空");return false;}if(saleModel.getGoods()==null ||saleModel.getGoods().trim().length()==0){System.out.println("銷售的商品不能為空");return false;}if(saleModel.getSaleNum()==0){System.out.println("銷售商品的數量不能為0");return false;} //如果通過了上面的檢測,那就向下繼續執行return this.successor.sale(user, customer, saleModel);} }public class SaleSecurityCheck extends SaleHandler{ ... }public class SaleLogicCheck extends SaleHandler{ ... }public class GoodsSaleEbo {/*** 保存銷售信息,本來銷售數據應該是多條,太麻煩了,為了演示,簡單點* @param user 操作人員* @param customer 客戶* @param saleModel 銷售數據* @return 是否保存成功*/public boolean sale(String user,String customer,SaleModel saleModel){//如果全部在這里處理,基本的順序是//1:權限檢查//2:通用數據檢查(這個也可能在表現層已經作過了)//3:數據邏輯校驗//4:真正的業務處理//但是現在通過功能鏈來做,這里就主要負責構建鏈SaleSecurityCheck ssc = new SaleSecurityCheck();SaleDataCheck sdc = new SaleDataCheck();SaleLogicCheck slc = new SaleLogicCheck();SaleMgr sd = new SaleMgr();ssc.setSuccessor(sdc);sdc.setSuccessor(slc);slc.setSuccessor(sd);//向鏈上的第一個對象發出處理的請求return ssc.sale(user, customer, saleModel);} }public class Client {public static void main(String[] args) {//創建業務對象GoodsSaleEbo ebo = new GoodsSaleEbo();//準備測試數據SaleModel saleModel = new SaleModel();saleModel.setGoods("張學友懷舊經典");saleModel.setSaleNum(10);//調用業務功能ebo.sale("小李", "張三", saleModel);ebo.sale("小張", "李四", saleModel);} }

2. 總結
2.1 優點

  • 請求者和接收者松散耦合
    在職責鏈模式中,請求者并不知道接收者是誰,也不知道具體如何處理,請求者只是負責向職責鏈發出請求就可以了。而每個職責對象也不用管請求者或者是其他的職責對象,只負責處理自己的部分,其他的就交給其他的職責對象去處理。也就是說,請求者和接收者是完全解耦的。
  • 動態組合職責
    職責鏈模式會把功能處理分散到單獨的職責對象中,然后在使用的時候,可以動態組合職責形成職責鏈,從而可以靈活地給對象分配職責,也可以靈活地實現和改變對象的職責。

2.2缺點

  • 產生很多細粒度對象
    職責鏈模式會把功能處理分散到單獨的職責對象中,也就是每個職責對象只處理一個方面的功能,要把整個業務處理完,需要很多職責對象的組合,這樣會產生大量的細粒度職責對象。不一定能被處理

2.3 職責鏈模式的本質:分離職責,動態組合。

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的《研磨设计模式》chap23 职责链模式chainOfResponsibility(3)功能扩展+总结的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 大地资源高清播放在线观看 | 精品人妻伦一二三区久 | 午夜偷拍福利视频 | 伊人久久麻豆 | 国产一区二区三区中文字幕 | 日韩精品国产精品 | 麻豆极品| 亚洲三级成人 | 欧美日韩卡一卡二 | 老司机午夜免费福利 | 美日韩中文字幕 | 啪啪自拍视频 | 日韩一级中文字幕 | 日韩av黄色片 | 日本伦理中文字幕 | 精品人妻无码一区二区三区蜜桃一 | 看黄色的网站 | 依依成人在线视频 | 欧美日韩在线直播 | videos麻豆 | 四虎久久久久 | 国产精品视频免费网站 | 中文字幕av一区二区三区人妻少妇 | 你懂的日韩| 亚洲成人a√| 日韩在线精品强乱中文字幕 | 天天色天天爱 | 亚洲av永久无码精品国产精品 | 欧美人和黑人牲交网站上线 | 欧美三级精品 | 国产极品999 | 久久久精品美女 | a在线免费 | 高跟91娇喘 | 高清乱码免费网 | 无人码人妻一区二区三区免费 | 老师上课夹震蛋高潮了 | 豆花免费跳转入口官网 | 欧美日韩国产一区二区三区在线观看 | 毛片啪啪啪 | 成人免费观看a | 亚洲精品久久久久久久久久久 | 天天干狠狠干 | 另类色综合 | 国产农村妇女精品一二区 | 成人颜色网站 | 99re视频在线| 色噜噜狠狠一区二区 | 一级黄色大片免费看 | 国产精品久久久久久久成人午夜 | www.尤物 | 成年人国产精品 | 五月综合视频 | 欧美色欧美 | 国产精品无码一区二区三 | 中文字幕一区二区三区精彩视频 | 欧美在线一二三 | 欧美性猛交xxxx黑人猛交 | www.亚洲视频| 免费国产视频在线观看 | 激情久久av | 亚洲精品粉嫩小泬 | 正在播放adn156松下纱荣子 | 久久久久亚洲av无码a片 | 97精品熟女少妇一区二区三区 | 手机看片一区二区 | 国产天堂| jzz国产| 日本激情视频在线观看 | 亚洲乱码国产乱码精品精98午夜 | 99精品欧美一区二区蜜桃免费 | 成人av电影免费观看 | 精品爆乳一区二区三区 | 玖玖爱av| 深夜毛片| 天天综合天天干 | 婷婷六月综合网 | 99999视频 | 欧美区一区二 | 激情内射人妻1区2区3区 | 欧美激情校园春色 | 看片网址国产福利av中文字幕 | 天天摸天天干天天操 | 91精品国产色综合久久不卡98口 | 久久久精品国产免费爽爽爽 | 一区二区三区四区精品 | 夜夜伊人 | 国产三级在线免费观看 | 一级国产特黄bbbbb | 一本大道av伊人久久综合 | 日本va欧美va国产激情 | 秋霞电影网一区二区 | 国产一级片久久 | 老熟女高潮一区二区三区 | 特黄一级片 | 成人动漫在线观看免费 | 成人在线观看网 | 人妻一区二区三区四区 | 13日本xxxxxⅹxxx20 |