Si el Single Responsibility Principle se aplica a OOP y smalltalk (& ruby también) se considera como uno de los lenguajes más OO ¿por qué la clase Object puede responder a tantos mensajes?Responsabilidad individual en smalltalk
Sólo unos pocos de Object methodDict explore
:
- inspeccionar, explorar, navegar, imprimir: en:
- aceptar (? Patrón de visitante en todos los objetos)
- copia, deepCopy, unir, joinTo, por lo :, en: modificar:
- AsString, asfunction, asOrderedCollection (¿por qué no activos también?)
- los mar: Aslink, asJson, asJavascript
No es objeto de responsabilidad (por ejemplo, modelo de dominio de usuario debe estar interesado sólo en sus mensajes privados, pagos, etc.)
EDIT: algunos de ellos son significativos (AsString, asOrderedCollection, aceptar, notificar), mientras que otros parece bastante raro (en :, asfunction, deepCopy, unir, joinTo)
Whoaa, y nos quejamos de que la clase Object de .NET es demasiado grande (¡tiene solo 7 métodos en total)! –
Heh, Object.new tiene 56 métodos en ruby 1.9.2. – steenslag
Hay 370 métodos en 'Object methodDict' en Seaside (basado en pharo smalltalk) image :-) –