[設計模式]設計模式的作用


設計模式的目的和實現方法

目的: 實現復用。那麼一段代碼可以復用於不同的地方, 從而減少開發成本和時間

  • 復用: 復用不是指代碼層面的複用, 而是編譯層面的復用, 即不是代碼沒有修改就算復用, 而是還需要不需要再次編譯才算是復用
  • 模式 : 每一個模式描述了一個在我們周圍不斷重復發生的問題, 以及該問題的解決方案的核心, 這樣, 你就能一次又一次地使用該方案而不必做重復勞動
  • 實現難點(變化): 影響復用的最大的問題是變化, 因為如果需求變化, 而代碼要隨之發生很大的改變, 那麼代碼的復用性就很差, 所以一個好的設計, 指的是那些可以滿足"應對變化, 提高復用"的設計

實現方法: 隔離穩定和變化, 不讓變化污染到穩定的部分, 那麼穩定的部分就可以實現復用。 因此重點是發現穩定點和變化點, 只有確定穩定點和變化點才能在變化點處應用設計模式, 從而應對需求的變化

  • 重構: 重構是普遍公認的最好的使用設計模式的方法, 不應該一開始使用設計模式, 因為設計模式的使用需要成本, 而編程不應該為未發生的事情付出成本

面向對象設計模式

面向對象設計模式是設計模式的可行性方案之一, 面向對象設計最大的優勢在於抵御變化

對象:

  • 從語言實現層面(實現者角度)來看, 物件封裝了代碼與數據
  • 從規格層面(使用者角度)來看, 物件是一系列可被使用的公開接口
  • 從概念層面(架構者角度)來看, 物件是某種擁有責任的抽象
相关推荐
学习星球9 小时前
AI Agent 成本工程实战:从 OpenAI Codex 的 8 个“烧 Token“Bug 学起
人工智能·设计模式·微信小程序
AI人工智能+电脑小能手1 天前
大白话说Java设计模式-46-责任链模式(业务实战篇)
java·设计模式·责任链模式·风控校验·servlet filter·spring interceptor·链式处理
码匠许师傅2 天前
【设计模式精讲】7.建造者模式(Builder)
设计模式·建造者模式
码匠许师傅2 天前
【设计模式精讲】6.抽象工厂(Abstract Factory)
c++·设计模式
workflower2 天前
人形机器人灵巧手产业链
人工智能·设计模式·机器人·云计算·无人机
Java后端的Ai之路2 天前
03、Python - 抽象工厂模式
开发语言·python·设计模式·抽象工厂模式·通用智慧
AI人工智能+电脑小能手2 天前
大白话说Java设计模式-45-解释器模式(源码剖析篇)
java·设计模式·解释器模式·源码分析·pattern·spel·javacc
码匠许师傅3 天前
【设计模式精讲】4.单例模式(Singleton)
c++·单例模式·设计模式
雾削木3 天前
2026 编程领域热点知识速览:AI 辅助开发、设计模式实战与嵌入式高效迭代
人工智能·设计模式
AI人工智能+电脑小能手4 天前
大白话说Java设计模式-42-访问者模式(业务实战篇)
java·spring·设计模式·访问者模式·asm·营销规则·数据结构与操作分离