Packages, the use of `development` and branching - BBK-PiJ-2014-66/cw4 GitHub Wiki
Packages, the use of development and branching
In previous Courseworks I found myself getting lost in the project. If everything is in a single directory one has a mixture of interfaces, implementation and unit tests all with similar names and this can be rather confusing. Using different directories for separate things would be good idea for me.
Related to this is the question of whether JUnit tests should be done in a separate package. Keith in cw2 feedback suggests use a separate package(s) for the test(s). There different views on this StackOverFlow: Where should I put my JUnit tests?
As the interfaces are in the default package then I think it is impossible to write normal JUnit tests in a different package because there is no way in modern Java to import from default package. (Have spent a long time on the Moodle debating this and it is pointless as the default package simply should not be used for anything other than a "toy".)
To get around this decided to do the development work in a directory development using packages.
Once development is complete will use git to create a development branch. Then will switch back to master and tidy things up for the official-to-be-marked-submission collapsing everything into the default package and removing the directory development
Final thoughts Followed the above strategy but got rid of the separate development directory instead working in src only. Ended up renaming packages so the git history is rather confused!