☰
三分钟理解“面向接口编程”是什么
2026/10/17 21:50:57 网站建设 项目流程

“面向接口编程”就是:代码依赖的是“能力约定”,而不是某个具体实现。

可以把接口理解成一份合同:它规定“你必须提供哪些方法、输入什么、返回什么”,但不关心你内部怎么做。

比如:

class Payment: def pay(self, amount): pass

这表示:只要你是一个Payment,你就应该能pay(amount)。

然后可以有不同实现:

class AliPay(Payment): def pay(self, amount): print(f"支付宝支付 {amount}") class WeChatPay(Payment): def pay(self, amount): print(f"微信支付 {amount}")

业务代码不要直接依赖AliPay或WeChatPay,而是依赖Payment这个抽象:

def checkout(payment: Payment, amount): payment.pay(amount)

这样以后要换成银行卡支付,只需要新增一个实现:

class BankCardPay(Payment): def pay(self, amount): print(f"银行卡支付 {amount}")

原来的checkout不用改。

核心好处是:

  • 降低耦合:业务代码不绑死某个具体类。
  • 方便替换实现:支付宝、微信、银行卡都能切换。
  • 方便测试:测试时可以传一个假的支付实现。
  • 方便扩展:新增实现通常不需要改老代码

总之:面向接口编程,就是让代码依赖“它能做什么”,而不是依赖“它具体是谁”。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询