编程语言中如何利用构造方法实现模块的解耦

编程语言中如何利用构造方法实现模块的解耦,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

解耦,不仅只是对程序的扩展性而言,它可能还是你使用你的程序从一个层面向另一个层面提高的基础,请认真对待这个词语“解耦”。

我相信,它将会成为与“SOA”,“分布式”,“云计算”,“KV存储”,“高并发”一样的热门的东西,我确信这点。以后,我将会继续关注这个词语“解耦”。

今天主要是讲”代码之美“的一个话题,利用构造方法使你的对象进行一个可供注入的接口,这就是IOC里面注入的一种方式,即”构造器注入“。

/// <summary>       /// 统一实体       /// </summary>       public class EntityBase       {          }       /// <summary>       /// 统一操作       /// </summary>       public  interface IRepository       {           void Insert(EntityBase entity);       }       /// <summary>       /// 用户操作实现       /// </summary>       public class UserRepository : IRepository       {           #region IRepository 成员              public void Insert(EntityBase entity)           {               throw new NotImplementedException();           }              #endregion       }

而在构造方法去使用它的时候,一般代码是这样:

public abstract class IndexFileBase       {           IRepository _iRepository;           public IndexFileBase(IRepository iRepository)           {               _iRepository = iRepository;           }              /// <summary>           /// 根据实现IRepository接口的不同,Insert逻辑也是多样的           /// </summary>           /// <param name="entity"></param>           public void Insert(EntityBase entity)           {               this._iRepository.Insert(entity);           }

上面的代码,很好的实现了new对象的松耦合,这使得它具有通用的特性,一般我们在设计通用功能时,经理使用这样方式。

看完上述内容,你们掌握编程语言中如何利用构造方法实现模块的解耦的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读!