Свободные интерфейсы - метод цепочки

Цепочка методов - это единственный способ, которым я знаю, для создания свободных интерфейсов.

Вот пример в C #:

John john = new JohnBuilder()
    .AddSmartCode("c#")
    .WithfluentInterface("Please")
    .ButHow("Dunno");

Assert.IsNotNull(john);

  [Test]
    public void Should_Assign_Due_Date_With_7DayTermsVia_Invoice_Builder()
    {
        DateTime now = DateTime.Now;

        IInvoice invoice = new InvoiceBuilder()
            .IssuedOn(now)
            .WithInvoiceNumber(40)
            .WithPaymentTerms(PaymentTerms.SevenDays)
            .Generate();

        Assert.IsTrue(invoice.DateDue == now.AddDays(7));
    }

Так, как другие создают свободные интерфейсы. Как вы это создаете? Какой язык / платформа / технология нужна?

Ответы на вопрос(8)

Ваш ответ на вопрос