单一职责

仅作个人记录


最近封装了一个项目的Toolbar,在开发中有着各种各样的收获,比如对建造者的意义的深入理解,对Toolbar源码的阅读与Toolbar布局规则的改善。。。其中的一点收获是单一职责。

我封装了一层Toolbar的原生样式改善层,一层自定义View添加层,其功能拆分得可谓完美,在无数次划分职责的思考中最终选择了这样的划分,真的很棒。

第一层,职责是Toolbar的原生样式,他的NavigationIcon、Title字体都是我需要的,可是受到的限制很大,我就通过某些手段,突破了这些限制,可以说这一层封装后,Toolbar依然是Toolbar,但是他的样式更灵活了,比如Title可以居中了,右边也有了一模一样的ImageButton。可以说相当于官方的修改了,等同于官方修复了他样式不够灵活的bug。

第二层,在更多的位置上可以插入View,算是自定义View层。

这样划分的好处在于,第一层等同于bug修复,好像官方修复了不足之处一样。我现在做的才是真正的Toolbar封装。这是运气好,第一层功能被吞并了,使得这次开发太舒服了。

不过就算我是封装的2层,也是很舒服了。这样维护起来,别人阅读起来,使用者使用起来,都很舒服,因为每一层都对应一个功能,我如果写在一起,或者分层不明确,日后修改,头都要大了。现在好了,改动非常有目标性,非常清晰。


单一职责

难道我会谈事件分发、OkHttp和网络分层的责任链模式来述说单一职责?当然不是。这些已经算是很抽象了,离真正开发似乎很远。近一点,MVP难道不是单一职责吗?数据层,组织层,UI层,这样一分,简直美到心醉。以后维护起来是一种享受!!(当然了,MVP还用了接口隔离的思想)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值