Strona głównaUżytkownik

http://zzapal.blogspot.com/ | użytkownik

http://zzapal.blogspot.com/
http://zzapal.blogspot.com/
277
5544 dni, 16 godzin, 52 minuty temu
17 września, 2009
dotnetomaniak.pl

Mając przygotowany już kod obsługujący naszą składnię, możemy przejść analizy przekazanego wyrażenia. Korzeniem wyrażenia zawsze obiekt LambdaExpression, którego Body jest wywołaniem metody lub konstruktora, których argumenty będą poddane sprawdzeniu. Wywołanie metody powoduje odłożenie na drzewie obiektu MethodCallExpression, zaś sama metoda i informaje o niej (MethodInfo) jest dostępna przez property Method. Wywołanie konstruktora (np. new Service(...)) odkłada na drzewie obiekt NewExpression, umies...

Tagi:
Dziel się z innymi:
Bartosz Zapałowski: Design by contract i wstępna walidacja danych, część 3

Inne 5535 dni, 1 godzinę, 16 minut temu http://zzapal.blogspot.com/ 27 źrodło rozwiń

W części pierwszej poznaliśmy założenia zadania. Tym razem zaczniemy budować implementację. W tym miejscu wspomnę, że w przeważającej większości zabaw z wyrażeniami lambda oraz składnią imitującą język naturalny warto najpierw napisać przykładowe użycie kodu (jak to zrobiliśmy wcześniej), a dopiero później próbować zrealizować pomysł. Korzystamy z funkcji rozszerzających, więc pierwszą czynnością jest przygotowanie statycznej klasy, w której zamieścimy implementację - nie ma tu nic odkrywczego: publi...

Tagi: C#, expression, Lambda
Dziel się z innymi:
Bartosz Zapałowski: Design by contract i wstępna walidacja danych, część 2

Inne 5537 dni, 4 godziny, 18 minut temu http://zzapal.blogspot.com/ 59 źrodło rozwiń

Jednym z założeń wzorca Design by contract jest sprawdzanie poprawności przekazanych do funkcji argumentów. Zapewne w wielu miejscach Twojego kodu możesz spotkać konstrukcje sprawdzające czy przekazane argumenty nie są równe null - praktycznie identyczne w każdej funkcji. W serii artykułów zostanie przedstawiony jeden ze sposobów unifikacji i uniknięcia powtórzeń.

Tagi: C#, expression, Lambda
Dziel się z innymi:
Bartosz Zapałowski: Design by contract i wstępna walidacja danych, część 1

Inne 5537 dni, 4 godziny, 18 minut temu http://zzapal.blogspot.com/ 62 źrodło rozwiń