学以致用

古之成大事者,不惟有超士之才,亦唯有坚韧不拔之志

模块化到整体化的一点小思考

       凌晨12.30,隐隐的睡不着觉,打开电脑写写最近一两周的经历和反思。记得之前写过一篇文章叫《平台的结构化和模块化方法》。大概是说在做平台的时候,要先树立好一个结构,比如功能有哪些,模块有哪些,然后在具体到模块设计。在模块设计的过程中,又要考虑扩充性这些。
BUT
       这样会导致另外一个问题,就是在上升一个维度去看待平台整体性质的时候,会有些零落。这里一方面原因是说接触一个新的领域串起来的能力可能稍微薄弱,另一方面是,把模块拆分后,便于自己的理解,但是有时候也会沉浸于独立模块的思考当中。当然这里是指先对比较分散的模块。
我这里给大家举个例子,比如做了其中一个功能叫人员管理,另外一个功能是角色管理。相对联系的关系就是人员会和角色挂钩。但是设计的时候容易发生误区,把两块相对拆开,因为我们明确一个宗旨是说,一个页面的主要功能是什么,就干什么。这样做的好处是模块区分清晰,逻辑清晰。但是对于用户的易用性确缺失了很多,我们从头在开始使用,就会略显麻烦。(这里是简单举例,有很多直接分开处理的很好的就不说了,只是采坑的时候回忆一下)
        所以我们通过结构化的方式区分了逻辑清晰的模块,但是还应该把模块在具体的整合起来。个人暂时总结以下两点:
        第一,从平台属性出发,即平台的主要性质和目的作用。比如一个erp进销存系统,其目的在于商品,订货单等等的管理和新建。把平台功能梳理清楚后,功能模块形成一个整体。这样单独去处理的时候,避免模块混乱和确实。
        第二,从使用角度出发,也就是用户的角度。我们做了第一点,是为了让功能模块整体化,这一步已经实现了基础功能。但是整体来看怎么好用,就需要把模块串起来。举个简单的例子(创建商品),我们会先将商品的分类创建好,这是一个模块,再把商品的基础信息创建好,这是另一个模块。那么我是否可以在创建商品的时候,直接创建分类,当然这里不是说就直接删除了分类这个模块,而是把功能引入。可能例子不是很恰当,意在说明流程集合的整体性,即看起来是模块属性清晰,使用起来却也连贯便捷。
        上边是一个简单的概述,可能说的有些潦草,但是也是实际操作中有时忘记的东西,可能因为技术实现,可能因为时间进度的催促。我们更多的处理了模块的功能,却忽略了模块串行的整体操作杆。

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注