Glossary

Polymorphism

Polymorphism lets code use different implementations through a shared contract.

Glossary

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.related glossary termThis English glossary page explains the concept, its practical use, limitations, and common mistakes.

This English glossary page explains the concept, its practical use, limitations, and common mistakes.related glossary termThis English glossary page explains the concept, its practical use, limitations, and common mistakes.

Glossary

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Glossary

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

interface PaymentGateway
{
    public function start(Order $order): PaymentStart;
}

final class CardGateway implements PaymentGateway
{
    public function start(Order $order): PaymentStart
    {
        return PaymentStart::redirectToCardProvider();
    }
}

final class BankTransferGateway implements PaymentGateway
{
    public function start(Order $order): PaymentStart
    {
        return PaymentStart::waitingForTransfer();
    }
}

final class FakePaymentGateway implements PaymentGateway
{
    public function start(Order $order): PaymentStart
    {
        return PaymentStart::completedForTest();
    }
}

final class CheckoutService
{
    public function __construct(private PaymentGateway $gateway) {}

    public function beginPayment(Order $order): PaymentStart
    {
        return $this->gateway->start($order);
    }
}

Glossary

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

  1. Practical explanation This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  2. Practical explanation This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  3. Practical explanation This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  4. Practical explanation This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Glossary

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Glossary

Practical explanation

Practical explanation

  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Practical explanation

  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Glossary

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Glossary

Practical explanation

This English glossary page explains the concept, its practical use, limitations, and common mistakes.

  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.
  • This English glossary page explains the concept, its practical use, limitations, and common mistakes.

Glossary

Practical explanation

What should this concept mean in practice?

Use the documented contract and verify the behaviour in the context of the application.

What should this concept mean in practice?

Use the documented contract and verify the behaviour in the context of the application.

What should this concept mean in practice?

Use the documented contract and verify the behaviour in the context of the application.

What should this concept mean in practice?

Use the documented contract and verify the behaviour in the context of the application.

Request a call

I will call you on the next working day between 9:00 and 17:00.

You can also call me directly.

+420 605 181 728

Leave your phone number and send a callback request.

By sending, you agree to processing your data in order to handle your request.