模块与软件包Android Studio
我对Android Studio和Java非常陌生 我正在开发一个应用程序。该应用程序基本上遵循分层架构,具有不同的层,例如,UI、数据访问层、服务层等 我不清楚软件包和模块之间的区别 我的问题是,人们会把所有这些不同的层放在哪里,放在模块或包中 指向@Angel Response to question,这两个模块之间的唯一区别是\,模块定义了一个更严格的规则,即通过导入模块的名称空间,谁可以访问模块。a是项目中源代码的容器。一个项目可以有多个模块,但每个模块都是一组独立的代码和资源 例如,当您使用默认设置创建一个新项目时,Android Studio会生成一个名为模块与软件包Android Studio,android,android-studio,Android,Android Studio,我对Android Studio和Java非常陌生 我正在开发一个应用程序。该应用程序基本上遵循分层架构,具有不同的层,例如,UI、数据访问层、服务层等 我不清楚软件包和模块之间的区别 我的问题是,人们会把所有这些不同的层放在哪里,放在模块或包中 指向@Angel Response to question,这两个模块之间的唯一区别是\,模块定义了一个更严格的规则,即通过导入模块的名称空间,谁可以访问模块。a是项目中源代码的容器。一个项目可以有多个模块,但每个模块都是一组独立的代码和资源 例如,当
app
的模块。此模块保存应用程序的所有源代码、资源文件和应用程序级别设置
但是,如果你用手机/平板电脑应用程序和Android Wear应用程序创建一个新项目,你会看到两个模块<代码>手机和佩戴
。每个模块都包含各自应用程序的源代码、资源文件和应用程序级别设置
您还可以创建另一个要在多个模块之间共享的模块;这一模块将被视为一个重要的模块
A本质上是源代码所属的目录(文件夹)。通常,这是唯一标识应用程序的目录结构;例如com.example.app
。然后,您可以在应用程序包中创建分离代码的包;例如com.example.app.ui
或com.example.app.data
因此,为了回答您的问题,每个应用程序的包都位于应用程序模块的
src/main/java
目录中。您可以在应用程序包中放置一个单独的包,以分离应用程序架构的每个“层”
仅举一个可视化示例,这是我的一个项目的基本结构:
project
|-- build.gradle
|-- settings.gradle
~
|-- common // a common library module for both mobile and wear
| |-- build.gradle
| |-- proguard-rules.pro
| +-- src
| +-- main
| |-- AndroidManifest.xml
| |-- assets
| |-- java
| | +-- com
| | +-- example
| | +-- library // common module library package
| | |-- data
| | +-- util
| +-- res
|
|-- mobile // mobile application module
| |-- build.gradle
| |-- proguard-rules.pro
| +-- src
| +-- main
| |-- AndroidManifest.xml
| |-- assets
| |-- java
| | +-- com
| | +-- example
| | +-- app // mobile module application package
| | |-- data
| | |-- ui
| | +-- util
| +-- res
|
+-- wear // wear application module
|-- build.gradle
|-- proguard-rules.pro
+-- src
+-- main
|-- AndroidManifest.xml
|-- assets
|-- java
| +-- com
| +-- example
| +-- app // wear module application package
| |-- data
| |-- ui
| +-- util
+-- res
更多信息