流程设计变成模块组合,能帮助研发更好地优化代码,减少bug产生,模块化设计思想应贯彻产品设计的始终。
一、模块化设计思想起源
模块化做为一种现代化的设计方法,这个概念最早起源于生产制造行业。对工业技术发展起着重要作用。如今这个概念已经被各行各业来衍生应用,和我们最直接的就是在各种开发设计环节大量使用这种思想。
所谓的模块化设计,简单地说就是将产品的某些要素组合在一起,构成一个具有特定功能的子系统,将这个子系统作为通用性的模块,可以与其他产品或要素进行多种组合,产生不同功能或应用的产品。
简单概括就是要像组装积木一样组合出不同产品。
二、模块化设计思想在实际生活中应用
模块化思想应用在我们身边的方方面面,简单介绍一下。
大到美国F35战斗机,采用通用模块化设计,使海军型、陆军型、空军型,最大程度通用降低成本,降低维护。
模块化设计在汽车领域得到非常彻底应用,从模块化配件,进化到平台化,再进化到架构化,都是模块化应用体现。在家具设计、研发以及采购、生产上均采用模块化方式。
还包括电子设备、手机、集成电路,再到软件研发领域,模块化思想已经成为基础的架构思想。
三、模块化设计优势
回到正题,我们来讲讲模块化设计在软件产品中应用优势,模块化在研发领域也是很普及,下面是我用研发的思想去描述模块化的特征和优势。
模块化特征
(1)独立性
选取的模块要具有相对独立的,可重复使用的内容,进行单独的设计并分装。选取可重用内容比较有模块化价值。单独封装可单独调试,封装又是为了保证他的独立性,保证了独立性又可减少对他的修改,减少了修改又减少了bug的产生。
(2)相容性&通用性
模块接口结构、参数标准化,容易实现模块间的互换,就是说要给不同模块方便的组合使用。比如在网站后台使用插件、在不破坏原有结构的情况下灵活组合安装使用,那大家必须遵守一定规则标准。
有利于实现在不同场景、不同环境下,有相同业务需求的功能模块通用使用。也可以将相同业务需求的模块,在不同产品中使用。
模块化优势
让各模块之间“高内聚,低耦合”,降低代码复杂性,增加重用性、可扩展性,提高开发效率。
模块化产品设计的目的是以少变应多变,以尽可能少的投入,快速产出产品,以最为经济的方法满足各种要求。模块化可以方便的组合出不同的产品满足用户需求。
在研发中,模块化在思想进一步提升,演变出了插件化。模块化是在已知或已有的项目范围内进行,插件化是平台提供统一标准,所有插件按统一标准进行模块化封装,能达到后期接入不同应用功能。我们在框架、前端、后端,很多系统中都普遍使用。