On Nov 9, 2012, at 1:46 AM, Summers Pittman wrote:
(See
https://github.com/aerogear/aerogear-android/pull/33)[Yes it
isn't coarsely separated, it is just a bunch of proof of concept stuff]
Right now in ag-android Pipeline and DataManager are final and concrete. Authenticator
is an interface implemented by the final class DefaultAuthenticator. I have coded up a
proposal where I've (among other things) split the other classes up.
Pros for Interface + final class:
Easier mocking for unit tests (thinking about users' unit tests not ours)
I'm not sure if users really want to test the Pipeline - it probably makes more
sense for them to just start testing from the Pipes - which have interfaces already
Better practice (is Josh Bloch is to be belived)
meh, he is
right 99% of the time, not always, and I disagree in this case
Cons:
Pipeline et all are entry point classes and we shouldn't encourage our users to write
their own
We can make Pipeline et all non-final to allow users to mock them for their tests.
This sounds like the right compromise for me
Thoughts from the list?
_______________________________________________
aerogear-dev mailing list
aerogear-dev(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/aerogear-dev
-- qmx