当一个项目不断的扩大的时候,会面临的问题是不断的有以下情况;

1、以前编写程序的人离职了,新来的程序员看不懂以前的程序,或者觉得以前的程序部够好,但又不希望删除;

2、当实现第三方接口时,如:读写IC卡,以前用的是VB实现,现在改为C/C++了,而主程序有的C#;

……

以上的情况适合接口实现,开发思维如下。

    //定义程序员接口interface IProgramer{//定义程序接口函数string LanguageCode();}//C/C++程序员实现class CProgramer : IProgramer{string CLanguageCode(){return "C/C++";}}//VB程序员实现class VBProgramer : IProgramer{string VBLanguageCode(){return "VB";}}//Delphi程序员实现class DelphiPrograme : IProgramer{string DelphiLanguageCode(){return "Delphi";//用Delphi语言写代码;}}class Programer{public void LanguageCode(IProgramer programer){//此次调用LanguageCode函数,有可能是VB,也有可能是C++programer.LanguageCode();}}public class main{public main(){Programer pro = new Programer();IProgramer iprogramer;//如果需要用C/C++代码iprogramer = new CProgramer();pro.LanguageCode(iprogramer);//如果需要用VB代码iprogramer = new CProgramer();pro.LanguageCode(iprogramer);//如果需要用Delphi代码iprogramer = new CProgramer();pro.LanguageCode(iprogramer);}}

  

转载于:https://www.cnblogs.com/sntetwt/p/5358238.html

C#接口的使用场合,接口应用相关推荐

  1. java 接口隔离_关于接口隔离原则的一个实现:

    关于接口隔离原则的一个实现: 使用场合,提供调用者需要的方法,屏蔽不需要的方法.满足接口隔离原则. 比如说电子商务的系统,有订单这个类,有三个地方会使用到, 一个是门户,只能有查询方法, 一个是外部系 ...

  2. 3D打印机的USB接口和SD卡接口防静电设计

    3D打印机的平民化带来了一场应用革命,越来越多的教学,模型,设计,广告场合应用. 但由于众多打印机不像普通打印机的3D打印机的USB接口和TF卡接口连线,3D打印机经常需要插拔USB数据线和SD卡,由 ...

  3. 各大电商平台商品详情接口,sku属性接口,商品销量接口

    各大电商平台商品详情接口,sku属性接口,商品销量接口展示如下: 1.公共参数 名称 类型 必须 描述 key String 是 调用key(必须以GET方式拼接在URL中,点击获取请求key和sec ...

  4. 【精华贴】数字音频接口详解-I2S接口PCM/TDM接口PDM接口

    一.概述 数字音频接口DAI,即Digital Audio Interfaces,顾名思义,DAI表示在板级或板间传输数字音频信号的方式.相比于模拟接口,数字音频接口抗干扰能力更强,硬件设计简单,DA ...

  5. Go 学习笔记(35)— Go 接口 interface (接口声明、接口初始化、接口方法调用、接口运算、类型断言、类型查询、空接口)

    1. 接口概念 接口是双方约定的一种合作协议.接口实现者不需要关心接口会被怎样使用,调用者也不需要关心接口的实现细节.接口是一种类型,也是一种抽象结构,不会暴露所含数据的格式.类型及结构. 接口内部存 ...

  6. Linux那些事儿 之 戏说USB(12)接口是设备的接口(一)

    前面的前面已经说了,接口是设备的接口.设备可以有多个接口,每个接口代表一个功能,每个接口对应着一个驱动.Linux设备模型的device落实在USB子系统,成了两个结构,一个是struct usb_d ...

  7. 为何 Map接口不继承Collection接口

    1.首先Map提供的是键值对映射(即Key和value的映射),而collection提供的是一组数据(并不是键值对映射). 如果map继承了collection接口,那么所有实现了map接口的类到底 ...

  8. 固态硬盘是什么接口_SATA接口和M.2接口的固态硬盘哪个好?SATA接口和M.2接口的区别...

    机械硬盘作为木桶效应中的短板,在电脑中明显拖了后腿,对于读写速度的发展已经是瓶颈,这也是目前新装机或者升级电脑都会采用固态硬盘一大原因.固态硬盘目前流行且常见的接口分两种,分别SATA接口和M.2接口 ...

  9. sql08 访问接口没有oraoledb_状态接口的实现方式讨论

    之前的文章不知道有没有讲过,核间交互从数据获取的方式来说可以分成两类,一类是消息接口,可以理解成事件通知,一类是状态接口,可以理解成字典查询. 我们来看看这两个接口的特点.事件通知接口对于收方来说是无 ...

  10. 怎样调用php的足球联赛接口,足球赛事查询接口调用文档

    足球赛事查询接口,目前支持 英超,西甲,德甲,意甲,法甲,中超等赛事 接口平台:api 接口地址:http://op.juhe.cn/onebox/football/combat 支持格式:json/ ...

最新文章

  1. Unity 3D学习视觉脚本无需编码即可创建高级游戏
  2. Android模拟多线程下载
  3. Spring Boot导出jar包发布
  4. 【深度学习】擦除:提升 CNN 特征可视化的 3 种重要手段
  5. Docker小白到实战之开篇概述
  6. iQOO手机正式发布,全新性能旗舰打造爆燃体验
  7. 561. 数组拆分 I
  8. VS中的scanf_s函数和scanf
  9. 都能看懂的嵌入式linux/android alsa_aplay alsa_amixer命令行使用方法
  10. PDF转CAD格式软件下载及使用教程
  11. 《自抗扰控制技术》——第一遍阅读
  12. Unity3D射击小游戏Demo开发
  13. 怎么把动图分解成图片?gif怎么拆分成几张?
  14. box-flex实现三等分布局
  15. JS中apply与call的用法
  16. 常用机器视觉软件介绍
  17. 市场估值-指数PE讨论
  18. html代码中的nofollow属性
  19. 您的云,您做主:Google Distributed Cloud Hosted 全面可用
  20. 修改手机开机Logo界面(Redmi Note 7)

热门文章

  1. 递增三元组蓝桥杯c语言,蓝桥-递增三元组-蓝桥
  2. sqlserver 更新 datetime 数据_SqlServer 关于 datetime 的更新引发的思考
  3. python具有可扩展的特性_Python的特点
  4. FreeSql实体映射成数据库,数据库映射成实体类,指定表生成实体
  5. java从入门到精通_Java---开发从入门到精通,分享视频学习教程
  6. 从0开始学习自动化测试框架cypress(五)案例
  7. java org.jsoup does not exist_java使用Jsoup连接网站超时的解决方法
  8. android下载图片服务,Android中的背景图片下载需要帮助吗?
  9. 哪款浏览器速度最快_全球知名度非常高的火狐浏览器,它好在哪呢?
  10. linux 时间戳计数器,使用TSC(时间戳计数器)计算时间