I'm already familiar with the standard Java package naming convention of using a domain name to create a unique package name (i.e. package com.stackoverflow.widgets
). However, I've never seen any recommendations for how to choose package names for personal projects. I assume because this is because this is really a matter of personal taste.
So, how do you choose package names for personal projects that will never make it into production (you might be experimenting with a new framework in your spare time). Assuming you don't have a personal website whose domain you can use to create your package structure, what do (or would) you do? Do you have a logical system in place for generating new package names for hobby projects, or do you just use simple throw-away package names like mypackage
?
Since I'm just curious to see what different people's thoughts are on this, I've made this a community wiki.
For me personally, I've never given it much thought, but I wanted to play around with Wicket tonight and it occurred to me that I don't have a clear idea of how I want to organize my hobby projects. A separate, distinct package naming convention for hobby projects (in my mind, at least) would serve as a good way to keep personal and work-related code clearly separate from each other.
I was thinking of a simple hierarchal naming convention, to keep the source for my personal projects in a single root folder:
- Use
myprojects
as the root folder - Append the project name
- Add any additional subpackage names
So, my Wicket project would be in the package myprojects.learningwicket
and unit tests would be in the package myprojects.learningwicket.tests
(for example).