C# 重构之四(提取接口重构)

原创 2016年08月31日 11:47:31

提取接口”是一项重构操作,提供了一种使用来自现有类、结构或接口的成员创建新接口的简单方法。

当几个客户端使用类、结构或接口中成员的同一子集时,或者当多个类、结构或接口具有通用的成员子集时,在接口中嵌入成员子集将很有用。有关使用接口的更多信息,请参见 接口(C# 编程指南)

“提取接口”在新文件中生成接口,并将光标定位于新文件的开头。使用“提取接口”对话框,可以指定要提取到新接口中的成员、新接口的名称以及所生成的文件的名称。

使用“提取接口”

        class ProtoA
        {
            public void MethodB(string s) { }
        }

对MethodB提取接口来重构

双击后按快捷键CTRL+R+I


当然可以通过手动来操作,使用快捷键自然省很多事和时间

仅当将光标定位于包含要提取成员的类、结构或接口中时,才可以访问此功能。当光标处于此位置时,调用“提取接口”重构操作。

在类或结构中调用“提取接口”时,将修改基和接口列表,以包括新接口名称。而在接口中调用“提取接口”时,将不修改基和接口列表。


版权声明:本文为博主原创文章,未经博主允许不得转载,如果转载请写明出处。

相关文章推荐

机房重构(四)--C#的一些基础知识

1.Using的作用 2.关于退出 3.C#中没有isnumeric这个函数! 4.数据库中Time类型的对应类型...

《重构》C#版实现(四)switch的多态化处理

上一篇主要重构了Statement方法,在大刀阔斧的调整后,总算是得到了一个易于理解的方法体。当然,其中会带来潜在的效率问题,但记住一点,起码所有的事情都是经过权衡和决策的。可以“果断”来形容,而那种...

避免代码冗余,使用接口和泛型重构Java代码

本文由 ImportNew - ImportNew读者 翻译自 michaelbrameld。如需转载本文,请先参见文章末尾处的转载要求。 【感谢 李云涛(@平等的黑)的热心翻译。如果其他朋友也...

机房重构之接口

一篇介绍接口的文章,感兴趣的同学可以看看。

java重构、js与接口的实现

一、接口 接口的方法不一定必须实现的!!! 加入default,这样的方法可以不实现,如图所示     二、关于语言的特性 1.C++多继承 2.很多编程语言JavaScript、Python支持混入...

TTCN3新执行器系列-端口操作的接口简单化重构

08年做ttcn3转换器的时候,最烦人的工作就是做端口操作的模块。其实端口操作也就send、receive、trigger和check语义,其他过程调用的操作我们已经不打算做的了。 下面是send语法...

网站重构——轻量化的网站架构设计二,使用restify生成RESTful接口

有趣的是在有了数据之后,我们可以用很快的速度构建出一个app,构建出一个接口。我们要做的就是将系统一部分一部分解耦出来,成为一个又一个的独立部分 node restify 简单地来说,这是一个用于...
  • gmszone
  • gmszone
  • 2014年03月16日 14:43
  • 2691

使用面向对象重构之-使用接口完成行为抽象

使用面向对象重构之-使用接口完成行为抽象

【读书笔记-重构与模式】 Facade外观模式-为系统提供统一简单接口

《设计模式》中对Facade模式是这样叙述的: 为子系统的一组接口提供一个统一接口。Facade模式定义了一个更高层的接口,使得子系统更加容易使用。 Facade模式的关键特征: 意图:...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:C# 重构之四(提取接口重构)
举报原因:
原因补充:

(最多只允许输入30个字)