Eu acho que você deu certo. A tentação de evitar aqui é não se incomodar com o nome do pacote. É fácil salvar algumas teclas porque “estou apenas escrevendo um código de teste”. Mas o código fica bom, útil e grande, e então você percebe que tem um começo sólido para o que pode ser uma biblioteca ou aplicativo de longa duração. Pode não ser uma biblioteca ou um aplicativo que sai da sua rede doméstica, mas o ponto é que você não pensou no futuro. Esse é o fantasma da ciência da computação na Dinamarca – pense sempre no futuro, mesmo que seja só um pouquinho.
A convenção de nomenclatura que uso para o meu código de hobby é muito parecida com a sua. Eu tenho um diretório de nível superior chamado “futura” (razões longas e chatas por que esse nome surgiu) de que todo o meu código fica pendente. Eu tento organizar meu código em bibliotecas de pacotes, mesmo que possa ser uma class ou um pacote que eu nunca uso para outro projeto. Eu coloco todos os aplicativos (isto é, qualquer coisa que tenha um void main (String [] args) na class) na pasta futura.app. *. Eu também tento imitar os nomes padrão do pacote da biblioteca Java para o meu próprio código, embora em alguns casos eu tenha quebrado a convenção por causa dos meus próprios gostos (ie futura.inet para Internet, não apenas soquete, código e futura.collections para não -util stuff.) Parafraseando David Mamet: Sempre ser genérico. Seja sempre genérico!