OMG你想搞死楼主。
【 在 z16166 (Netguy) 的大作中提到: 】
: 标 题: Re: 新手搭建了一个加油站站控系统,求达人指点一二 (转载)
: 发信站: 水木社区 (Mon May 11 10:54:03 2020), 站内
:
: 一种可能的方式:
:
: db定义一套interface,这个interface主要是提取数据库的connect/auth/close、prepared statement execution、transaction commit/rollback等通用操作。interface类和数据库类型不是紧耦合的。
:
: 然后搞一个Impl类(Implementation),这个Impl类实现上面这个interface。不同的Impl类可以对应不同的数据库类型比如mysql等,Impl类和数据库的API是紧耦合的,比如直接调用的mysql的C API。db interface类中有个成员变量是一个Impl对象,通过更换保存的Impl对象,可以更换数据库类型,比如换成SQL server或者PostgreSQL。
:
: 业务的存储模块把业务数据(加油站数据)传递给db interface,而不是直接和Impl类的对象打交道。
:
: 也就是通过增加一个中间层,获得了一点耦合上的自由度。
:
: 看看行不。时间紧的话,就是直接调用Impl类完事。
:
: 【 在 qzrk 的大作中提到: 】
: : 您好,谢谢您的宝贵建议,我是一个新手,大概能感觉到您说的接口抽象化的意思。能
: : 否请您再稍微给我科普下抽象化的具体实现方式?谢谢
: :
: : ...................
:
: --
: ※ 修改:·z16166 于 May 11 11:10:28 2020 修改本文·[FROM: 125.35.124.*]
: ※ 来源:·水木社区
http://www.newsmth.net·[FROM: 125.35.124.*]
--
修改:z16166 FROM 125.35.124.*
FROM 123.103.9.*