Rozdział 5. Delegacje — łatwość komponowania i rozszerzalność

W dwóch poprzednich rozdziałach dowiedzieliśmy się, w jaki sposób można hermetyzować zachowania i informacje przy użyciu klas. Korzystając z pojęć asocjacji, kompozycji oraz agregacji, modelowaliśmy relacje pomiędzy klasami i poznawaliśmy korzyści, jakie zapewnia nam polimorfizm oraz zastosowanie (czasami niewłaściwe) metod wirtualnych i ich domyślnego kontraktu narzucanego klasom pochodnym.

W tym rozdziale także będziemy się zajmować zagadnieniami kompozycji i rozszerzalności, jednak nie z perspektywy klas — zastosujemy podejście funkcyjne. Przekonamy się, w jaki sposób możemy je wykorzystać do zaimplementowania pewnych wzorców, które wcześniej wymagały od nas porzucenia naszej jednej ...

Get C#. Programowanie. Wydanie VI now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.