文章分类: 编程
编程

设计模式之责任链(Chain of Responsibility)模式

102 2024-02-01 23:02:00

责任链(Chain of Responsibility )模式是一种行为设计模式,允许沿着处理程序链传递请求。收到请求后,每个处理程序决定处理该请求或将其传递给链中的下一个处理程序。问题描述假设你正在开发一个在线订单系统。您希望限制对系统的访问,以便只有经过身份验证的用户才能创建订单。此外,具有...

详情...
编程

Tailwind CSS v3.4 支持动态视口单位(dvh,lvh,svh)、支持 :has()、支持子网格等功能。

113 2024-02-01 11:33:00

Tailwind v3.4 已发布,支持动态 viewport 单位、支持 :has()、子网格等!在最近的发布公告中,Adam Wathan 提到许多与构建新的 Catalyst UI 套件直接相关的功能:

详情...
编程

DevDB - 在 VS Code 内访问数据库!

149 2024-02-01 10:50:00

DevDb 是一个轻量级 VS Code 扩展,提供了数据库 GUI 客户端,并且在编辑器中直接显示数据以及 Schema 详情:该软件包支持 SQLite、MySQL 和 PostgreSQL,带有零配置选项,使得该扩展可以自动检测使用的数据库。零配置选项很有用,因为你可以通过项目的 .env 文件配置数据库,而且 DevDb 自动知晓如何连接...

详情...
编程

设计模式之工厂方法(Factory Method)

161 2024-01-31 03:40:00

工厂方法是一种创建型设计模式,它为在超类中创建对象提供了一个接口,但允许子类更改将要创建的对象的类型。问题描述想象一下,你正在创建一个物流管理应用。你的应用程序的第一个版本只能处理卡车运输,所以你的大部分代码都在卡车类(Truck)中。过了一段时间,你的应用程序变得非常受欢迎。每天,您都会收到数十个来自海运公司的请求,要求将海运物流纳入...

详情...
编程

Filament v3.2 介绍

145 2024-01-30 23:55:00

Filament v3.2 已经发布了!这个版本包含了一系列非常令人兴奋的更新,所以让我们直接进入并看看吧!和往常一样,如果你喜欢直接在 Github 上阅读有关更改的信息,请查看此处的 v3.2 更改日志。CSV/Excel 导出(Export) Action在 Filament v3.1中,引入了使用 CSV 导入大量数据的功能。从那时起,最常见的要求的...

详情...
编程

设计模式之原型(Prototype)模式

129 2024-01-30 01:12:00

又称: 克隆模式(Clone)。原型模式(Prototype)是创建型设计模式,它允许克隆对象,甚至是复杂的对象,而不必耦合到它们的特定类。所有原型类都应该有一个公共接口,即使对象的具体类是未知的,也可以复制对象。原型对象可以生成完整的副本,因为同一类的对象可以访问彼此的私有字段。

详情...
编程

设计模式之代理(Proxy)模式

143 2024-01-29 01:12:00

代理模式(Proxy)是一种结构型设计模式,允许你提供为另一个对象提供替代或占位符。代理控制对原始对象的访问,允许你在请求到达原始对象之前或之后执行某些操作。问题描述为什么要控制对对象的访问?这里有一个例子:你有一个巨大的对象,它消耗了大量的系统资源。你有时需要它,但并不总是如此。你可以实现惰性初始化:只在实际需要时创建此对象。对象的所有客户端都需要执行...

详情...
编程

设计模式之桥接(Bridge)模式

136 2024-01-28 02:33:00

意图桥接模式(Bridge)是一种结构型设计模式,可以将一个大型类或一组密切相关的类拆分为两个独立的层次结构——抽象和实现——它们可以相互独立地开发。问题描述抽象?实现?听起来很吓人?请保持冷静,我们来思考一个简单的示例。假设你有一个几何形状 shape 类,它有一对子类:Circle 和 Square。你想扩展这个类层次结构以合并颜色,所以你计划创建 Re...

详情...
编程

设计模式之适配器(Adapter)模式

145 2024-01-27 17:42:00

又名 Wrapper。Adapter 是一种结构型设计模式,他允许有着不兼容接口的对象进行合作。问题描述假设你创建了一个股票市场监测应用。该应用以 XML 格式从多个源下载股票数据,然后为用户显示了优美的图表。在某个时刻,你决定整合一个智能的第三方分析库,改进应用。但有一个问题:分析库只适用于 JSON 格式的数据。您可以修改库以使用 XML。但是,这可能...

详情...
编程

设计模式之观察者(Observer)模式

153 2024-01-26 20:37:00

又名: 事件订阅者(Event-Subscriber), 监听者(Listener)。观察者模式(Observer)是一种行为设计模式,允许你定义一个订阅机制,用以向多个对象通知他们正在观察的对象发生的任何事件。问题描述假设你有两类对象: Customer 和 Store。顾客(customer)对特定品牌的产品非常感兴趣(比如 iphone 的...

详情...