design-patterns相关内容

扩展方法VS静态工具类

我在寻找一些优点和缺点,使用了静态工具类扩展方法在C#应用程序。 例如,在扩展方法列加是通过调用类的名字,而不是像“StringUtils的”东西的舒适。但是一个反面的是,它可以模糊分辨什么是在框架中,什么不是行。 解决方案 我会说一个的 PRO 的是,它模糊了区别什么是在框架中,什么不是行:可以用自己的code一样自然框架code,对框架类型进行操作。 扩展方法不宜随意使用的,当然 - ..
发布时间:2015-11-24 20:51:15 C#/.NET

重构辛格尔顿过度

今天,我有一种顿悟,这是我做的一切都错了。一些历史:我继承了C#应用程序,这是真正的静态方法只是一个集合的C#code完全程序混乱。我重构这个最好的,我知道的时候,带来了大量的大学毕业后的面向对象的知识。为了使长话短说,许多在code中的实体已被证明是单身。 今天,我意识到我需要3个新的类别,这将每个遵循相同的Singleton模式到软件的其余部分相匹配。如果我继续翻滚而下此滑坡,最终每个班级在 ..
发布时间:2015-11-24 20:50:23 C#/.NET

良好来源的.Net设计模式

我在寻找软件模式一个良好的网上资源。 preferably东西一个COM prehensive选择,简洁写得很好解释,链接不只是一个集合。净例子将是很好,但不是必需的。 解决方案 要看到的图案现实世界的例子来实现,为什么不抓住一个开源.NET项目,如Paint.NET或CommunityServer并通过$ C看看$ CBase的?您还可以得到反射,并看看源$ C ​​$ C的基类库。 ..
发布时间:2015-11-24 20:46:49 C#/.NET

有没有在.NET框架中使用任何设计模式?

我想知道:任何 GoF的的设计模式,在的 赏金: 我已经看到了下面的答案MSDN链接。是否有任何帖子/视频或者你可以列出的模式,最重要的地方是使用? 解决方案 下面是讨论这个题目的文章: 和现在的MVC模式可以在ASP.NET MVC增加。 :) 编辑:既然你编辑/请求的详细信息: 下面是一篇文章,列出了几个图案和在那里他们将在框架中使用。 在.NET中的供应商都是提供者模型模式。 在 ..
发布时间:2015-11-24 20:37:24 C#/.NET

引入IoC容器,以传统code

我在写内部使用我公司将使用国际奥委会通过依赖注入了新的.NET库。当然,这个库将是更容易使用,如果我们使用IoC容器来解决实例。 不过,code表示将打电话到该库目前并不使用依赖注入任何类型的,和重构传统code使用DI超出范围为我的项目。那么,什么是开始使用的容器,这种传统的code,以获得我的新库情况下,最好的方法是什么? 如果可能的话,我想,以防止乱抛垃圾说传统的code与取其IoC容器 ..
发布时间:2015-11-24 20:05:57 C#/.NET

什么是封装?它是如何真正隐藏的数据?

搜索变成了一个简单的定义:数据隐藏。 不过,考虑下面两个例子: 1)第一个例子: 类别的雇员 { 公众诠释年龄; } 2)第二个例子: 类别的雇员 { 私人诠释年龄; 公众诠释getAge(){返回年龄;} } 问: 在上述两种实施例中指定,没有数据隐藏,如年龄是由他人修改或由他人正在观看。在哪里数据隐藏?如何在上述的实施例做封装帮助? ..
发布时间:2015-11-24 16:23:34 C#/.NET

设计模式与C#

我打算学习C#的工作 - 一个中等复杂(2000行code)的项目。我感兴趣的拿起“设计模式”一路走来。 任何人都可以建议一本书,不承担太多的C#的专业知识和教授设计模式?这是确定如果这本书不是专门设计模式(它可能是一个章节)。 解决方案 这是很好的书是 Head First设计模式的。易于理解并遵守和一个有趣的阅读。 借助 GoF的书是在这一切开始了,但我觉得很干,难以把握。 不可以我会 ..
发布时间:2015-11-24 16:15:43 C#/.NET

什么是"弱事件"在WPF应用程序中使用的模式?

在 WindowsBase DLL定义了 IWeakEventListener 事件概要: 提供事件侦听支持对于期望通过WeakEvent模式和System.Windows.WeakEventManager接收事件的类。 这个含糊的描述并没有描述什么是“WeakEvent模式”实际上是。 那么,这是什么模式,为什么会使用,是它的WPF应用程序非常有用之外? 修改有一些很好的答案了,但没 ..
发布时间:2015-11-24 16:12:58 C#/.NET

到底是什么"基于接口的编程和QUOT;?

我经常听到/读到基于接口编程,但我不是什么真正的含义是很清楚。基于接口编程的实际独立的话题,实际上有书写什么呢?如果是的话,任何人都可以推荐任何好的? 我碰到接口编程基础,我正在读关于如何好API的设计,并希望更多地了解它。现在,我并不清楚如何正确去周围接口设计的API。 任何信息大大AP preciated。 感谢。 解决方案 这基本上EX $ P $的问题pssing您的依赖的的接口 ..
发布时间:2015-11-24 16:03:57 C#/.NET

如果存储库实现的IQueryable< T>?

