C#和F#默认接口方法更新

作者: 云计算机网 分类: 云主机 发布时间: 2017-07-02 09:22

默认接口方法(Default Interface Methods)特性提案将允许C#、F#及其他.NET语言实现有限形式的多继承。受Java的默认方法启发,库作者将可以向已发布的接口中添加新方法而不破坏向后兼容性,其中也包括默认实现。

对于这个人们热议的特性,争论双方都固执己见。在这一点上,什么 都没变。最新消息是,这可能只是一个.NET Core特性。

在讨论F#中的默认接口方法提案时,来自微软的Phillip Carter写道:

我得说一下,默认接口方法确实为我们提供了一个.NET运行时支持的方式,用于支持#243(在某种程度上)。不过,这项修改仅限于.NET Core,因为修改桌面CLR支持底层运行时特性的可能性微乎其微。因此,就像C#一样,F#也将会有一个只有在你使用了CoreCLR是才有效的特性。

[hellip;]

默认接口方法需要修改运行时。这也意味着需要进行检查,看看特定的运行时是否支持这个特性:https://github.com/dotnet/csharplang/blob/master/proposals/default-interface-methods.md#clr-support-api

已推出的.NET Framework版本现在还没有支持这个特性的,它们将来提供支持的可能性也微乎其微,因为那会有破坏现在广泛存在的已有应用的风险。.NET Core最终将在其运行时中包含这个特性,但是,现在还没有完全确定,它是否也会包含在.NET Framework、mono或UWP运行时的某个未来版本中。正如@jnm2提到的那样,除非每一种支持.NET Standard的运行时都包含这个特性,否则你就无法在.NET Standard中使用它们。它也不在即将到来的.NET Standard 2.1的计划中。

我考虑的是,从长远规划的角度看,我们所能做的不仅仅是在面对这样一种结构时保持冷静。这个特性是从C#复制的?恐怕不是。一个成熟的traits/typeclasses系统?那需要花时间进行恰当的设计。它如何与已有的东西如SRTP合理共存?对于现在的接口、将来的接口、函数即接口、常规的泛型、SRTP及其他东西,该如何考虑?但至少,在我看来,实现某种东西的机制即将到来,因此,在一个比较高的层面上考虑下还是有好处的,那是什么东西,它会有哪种行为,它如何与这方面的现有特性合理共存。

在C#提案话题中,Joseph Musser做出了以下回应:

作为库作者,这意味着,如果其中一个库的目标不是.NET Framework或者在.NET Framework上运行的一个.NET Standard版本,那么DIM在现如今这种情况下就无助于API的演化。添加一个接口方法仍然是一项破坏性修改。

对此,Thomas Levesque补充说,对于该特性而言,由于库是最重要的使用场景,那会使得整个特性几乎没用hellip;hellip;

查看英文原文:Update on C# and F#rsquo;s Default Interface Methods

  • 随着智能手机的普及,我们发现几乎所有的智能手机都能使用触摸操作,但熟悉手机触摸屏的朋友可能会注意到,手机触摸屏一般都有电阻式触摸屏和电容式触摸屏,那电容屏和电阻屏的优点有哪些呢?下面就跟着爱站技术频道小编的步伐一起来了解一下吧!

      随着智能手机的普及,我们发现几乎所有的智能手机都能使用触摸操作,但熟悉手机触摸屏的朋友可能会注意到,手机触摸屏一般都有电阻式触摸屏和电容式触摸屏,那电容屏和电阻屏的优点有哪些呢?下面就跟着爱站技术频道小编的步伐一起来了解一下吧!

      首先我们简单介绍下如何判断手机触摸屏是电容屏还是电阻屏,首先最简单的方法就是我们可以通过操作手机获取答案,电阻屏手机由于采用压力控制,因此我们不仅可以用手指任何部分按下操作还可以使用其它一些比如指甲、牙签等只要可以对屏幕产生挤压的物品操作均可,而电容屏却不一样,只能通过手指感应,使用指甲或者其它相关物品操作都无效,这主要是因为采用的是静电感应,只有导体接触才会有反应。到这里可能有朋友会说,电阻屏用什么都能操作,而电容屏智能通过手指或者导体操作才有反应,不是电阻手机更容易操作码?其实答案没那么简单,下面我们介绍下电容屏的有点大家就可以知道答案了。

      电容屏手机优点解析

      由于电容屏采用的是静电感应操作,因此只需要手指轻轻触摸屏幕即可操作,而电阻屏不同,需要使用一定的力往下按才能产生反应,因此操作的灵敏对上完全没有电容屏用户体验好。

      电容屏的工作原理示意图

      电容屏还有一个最大的优点是支持多点触控,这是电阻屏所无法具有的,可以说电容屏的多点触控式电容屏的最大优点,在手机应用中多点触控的优势尤其突出,什么是多点触控?使用过主流智能手机的朋友都知道,当我们看网页或者看图片时可以利用多个手指抓屏可以缩小网页或图片,做扩大状触摸可以放大图片或者网页,其实这里利用的就是电容屏的多点触控功能,用户体验十分出色,另外一个方面多点触控优势也在手机游戏中表现的淋漓尽致,当游戏需要两片同时操作时,我们可以使用多个手指同时操作,大大提高的游戏的娱乐性,这是电阻屏所不具有的,这也是为什么比较好的智能机均选用电容屏的最大原因。

      其实电阻屏也有一些小小优势,比如屏幕更好保养,比如我们可以带手套玩电阻屏手机,电容屏却仅能通过手指直接触摸,因此较容易出现污渍,另外一个电阻屏的精度较高,比较容易定位,而一般使用手指操作,由于手指较大,尤其是在编辑文字定位的时候,电容屏往往没有电阻屏定位方便,不过可以借助电容笔。#p#分页标题#e#

      这里介绍的电容屏和电阻屏的优点有哪些呢,大家都很清楚了吧。由于电容屏具有更好的娱乐性能,所以在智能手机中非常流行。主流智能手机采用电容屏,电容屏的成本远高于电阻屏。

  • 相关推荐:

  • 电容屏和电阻屏的优点有
  • Win10启动:一个命令备份
  • 微软准备发大招挑战亚马
  • Win10S有态度:不允许修改
  • Win10Mobile15215预览版更新
  • 微软传话苹果和Android:
  • 微软小冰出版诗集,让“
  • 请坐和放宽!Win10Mobile也
  • 英特尔和谷歌云宣布达成
  • 服务器租用和托管中,哪
  • 网站内容禁止违规转载,转载授权联系中国云计算网