Solo me preguntaba por qué el nombre de algunas carpetas en Android es así:
com.dropbox.android
com.android.browser
Solo me preguntaba por qué el nombre de algunas carpetas en Android es así:
com.dropbox.android
com.android.browser
En respuesta a la respuesta de @PratapPatil que ha dado los detalles de Android.
Esta es una convención en programación, específicamente aquí en Java.
Los detalles del paquete de los Tutoriales de Java dan detalles y ejemplos.
Con programadores de todo el mundo escribiendo clases e interfaces usando el lenguaje de programación Java, es probable que muchos programadores utilicen el mismo nombre para diferentes tipos. De hecho, el ejemplo anterior hace justamente eso: Define una clase Rectangle cuando ya hay una clase Rectangle en el paquete java.awt. Aún así, el compilador permite que ambas clases tengan el mismo nombre si están en diferentes paquetes. El nombre totalmente calificado de cada clase Rectangle incluye el nombre del paquete. Es decir, el nombre totalmente calificado de la clase Rectangle en el paquete de gráficos es graphics.Rectangle, y el nombre totalmente calificado de la clase Rectangle en el paquete java.awt es java.awt.Rectangle.
Esto funciona bien a menos que dos programadores independientes usen el mismo nombre para sus paquetes. ¿Qué evita este problema? La convención.
Convenciones de Nomenclatura
Los nombres de los paquetes se escriben en minúsculas para evitar conflictos con los nombres de las clases o interfaces.
Las empresas utilizan su nombre de dominio de Internet invertido para comenzar sus nombres de paquete, por ejemplo, com.example.mypackage para un paquete llamado mypackage creado por un programador en example.com.
Las colisiones de nombres que ocurren dentro de una sola empresa deben manejarse por convención dentro de esa empresa, tal vez incluyendo la región o el nombre del proyecto después del nombre de la empresa (por ejemplo, com.example.region.mypackage).
Para un enfoque alternativo sobre esto la pregunta de StackOverflow se trata de nombrar un proyecto de hobby. El nombre podría ser algo como rossc.android.exampleproject
ya que no tengo un dominio propio.
Cada aplicación de Android tiene acceso a un espacio de archivos en la partición /data que es privado para la aplicación. Aquí es donde residen las bases de datos sqlite y la configuración del usuario (preferencias compartidas). El desarrollador de la aplicación no tiene que preocuparse por la convención de nombres o la ubicación de los archivos que desean almacenar en este espacio privado.
Sin embargo, cuando se trata de almacenar datos en la tarjeta SD (espacio público) por una aplicación, la aplicación necesita asegurarse de que la carpeta creada por la aplicación sea única y no utilizada por ninguna otra aplicación o por el usuario del dispositivo. El sistema operativo Android (AndroidManifest) identifica de forma única una aplicación por su nombre de paquete. Que incluso puedes encontrar en las URL de la tienda de aplicaciones. Ejemplo: https://play.google.com/store/apps/details?id=com.dropbox.android
Por lo tanto, los desarrolladores eligen utilizar estos nombres de paquete para crear carpetas para evitar conflictos con otras aplicaciones. Esta forma no garantiza que no habrá conflicto, pero lo previene en gran medida.
Otra razón es la siguiente: cuando el usuario mueve los datos de la aplicación a la tarjeta SD, los datos del espacio privado de la aplicación se trasladan al espacio público (tarjeta SD). Este espacio privado se nombra de la siguiente manera:-
Ejemplo: /data/data/com.dropbox.android. Así que esto se mueve a /sdcard/algo/com.dropbox.android
Corrección: Si cada aplicación usara su propio nombre, evitaría colisiones, ya que dos aplicaciones con el mismo nombre no pueden ser instaladas al mismo tiempo (son, para Android, la misma aplicación).
Aún más preciso: Siempre evita colisiones siempre y cuando ambas aplicaciones sean de la tienda de Play. Si tuvieras una aplicación y descargaras una con el mismo nombre de paquete desde fuera de la tienda de Play, creo que reemplazaría a la anterior al instalarla. No estoy seguro de cuáles advertencias podría dar el sistema.
PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.