20、设计模式:工厂与构建器助力对象创建

设计模式:工厂与构建器助力对象创建

1. 数据库连接与工厂模式

1.1 数据库连接方法

在完成适配器相关操作后,会有一个基础类,它针对不同类型的数据库,都有一个名为 <<db_type>>_connection 的方法。要根据适配器名称创建实际的数据库连接,基础类会将特定数据库方法的名称构建为字符串。示例代码如下:

adapter = "mysql"
method_name = "#{adapter}_connection"
Base.send(method_name, config)

上述代码最后一行实际上调用了特定数据库的方法,并将数据库连接配置(如数据库名、用户名和密码等)作为参数传递,从而实现即时连接。

1.2 工厂模式概述

工厂模式主要用于解决“选择哪个类”的问题,主要包含工厂方法模式和抽象工厂模式。
- 工厂方法模式 :将模板方法模式应用于对象创建。该模式把“选择哪个类”的问题留给子类来解决。例如,可以创建一个通用的 Pond 类,它了解环境模拟的所有信息,但将具体的植物和动物类的选择留给子类。像 DuckWaterLilyPond FrogAlgaePond 这样的子类,会在工厂方法中实现创建合适对象的逻辑。
- 抽象工厂模式 :当需要创建兼容的对象集时使用。例如,为了确保青蛙和藻类不

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值