Chciałbym przedyskutować pewnego rodzaju wzorzec ilustrując Javą i Groovym, ale w pełni możliwe w innych językach, choćby wzorzec (jak każdy wzorzec, przez niektórych uważany za antywzorzec) ActiveRecord.
Wyobraźmy sobie klasę, która nie ma zbyt mocnego wyposażenia w metody, jej sensem jest przenoszenie danych. Ma dynamiczną listę wartości pól i dynamiczny sposób uzyskiwania metadanych (refleksji).
w Groovym najlepszym przedstawicielem tego myślenia jest Expando, ale zalążek tkwi w GroovyObject
http://docs.groovy-lang.org/latest/html/api/groovy/util/Expando.html
http://docs.groovy-lang.org/latest/html/api/groovy/lang/GroovyObject.html
w Javie / C# by to była klasa która posiada Map / Dictionary <string,object> i coś do metadanych
Przed moimi oczami jest potencjał wdrożeniowy, tj customizowany kod dla pojedynczego klienta, takie deteosy, pracujący w kontekście "silnika" (type-safe) z firmy softwarowej.
Dlaczego tak popularny (???) wzorzec jest tak rzadko do znalezienia w necie? Czy przyczyną jest zdanie powyżej - jest to kod poufny, zamknięty w serwerach firm? Nie jest aż tak użyteczny?
Co powinienem przemyśleć?