zoukankan      html  css  js  c++  java
  • Ninject的简单介绍

         Ninject,是一个IOC的工具,就是我们经常说的控制反转。

        IOC的基本概念是:不创建对象,但是描述创建它们的方式。在代码中不直接与对象和服务连接,但在配置文件中描述哪一个组件需要哪一项服务。容器负责将这些联系在一起。

         先说下我对这个工具的感受:老是配置,烦死人了,什么XML,什么配置都没代码写的舒服,痛快。嘿嘿。。。 因为每次在定义Type类型的时候,还得去找下这个Assembly的签名。。。好累。这个工具可以让你的注入配置模块化。其他的好处自己体会拉。

        官网打出了这几个口号:

    •    Bend software to your will : 改变你的软件,更加的松耦合、高内聚
    •    Laugh in the face of change : 微笑着面对改变
    •    Use your sharpest tools :
    •    Write smarter software everywhere  :可以在任何地方运行,它是轻量级的。
    •    Be fast, be agile, be precise  :快,灵活,准确

     

    通常情况下我们会这么写我我们的代码:

    public class Samurai {
        public IWeapon Weapon { get; private set; }
        public Samurai(IWeapon weapon) 
        {
            this.Weapon = weapon;
        }
    }

    通过Ninject,构造函数中赋值的问题可以这样解决。

    public class WarriorModule : NinjectModule
    {
        public override void Load() 
        {
            this.Bind<IWeapon>().To<Sword>();
        }
    }

    注:Sword是实现IWeapon的一个类。

    舒服不?是否有点心动了吧。好吧,就是作为菜鸟的你,最少应该知道get;set;方法其实可以添加修饰符的。^_^别在写一个私有字段了哦,看见好多了,纠结,虽然我也曾经这么做过。。。。

  • 相关阅读:
    (一)类数组对象NodeList
    childNodes遍历DOM节点树
    innerText兼容问题处理
    JS中定义对象的几种方式
    javaScript中闭包的工作原理
    输出一组数字中的最小数
    HttpServletResponse对象
    Web.xml过滤器配置及执行顺序概念
    pageContext对象的用法详述
    请求转发与请求重定向
  • 原文地址:https://www.cnblogs.com/fengxing/p/2412641.html
Copyright © 2011-2022 走看看