Mixin 和 .net

发布于 2024-09-12 15:26:16 字数 46 浏览 3 评论 0原文

mixins到底是什么?
在 C# 中是否有任何技术可以实现这一目标?

What are, exactly mixins?
Are there any techniques to achieve that in c#?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

说好的呢 2024-09-19 15:26:16

mixin 是一组类成员,可以“混合”到一个类中,而不会出现多重继承的问题。

C# 本身没有 mixin,但为类似的目标提供了扩展方法。

A mixin is a set of class members that can be "mixed" into a class without the problems of multi-inheritance.

C# doesn't have mixins per-se, but offers Extension Methods for similar goals.

无人问我粥可暖 2024-09-19 15:26:16

我不是专家,但这就是我发现的。

  1. C# 3.0 中的 Mixin
  2. 使用 C# 扩展方法实现 Mixin

来自 MSDN 博客:

C# 中的混入

一些人建议扩展方法
即将推出的 C# 3.0 是一种
Mixins,因为你可以放入
这些方法中的功能和
任意将其标记到您的任何类上
想。在 C# 2.0 规范中
第 20.1.3 节明确称为
指出泛型的基类
类必须是构造类
输入,这样就排除了使用上面的内容
C# 中使用的方法。我不是
太确定我们为什么选择
明确禁止抽象子类。
由于C#不支持
多重继承,IMO 应该
支持Mixin风格编码。

I'm no expert, but this is what I found.

  1. Mixins in C# 3.0
  2. Implementing Mixins with C# Extension Methods

From MSDN Blog:

Mixins In C#

Some suggest that extension methods in
the upcoming C# 3.0 are a kind of
Mixins, because you can put in
functionalities in these methods and
arbitrarily tag it onto any class you
want. In the C# 2.0 specification
section 20.1.3 it is clearly called
out that the base class of a generic
class has to be a constructed class
type so this rules out using the above
approach to be used in C#. I am not
too sure on why we choose to
explicitly disallow abstract subclass.
Since C# does not support
multiple-inheritance, IMO it should
have supported Mixin style coding.

水溶 2024-09-19 15:26:16

请查看在 codeplex.com 上重新混合。它是一个将 mixins 引入 .NET 的开源库,

您将获得有关如何使用 .NET 实现 mixins 的分步指南

Please check out re-mix on codeplex.com. It is an open source library to bring mixins to .NET

There you will have a step by step guide on how to implement mixins with .NET

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文