【发布时间】:2018-01-08 11:25:13
【问题描述】:
假设有人说你的应用中必须有这些模块,
- 如果用户已经注册,用户可以登录
- 用户可以发送消息
- 用户可以退出
他们所说的模块是什么意思 他们可以说您的应用程序必须具有这些功能,我理解模块是您的应用程序的一个组件,您可以独立构建、测试或调试。模块包含应用程序的源代码和资源。
我的问题是,如果他们这样说,那么我该如何以专业的方式组织我的代码?我是否必须为这些功能中的每一个制作单独的包?或者我必须为每个功能制作单独的模块,我对代码的组织感到困惑
【问题讨论】:
-
仅在绝对需要时才将项目拆分为模块。对于像 Facebook 这样的大型应用程序来说这可能是有意义的,但对于 95% 的应用程序来说,单个模块就可以了,而且您不会遭受多个模块带来的开销。至于组织其余代码,this is a great article for inspiration——通常,按功能而不是按层打包(即登录将有一个包,消息将有一个包)将使您的代码库更容易导航。
-
所以只有单个包中的类可以做到这一点?还是分开包装?我在问题中描述的功能只是示例,我们将在哪里需要包
-
那么单元测试呢,我们如何组织我们的代码以便它可以轻松进行单元测试?
-
我假设在需求
must have these modules in you app中,术语modul仅表示menu item或user story或feature但不是作为实现和代码组织细节的模块,其中 lib/ jar/dll/android-studi-modul 代码必须编译进去。
标签: java android optimization module packages