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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

单一职责原理讲解

發(fā)布時(shí)間:2024/4/13 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 单一职责原理讲解 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

現(xiàn)在我們來看一下單一職責(zé)原則,我們先來看一下定義,不要存在多于一個(gè)導(dǎo)致類變更的原因,那這句話怎么理解,假設(shè)我們有一個(gè)類,負(fù)責(zé)兩個(gè)職責(zé),職責(zé)一和職責(zé)二,一旦我們的需求變更,比如說職責(zé)一相關(guān)的功能,需要發(fā)生改變,那我們在修改class類的時(shí)候,有可能原本變成正常的職責(zé)二發(fā)生故障,那這個(gè)就是我們在構(gòu)造Class的時(shí)候,沒有遵循單一職責(zé)原則,那再回到這個(gè)定義來說,也就是對于這個(gè)Class,職責(zé)一和職責(zé)二這兩個(gè)職責(zé),需求發(fā)生改變的時(shí)候,都會(huì)影響這個(gè)class,那就是說這個(gè)class他存在兩個(gè)職責(zé),這兩個(gè)職責(zé)都有可能發(fā)生變更,他存在兩個(gè)改變類的原因,那這個(gè)定義就很好理解了,那解決方案就是遵循單一職責(zé)原則,對于這兩個(gè)職責(zé),分別建立class1和class2,分別負(fù)責(zé)職責(zé)一和職責(zé)二,那這樣我們即使在修改職責(zé)一的時(shí)候,對于負(fù)責(zé)職責(zé)二的class2,也不會(huì)發(fā)生變更,也不會(huì)是他發(fā)生故障,這樣也就減輕了負(fù)責(zé)職責(zé)二的class2發(fā)生故障的風(fēng)險(xiǎn),同理修改class2的時(shí)候,也不會(huì)使class1發(fā)生故障,那單一職責(zé)原則,體現(xiàn)在哪幾個(gè)方面呢,我們來看一下,首先一個(gè)類,一個(gè)接口,一個(gè)方法,體現(xiàn)在這個(gè)三個(gè)方面,那對于這句話,就是定義的一個(gè)擴(kuò)展,一個(gè)類,一個(gè)接口,或者一個(gè)方法,只負(fù)責(zé)一項(xiàng)職責(zé),對于他的優(yōu)點(diǎn),我們來看一下,降低類的復(fù)雜度,提高類的可讀性,提高系統(tǒng)的可維護(hù)性,降低變更引起的風(fēng)險(xiǎn),那我們一句一句來解讀,首先減低類的復(fù)雜度,一個(gè)類只負(fù)責(zé)一項(xiàng)職責(zé),對于的邏輯肯定要比負(fù)責(zé)多個(gè)職責(zé)簡單的多,提高類的可讀性,那這個(gè)類比較簡單,他也就更可讀一些,同時(shí)也提高了系統(tǒng)的可維護(hù)性,對于降低變更引起的風(fēng)險(xiǎn),怎么看呢,首先變更是必然的,我們要接受變更,如果單一職責(zé)原則遵循的好,當(dāng)修改一個(gè)功能時(shí),可以顯著降低對其他功能的影響,那這里面需要說明的一點(diǎn)是,單一職責(zé)原則不僅僅是面向?qū)ο缶幊趟赜械?只要是模塊化的程序設(shè)計(jì),都適用于單一職責(zé)原則,那接下來我們就一起來coding,在coding的過程中我們一起來體會(huì)單一職責(zé)原則

?

總結(jié)

以上是生活随笔為你收集整理的单一职责原理讲解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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