Золота абстракція

Також дивіться

Приклади реалізації: