次の例は、Ninjectを使用するように書き直されたように見えますか?
具体的には、武士を手裏剣と剣の両方にどのように結び付けますか?
(https://github.com/ninject/ninject/wiki/Dependency-Injection-By-Handから)
interface IWeapon
{
void Hit(string target);
}
class Sword : IWeapon
{
public void Hit(string target)
{
Console.WriteLine("Chopped {0} clean in half", target);
}
}
class Shuriken : IWeapon
{
public void Hit(string target)
{
Console.WriteLine("Pierced {0}'s armor", target);
}
}
class Program
{
public static void Main()
{
var warrior1 = new Samurai(new Shuriken());
var warrior2 = new Samurai(new Sword());
warrior1.Attack("the evildoers");
warrior2.Attack("the evildoers");
/* Output...
* Piereced the evildoers armor.
* Chopped the evildoers clean in half.
*/
}
}