Lists Home |
Date Index |
> I'd say that was what you were trying to implement, not what
> you were attempting to specify. How could you create an
> object-oriented program without the implementation?
You're obviously thinking of objects purely at the coding level. You don't
have to. The essential notions of separation between interface and
implementation scale up. So do notions of encapsulation, delegation, and
type hierarchy (though perhaps not implementation-level inheritance).
A company that provides payroll services is an object in a business
architecture; it's an instance of a type, which can be substituted by other
instances of the same type; it holds encapsulated data; and its internal
implementation is hidden behind an interface. The service it provides is not
just defined by a functional interface, but by quality metrics including
performance, availability, security, and potential for change. Just like