I am designing a .Net library that exposes methods all of which can be tagged only as helper methods. Takes in PersonID, RoleID etc returns calculated salary, Salary for the entire year, Bonus etc.
- Is it ok to design just a static class that has methods like GetSalary(), GetBonus(), GetHistoricSalary().
- Or should I have an interface ISalaryProcessor and have these methods in there ?
With option 2 the implementing class just has behaviour and not data, in trying to bring in a contract am I creating a unwanted pure fabrication ?