Por que os aplicativos na Google Play Store têm com. no começo?

19

Quando você obtém um aplicativo da play store, os aplicativos são sempre fornecidos neste formato (por exemplo):

play.google.com/store/apps/details?id=com.king.candycrushsaga

Não estou interessado no URL principal e apenas no nome do aplicativo, então recebo:

com.king.candycrushsaga

Sei que esse é o nome real do aplicativo, que não é o nome amigável mostrado na gaveta do aplicativo ou na loja de jogos, mas a com.parte sempre me confundiu. Eu sei para que servem as outras partes do nome ( com.PublisherName.AppName), mas qual é o sentido disso com.no início?

George
fonte
Nem sempre é um " com.", consulte play.google.com/store/apps/details?id=org.projectmaxs.main ou play.google.com/store/apps/details?id=uk.co.nationalrail.google para um par de exemplos de algo estar mais lá
GAThrawn

Respostas:

32

A convenção de nomenclatura é derivada dos padrões Java e é comparável a uma URL, mas ao contrário. A chave aqui é que tem que ser único, é por isso que é tão específico.

No seu exemplo, comé a categoria principal comparável a um domínio de nível superior, que também pode ser com. Em seguida, é o nome da empresa king, que pode ser comparado a um nome de domínio e candycrushsaga, finalmente , que pode ser um subdomínio. Como os nomes precisam ser exclusivos, esse esquema de nomeação é bastante comum, mas às vezes pode ser dividido ainda mais adicionando um nome de subprojeto ao final. Por exemplo, o King poderia separar jogos de outros aplicativos que eles criaram usando o nome com.king.games.candycrushsaga.

De acordo com os padrões Java, o primeiro componente deve ser um domínio de nível superior válido (com, net, edu, gov, específico de país), mas lembro também de ver nomes de pacotes que não respeitavam o padrão.

onik
fonte
3
Obrigado pela resposta - Eu acho que eu entendo agora - se o meu site é GeorgesApps.com, por exemplo, e eu fazer um jogo chamado Ask Your Friendsentão seriacom.GeorgesApps.AskYourFriends
George
Sim, é isso
onik
6
@GeorgeH mas depois, em letras minúsculas: com.georgesapps.askyourfriends.
Nhaarman
3
@Onik Eu acho que também vale a pena notar que é uma prática muito ruim usar um URL que você não possui como nome do pacote. É por isso que os aplicativos King serão iniciados com.king, que é o nome de domínio deles. Esse é o único motivo pelo qual a primeira parte do nome do pacote deve ser um TLD da Internet válido.
21714 Dan Hulme
2
@GeorgeH eu entendo. A questão é que não é apenas com.publishername, e a escolha de comnão é arbitrária: na verdade, deve ser um domínio que o editor possui. Não achei que isso estivesse claro na resposta de onik.
Dan Hulme