niedziela, 10 maja 2015

In,Co,Contra - variance - Mem driven Learning

Z tematem po raz pierwszy zetknąłem się prawie dwa lata temu - http://pawelwlodarski.blogspot.com/2013/08/covariance-i-contravariance-dla.html i był to jeden z tych momentów kiedy zrozumiałem, że jeśli znam Javę i Springa to nie oznacza, że mogę twierdzić, że umiem programować.

W oryginalnym artykule sam próbowałem zrozumieć ten temat +A,-A,A, a że najlepsza nauka to próba wytłumaczenia komuś tego czego nie rozumiemy toteż to było pierwsze podejści. Do tego by pobudzić rozrywkowe obszary mózgu próbowałem użyć odpowiednia ilość razy słowo Dupa w kontekście domeny żłopu alkoholowego.

A że chlanie wódy to nie do końca zdrowe zajęcie plus jak jest za dużo tekstu to nikomu nie chce się czytać to spróbujmy innego podejścia.

The Box

Nie chodzi o film z Cameron Diaz z 2009, który opowiadał o złudnym poczuciu braku konsekwencji z samolubnych wyborów - http://www.imdb.com/title/tt0362478/

Generalnie te wszystkie ...variance tłumaczy się w kontekście typu, który jakoś opakowuje lub jest parametryzowany przez inny typ- M[T]. Na przykład Option[A],Try[A] czy List[A]

Przykład z listą jest niby wytłumaczyć najprościej bo to jest też w javię w cudownej postaci List<? extends User> czy List<? super User>. Co wygląda trochę dziwnie ale jest.

Natomiast w kwestii Coś opakowuje coś ludzie zapominają o klasyce :

Dla tych, którzy nie znają angielskiego "Dick" to imię wieloryba z przygód "Janka Muzykanta" http://www.filmweb.pl/film/Moby+Dick-1956-32061

Mem Driven Learning

Brak komentarzy:

Prześlij komentarz