Design patterns package independence

120 views Asked by At

My question is fairly simple, I haven't found a direct answer to it.
Is redundant code between two or more packages to achieve package independence considered as a good or bad practice, for instance I have two packages one does a download-and-cache , the other is for readfromserver-and-cache. while cached data and mechanism are completely different but have some common classes/methods.

Shall I create a third package which holds commons, and break package in-dependency?
Or shall I continue with two packages and will result in redundant code? Lastly, to go deep in design and dependency, I'd appreciate it if you suggest me good material to read.

*Please note : I write in java , common code is not that much

1

There are 1 answers

1
Scary Wombat On BEST ANSWER

I think that you go for creating an interface for the Cache. If the cache is not the same for both packages then common code can be in a abstract class and the individual packages can implement the rest.

Of course if the code is identical, then strip it out to its own jar.