代码之美:利用构造方法实现模块的解耦

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

创新互联专注于晋江网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供晋江营销型网站建设,晋江网站制作、晋江网页设计、晋江网站官网定制、成都微信小程序服务,打造晋江网络公司原创品牌,更为您提供晋江网站排名全网营销落地服务。

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

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

 
 
 
  1. ///   
  2.      /// 统一实体  
  3.      ///   
  4.      public class EntityBase  
  5.      {  
  6.    
  7.      }  
  8.      ///   
  9.      /// 统一操作  
  10.      ///   
  11.      public  interface IRepository  
  12.      {  
  13.          void Insert(EntityBase entity);  
  14.      }  
  15.      ///   
  16.      /// 用户操作实现  
  17.      ///   
  18.      public class UserRepository : IRepository  
  19.      {  
  20.          #region IRepository 成员  
  21.    
  22.          public void Insert(EntityBase entity)  
  23.          {  
  24.              throw new NotImplementedException();  
  25.          }  
  26.    
  27.          #endregion  
  28.      } 

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

 
 
 
  1. public abstract class IndexFileBase  
  2.      {  
  3.          IRepository _iRepository;  
  4.          public IndexFileBase(IRepository iRepository)  
  5.          {  
  6.              _iRepository = iRepository;  
  7.          }  
  8.    
  9.          ///   
  10.          /// 根据实现IRepository接口的不同,Insert逻辑也是多样的  
  11.          ///   
  12.          ///   
  13.          public void Insert(EntityBase entity)  
  14.          {  
  15.              this._iRepository.Insert(entity);  
  16.          } 

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

原文链接:http://www.cnblogs.com/lori/archive/2012/07/09/2582940.html

新闻标题:代码之美:利用构造方法实现模块的解耦
网页链接:http://www.mswzjz.cn/qtweb/news22/484772.html

攀枝花网站建设、攀枝花网站运维推广公司-贝锐智能,是专注品牌与效果的网络营销公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 贝锐智能