有哪些编程语言自我封装了一些设计模式?

作者:滴水穿石 | 创建时间: 2023-04-25
设计模式(Design pattern)是一套反复出现问题的解决方案、多数人知晓的、代码设计经验的总结。很多编程语言自身就已经包含了大量的设计模式,我们开发人员可以直接使用,不用再自己编写。如java的jdk封装了原型模式、观察者模式、动态...
有哪些编程语言自我封装了一些设计模式?

操作方法

java封装的动态代理模式,为其他对象提供一种代理以控制对这个对象的访问,java.lang.reflect.Proxy、java.lang.reflect.InvocationHandler, //取得代理对象 Proxy.newProxyInstance(target.getClass().getClassLoader(), target.getClass().getInterfaces(), this); //实现InvocationHandler接口实现invoke方法 public Object invoke(Object proxy, Method method, Object[] args) throws Throwable;

java封装的原型模式,可以将对象进行浅复制和深复制,Object.clone(),java.lang.Cloneable

java封装的迭代器模式,将集合的迭代和集合本身分离,java.util.Iterator,java.util.Collection.iterator()

java封装的观察者模式,通知对象状态改变,java.util.Observable,java.util.Observer

js的原型模式,prototype,js的原型使用代码示例如图

Object-C的KVO 观察者模式,KVO的使用步骤: 通过addObserver: forKeyPath: options: context:为被监听对象(它通常是数据模型)注册监听器 重写监听器的observeValueForKeyPath: ofObject: change: context:方法

温馨提示

语言类库中实现的设计模式在学会使用的同时,也需要理解设计模式的意图和作用,在以后自己的编码过程中,可以适当的封装
点击展开全文

更多推荐