stoop ed-dual interface
DESCRIPTION
TRANSCRIPT
Stéphane Ducasse 1
Stéphane [email protected]://stephane.ducasse.free.fr/
Design Points - Dual Interfaces
Stéphane Ducasse --- 2005
S.Ducasse 2
Clients?• Clients• Subclasses
S.Ducasse 3
What are the consequences?
A { private x ;void foo(){ ... x ...}}
S.Ducasse 4
What can I do as a subclass?
I cannot access xI cannot replace xI cannot extend!
S.Ducasse 5
The idiom is
Fields are private AND you provide protected accessors
OR
Fields are protected
S.Ducasse 6
Benefits
Your clients cannot access your fieldsBut your subclasses are empowered
S.Ducasse 7
Two users
S.Ducasse 8
Two Users
S.Ducasse 9
Clients
A class has always two clients:its clients and its extenders