I think the Contract should determine the number of holidays allowed.

On Fri, Dec 12, 2008 at 8:51 AM, Nick <[email protected]>wrote:

>
> Hi folks,
>
> I'm just reading Code Complete by Steve McConell and I'm thinking of
> an Example he gives in a section about loose coupling. It's about the
> interface of a method that calculates the number of holidays for an
> employee, which is calculated from the entry date of the employee and
> her sales. The author suggests a to have entry date and sales as the
> parameters of the method instead of an instance of the employee:
>
> int holidays(Date entryDate, Number sales)
>
> instead of
>
> int holidays(Employee emp)
>
> The argument is that this decouples the client of the method because
> it does not need to know anything about the Employee class.
>
> Two things came to my mind:
>
> 1. Providing all the parameters that are needed for the calculation
> breaks encapsulation. It shows the internals of the method on how it
> computes the result.
>
> 2. It's harder to change, e.g. when someone decides that also the age
> of the employee should be included in the calculation. One would have
> to change the signature.
>
> What's your opinion?
>
>
> >
>


-- 
Viktor Klang
Senior Systems Analyst

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "The 
Java Posse" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/javaposse?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to