GRASP之受保護的變化 - Kamil Grzybek
問題:如何設計物件,子系統和系統,以便這些元素的變化或不穩定性不會對其他元素產生不良影響?
解決方案:確定預測變化或不穩定的點,分配責任以圍繞它們建立穩定的介面。
在我看來,這是與其他GRASP原則間接相關的最重要的原則。目前,最重要的軟體指標之一是易於更改。作為架構師和程式設計師,我們必須為不斷變化的需求做好準備。這是無法選擇的,這是必須有的,是我們的職責與責任所在。
幸運的是,我們擁有大量的設計指南,原則,模式和實踐,以支援不同抽象層次的變更。我只會提到一些(已經超出GRASP):
- - SOLID原則,特別是Open-Close原則(但它們都支援變更)
- - Gang of Four(GoF)設計模式
- - 封裝
- - Demeter法則
- - 服務發現
- - 虛擬化和容器化
- - 非同步訊息傳遞,事件驅動架構
- - 編排,舞蹈編排
由於今天更適合迭代軟體開發過程,因為即使我們被迫改變一次,我們也可以得出結論,並以較低的成本為未來的變化做好準備。
相關文章
- GRASP之間接模式 - Kamil Grzybek模式
- GRASP之控制器模式 - Kamil Grzybek模式
- GRASP 之資訊專家模式 - Kamil Grzybek模式
- GRASP之多型性模式 - Kamil Grzybek多型模式
- 比SOLID更重要的與DDD設計相關的GRASP原則 - Kamil GrzybekSolid
- Clean清潔領域模型的幾個特點 -Kamil Grzybek模型
- 玩家——受傷後的保護狀態
- 使用PostMan Canary測試受Identity Server 4保護的Web ApiPostmanIDEServerWebAPI
- 5.1 序列化保護方式
- 受歐盟監管和保護的UKEX銀行卡支援全球消費
- HCNP Routing&Switching之RSTP保護
- 從驗證到不變性保護機制
- 兩款桌遊引發著作權之戰,法院認定“三國殺”遊戲規則受保護遊戲
- 保護孕產婦、新生兒和兒童健康免受氣候變化影響
- 無紙化時代,重要文件的保護技巧
- CWE 4.3:強化你的資料自我保護能力
- 你確定懂OAuth 2.0的三方軟體和受保護資源服務?OAuth
- Azure AD(二)呼叫受Microsoft 標識平臺保護的 ASP.NET Core Web API 下ROSASP.NETWebAPI
- [譯] 用 React 和 Node.js 實現受保護的路由和許可權驗證ReactNode.js路由
- 保護期限
- 保護模式模式
- 撈乾貨 | 等保2.0的變化在哪裡?
- lua保護的前世今生
- 【等級保護】等級保護共分為幾級?保護物件是指什麼?物件
- 門羅幣隱私保護之環簽名
- 門羅幣隱私保護之隱形地址
- Win10安全特性之執行流保護Win10
- SpringCloud系列之服務容錯保護Netflix HystrixSpringGCCloud
- 寫在2024年國際資料保護日之際:如何保護資料安全和隱私?
- 【科普】等級保護與分級保護的區別和聯絡!
- gitlab分支保護Gitlab
- Linux中的保護機制Linux
- 流的破壞與保護
- 10G DG最大可用模式下備庫發生故障時主庫保護級別的變化模式
- 門羅幣隱私保護之範圍證明
- class-dump 混淆加固、保護與最佳化原理
- win10 保護眼睛的方法 win10 保護眼睛怎麼設定Win10
- c++語言中類的私有型別或保護型別成員變數C++型別變數