关于java分包原则

关于java分包原则

对于软件分包是架构一个代码的基础工作,也是每个工程师需要面对的问题。究竟按照什么方式来进行分包,也是众说纷纭,我这里也只是说一下自己的分包策略,请轻拍。

首先,我先说一下两个原则:

  • 横向
  • 纵向

那么接下来说一下,如何为横向。横向就是按照业务划分,例如我要做一个微信,微信中有聊天对话界面、设置界面、摇一摇界面等,那么针对这些需求,我会把创建几个包,方便归纳逻辑,com.tencent.wechat.chat com.tencent.wechat.settings 等。

那纵向是什么?纵向就是面向功能的。例如有些多个模块都会用到的公用模块,就可以考虑提取出一个包用来封装,例如我们常见的网络库、数据库操作、文件操作等。包名可以写做com.tencent.wechat.network com.tencent.wechat.db com.tencent.wechat.file

下面是一个图来说明一下:

关于java分包原则