none
依赖性 C# RRS feed

  • 问题

  • 近来看了一些外国人写的书籍,
    发现了一个不太习惯的地方:
    那就是他们写程序的时候喜欢写一个接口 , 比如:
    public interface IProductRepository
        {
            IQueryable<Product> Products { get; }

            void SaveProduct(Product product);

            void DeleteProduct(Product product);

        }//end interface
        
    然后写一个具体的类来继承接口

    public class  EFProductRepository : IProductRepository
    {
        //具体不写了
    }

    最后就是将类模型绑定到 ninject 中  
    ninjectKernel.Bind<IProductRepository>().To<EFProductRepository>();


    后面程序里面用的时候,就用:
    IProductRepository repository这个就行了!!


    我的问题是:为什么一开始不直接写具体的EFProductRepository  ,  用的时候就直接用EFProductRepository ,接口看起来很多余!
    我看别人的说法是:使用di容器(比如刚才的ninject)可以保持松散耦合,什么叫松散耦合,什么叫依赖性啊??
    2013年12月24日 14:31

全部回复