Seria pytań uczestników, które pojawiły się podczas szkolenia Wzorce projektowe w C# realizowanego w dniach 22-24.02.2021 r.
Świetnym przykładem zastosowania wzorca Visitor jest Entity Framework, który wyrażenie Linq zamienia na zapytanie SQL.
Realizuje to klasa SqlTranslatingExpressionVisitor zgodnie ze wzorcem.
Dokładny opis tego, jak to można zrealizować samodzielnie jest przedstawiony w artykule Expression Tree Traversal Via Visitor Pattern in Practice.
Przykładem może być Entity Framework, który na wyrażenie Linq zamienia na zapytanie SQL.
Przykładem może być Entity Framework, a dokładnie mechanizm Lazy Loading, który służy do opóźnionego ładowania powiązanych encji.
EF generuje automatycznie klasę Proxy, która "podsłuchuje" dostęp do właściwości Navigation Property i generuje zapytania do bazy danych.