新建你的packages——学会切蛋糕

朋友过生日请你帮TA分蛋糕,在座的有年轻人、小孩、老人、男人、女人,你会怎么分?有以下几个选择:

 

1.    不要分了,把整个蛋糕分给大家;

2.    平均分配,每人吃一样多;

3.    按照各类人群的食量和爱好合理分配。

显然,第三种方法最佳!

 

我们在开发一款APP之前需要建立好你的packages,如果整个程序开发下来只有一个package,同时开发的模块和功能又多,那么就好比你将一个庞大的蛋糕整个分给一群人去吃,最后的结果会怎样?

 

在分包的过程中有以下几个原则值得借鉴,但并非万能,在具体情况下要能灵活修正,正所谓“活人不要被尿憋死”,哈哈:

 

1.   按照android 中四大组件类型进行分包,四大组件分别为:Activities、Service、Content providers、Broadcast receivers,俗称“四大金刚”!如有必要,android 自身的组件也可按照功能进行组合分包;

 

2.   将你的业务逻辑和 android 组件相分离,业务逻辑与 android 自身的组件不同,它可以完全独立于 android 组件而存在,它无需使用到 android 组件中提供的API(为了与 android 自身组件更好的解耦),相反它以接口的形式提供给 android 组件调用,事实上熟悉设计模式的童鞋应该知道,这就是MVC或者MVP架构中的 Model;

 

 

3.   按照功能分割你的Models,这有点废话,Models 直接原本就是各自独立的,傻子才会将它们杂糅在一块让自己闹心;

 

4.   将你的静态数据和方法分离出来,程序中多个模块不可避免要共用一些静态方法和数据,将它们分离到一个统一的 util 包是一个不错的主意,除了某些工具类只在特定的 Model 中使用外,你都应该将你的公用性静态方法和数据放到 util 包;

 

 

5.   尽量将 view adapters 从你的 activities 中分离,除了在你的 APP 中极少使用到 viewadapters 的情况外,我都推荐大家将view adapters 放到一个包中管理,尽量不让我们的 activities 包看起来过于臃肿,尤其避免直接将 adapter 的子类实现在 activity 内部,类本身的臃肿比包的臃肿更让人抓狂!

 

6.   尽量将 aysnc tasks 从你的 activity 类或者 service类实现中分离,并组合进一个包,原因和第五点一样。注意,最后两点我说的是尽量,也就是说考虑到adapters 和 async tasks 与activity共享数据的方便性,我们经常可以不用严格遵守这两条,这种情况下通常是因为解耦难度太大,然而我们应尽量做到解耦。

 

合理的分包对于后期的代码维护非常重要,这不仅是一种良好的开发习惯,也是开发高效 android APP 的一个重要要求,请大家千万不要忽略。


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值