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

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > asp.net >内容正文

asp.net

设计模式学习笔记 1.介绍

發(fā)布時(shí)間:2024/1/17 asp.net 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 设计模式学习笔记 1.介绍 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

學(xué)習(xí)設(shè)計(jì)模式是為了深入理解OO思想和原則。

學(xué)習(xí)設(shè)計(jì)模式的基礎(chǔ)知識(shí):

必須先有類和對(duì)象,才可以談設(shè)計(jì)模式。把現(xiàn)實(shí)世界的業(yè)務(wù)功能抽象成對(duì)象,如何抽象?GRASP給出了基本的指導(dǎo)原則。

GRASP, General Responsibility Assignment Software Patterns,通用職責(zé)分配軟件模式。描述了對(duì)象設(shè)計(jì)和職責(zé)分配的基本原則。

  • 信息專家

    如果某個(gè)類擁有完成某個(gè)職責(zé)所需的所有信息,那么這個(gè)職責(zé)應(yīng)該分配給這個(gè)類去實(shí)現(xiàn)。

    ?

  • 創(chuàng)建者

    正確創(chuàng)建耦合關(guān)系,凡符合以下條件,皆可用A創(chuàng)建B。

  • A是B的聚合
  • A是B 的容器
  • A持有初始化B的信息
  • A記錄B的實(shí)例
  • A頻繁使用B

    ?

  • 低耦合

    盡可能減少類之間的連接。

    作用:降低因一個(gè)類的變化而影響其它類的范圍;類變得簡(jiǎn)單,更內(nèi)聚更容易理解。

    造成A、B之間的耦合有如下情況:

  • A是B的屬性
  • A調(diào)用B的實(shí)例方法
  • A的方法中引用了B,返回值或參數(shù)中
  • A是B的了類,或A實(shí)現(xiàn)了B
  • 降低耦合的原則:Don't talk to strangers

    ?

  • 高內(nèi)聚

    ?

  • 控制器

    用來(lái)接收和處理系統(tǒng)事件的職責(zé),一般分配給能夠代表整個(gè)系統(tǒng)的類(可能有多個(gè),分管不同的事務(wù))。

    ?

  • 多態(tài)
  • 純虛構(gòu)
  • 間接
  • 受保護(hù)變化
  • ?

    設(shè)計(jì)原則:

    比設(shè)計(jì)更重要的是原則。

  • 單一職責(zé)原則
  • 開(kāi)發(fā)-封閉原則
  • 依賴倒置原則
  • 接口隔離原則
  • 替換原則
  • 轉(zhuǎn)載于:https://www.cnblogs.com/sansi/archive/2012/02/27/2370634.html

    總結(jié)

    以上是生活随笔為你收集整理的设计模式学习笔记 1.介绍的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。