2016-11-11 11 views
4

Android StudioとJavaの新機能です。モジュールとパッケージAndroid Studio

私はアプリを開発中です。このアプリは、UI、データアクセスレイヤー、サービスレイヤーなど、さまざまなレイヤーを持つレイヤードアーキテクチャーに基本的に従います。

パッケージとモジュールの違いについてはっきりしません。

私の質問は、これらの異なるレイヤーをモジュールやパッケージのどこに置くのですか?

@Angelはthisという質問に答えていますが、2つのモジュールの唯一の違いは、モジュールの名前空間をインポートすることによって、アクセスできるユーザーがより厳密なルールを定義することです。

+0

詳細情報https://developer.android.com/studio/projects/add-app-module.html – Suhaib

答えて

10

moduleは、プロジェクト内のソースコードのコンテナです。 1つのプロジェクトに複数のモジュールを含めることができますが、各モジュールは別々のコードとリソースのセットです。

たとえば、デフォルト設定で新しいプロジェクトを作成すると、Androidスタジオでappというモジュールが生成されます。このモジュールには、アプリケーションのすべてのソースコード、リソースファイル、およびアプリケーションレベルの設定が格納されます。

しかし、電話/タブレットアプリケーションとAndroid Wearアプリケーションで新しいプロジェクトを作成すると、2つのモジュールが表示されます。 mobileおよびwear。これらの各モジュールには、それぞれのアプリケーションのソースコード、リソースファイル、およびアプリケーションレベルの設定が含まれています。

複数のモジュール間で共有する別のモジュールを作成することもできます。このモジュールはlibrary moduleと見なされます。

packageは、ソースコードが所属するディレクトリ(フォルダ)です。通常、これはアプリケーションを一意に識別するディレクトリ構造です。例えば、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 
関連する問題