我在考虑某家机构两个IRepository接口,一个是IQueryable的后裔,一个包含IQueryable的。 这样的: 公共接口IRepository< T> :IQueryable的< T> { t保持(T实体); 无效删除(T实体); } 或者这样: 公共接口IRepository< T> { t保持(T实体); ..
发布时间:2015-11-24 16:03:09 C#/.NET

使用委托的优势?

我在找实现在VB.NET观察者模式或者C#或其他一些一流的.NET语言。我听说,代表可用于这一点,但想不通他们为什么会pferred了关于观察员执行普通的老式接口$ P $。因此, 为什么要使用委托而不是定义自己的接口,并通过周围对象的引用实现它们? 为什么我可能要避免使用代表,并有很好的ol'派接口去? 解决方案 当你可以直接调用一个方法,你的不的需要委托。 例如,你可以调用一个长时间运行 ..
发布时间:2015-11-24 16:01:02 C#/.NET

优化版本库的的SubmitChanges方法

我有以下资料库。我有LINQ 2 SQL生成的类和使用工厂域对象之间的映射。 下面code将工作;但我看到两个潜在的问题 1),这是使用SELECT查询更新语句之前。 2)需要更新所有的列(不仅是改变了列)。这是因为我们不知道所有列在域对象得到了改变。 如何克服这些缺点? 注:可以有场景(如触发器),它被基于特定列的更新执行。因此,我不能不必要地更新一列。 参考 http://w ..
发布时间:2015-11-24 15:44:08 C#/.NET

最好的方式来使用StructureMap实施战略格局

我的Web应用程序在业务逻辑和presentation逻辑一些轻微的变化取决于用户所登录的类型。这似乎是通过基于用户类型注入不同的具体类获得的变化是一个非常适合DI。所以,我想知道什么StructureMap的功能,我应该用它来实现这一目标(或者,如果我的路要走基地DI的目的)。 (我刚刚得知,配置文件是不是为了实现这一点,因为设置配置文件是不是每个线程的操作方式:修改 这是一段路要走这个? ..
发布时间:2015-11-24 15:28:56 C#/.NET

如何做一个WCF服务器通知WCF客户端的变化? (更好的解决方案,然后简单的投票,如彗星或长轮询)

又见“ WCF推送到客户端通过 防火墙“ 我需要有一个WCF客户端连接到一个WCF服务器上,那么当一些服务器上的数据的修改的客户端需要的更新它的显示。 由于有可能是客户机和服务器之间的防火墙。 所有的通信必须通过HTTP 服务器无法建立与客户的(物理)呼出。 当我写客户端和我不需要对解限只用肥皂等服务器。的 我要寻找内置surport为“长轮询”/“的 感谢您德鲁沼泽如何在WCF执 ..
发布时间:2015-11-24 15:13:14 C#/.NET

视图模型和依赖注入

虽然工作有很多使用 PRISM 和企业库,我注意到一个循环模式,似乎讨厌。对于每一个域模型实体(如联系),我觉得我自己有一个视图模型将其包装(如ContactVM),那么我引入一个新的 ContactsVM (注意“S” ),其中后一类接受它是用来填充的的ObservableCollection℃的储存库接口; ContactVM> 和每联系方式实体我从存储库中读取,我把它包在 Contac ..
发布时间:2015-11-24 15:09:44 C#/.NET

在MVVM模式应该模型实现INotifyPropertyChanged接口?

我有关于查看和视图模型在MVVM模式清晰的概念。我计划实现MVVM模式在我的应用程序。我现在面临有关模型的问题。我有一个解析,并显示在浏览信息的.xml文件。 我需要被通知的第一次只有变化模型。从开始的需求,我需要得到通知。 那么如何实现的模式呢? 我应该实现模型类也 INotifyPropertyChanged的界面? (我读的模式不应该实施 INotifyPropertyChanged的 ..
发布时间:2015-11-24 14:47:32 C#/.NET

最佳实践映射DTO到域对象?

我已经看到了很多有关DTO的映射域对象的问题,但我没觉得他们回答我的问题。我用过很多方法前,有我自己的意见,但我正在寻找的东西多一点具体的。 的情况: 我们有很多的域对象。我们使用的是里昂证券模型,使我们的域对象可以是pretty的复杂,它们包含自己的数据的访问。你不希望在电线上来回传递这些。我们将要写入一些新的服务,这将在多种格式(净,JSON等)返回数据。对于这个(以及其他原因),我们还要 ..
发布时间:2015-11-24 14:45:56 C#/.NET

对于何时实现IDisposable一般规则

编辑::此问题是 按照框架设计指南的由克日什托夫·Cwalina和布拉德·艾布拉姆斯,包含一次性类型的实例应该实现IDisposable类型。 有经验的任何其他一般规则,当它要实现IDisposable最佳做法? 解决方案 实现IDisposable当你有一类什么包装非托管资源,或当你有这个类实现了IDisposable的字段。 ..
发布时间:2015-11-24 14:42:50 C#/.NET

DDD的方式获取外部信息

我有一个现有的银行应用程序类,如下图所示。该银行帐户可以是SavingsBankAccount或FixedBankAccount的。有称为IssueLumpSumInterest的操作。为FixedBankAccount,天平需要更新只有当帐户的拥有者没有其他帐户。 这需要在FixedBankAccount对象了解账户所有人的其他账户。如何通过以下要做到这一点的固体 / DDD / GRASP ..