组件化后感

JerryXia 发表于 , 阅读 (0)

好久没有写博文了。一直在开发这个新App,然后又过年了。今天突然有人加我好友问我组件化的问题,我才想起来:好久没有写博客了。

写什么不重要。关键要持续写。那我现在随便扯点什么吧。。。

哈哈也不是随便啦,也很认真。

并不是都需要二进制化

如果你是小厂,小团队,没有必要一上来就二进制化的。当时因为我们的项目中OC++代码,编译起来特别慢,不做二进制化不行,所以干脆就一口气全上了。

用router在业务组件间通信

用router在业务组件间通信是完全能满足需求的。但是写起来有点烦,不够优雅。如果再有一个新App的话,我一定会使用协议的方式来试试。

版本的问题

版本的问题在于,组件的版本没法对应主App的版本。追溯起来有点麻烦。而且当业务方让我们发个马甲包,而这个马甲包又是删减功能的App时,你的业务组件发版就有点麻烦了。尤其业务方喜欢历史版本。

动态化

如果想要使用weex/react-native这种来搞动态化,没有什么比组件化的方式来做更合适了。可以把影响控制在范围之内。可以很容易的回滚或替换。

设计思路的变革

在培养了团队成员组件化开发之后。大家在遇到新需求,设计的时候,都会首先定义它是属于哪种组件,如何解耦,对外要提供哪些router。

组件化之后单元测试更容易写和维护

开发成员看到了代码都是冰山一角,对于整个App来说。所以他们可以很容易地去写单元测试和维护,也不用担心单元测试需要依赖很多东西的问题。组件化之后,大家更愿意主动的去写单元测试。

开发效率的提高

最后发现大家开发效率提高了,bug少了。

小厂/小团队要不要组件化

有空你们就搞吧。

下一个目标

把oc演变为swift。把oc组件演变为swift组件。