一个软件系统的架构到底应该包含些什么?

从事企业信息化系统开发已经3年,回顾这3年的历程,深刻体会到的一点是:软件的架构设计,不是越全面越好,而是越简单越好。简单到对开发者透明最好。

那么,一个架构设计,到底需要提供什么呢?个人认为,只需要提供三种机制:

一、客户端和服务器的通信机制,缺少通信机制的支撑,只好做个单机版;

二、包含功能权限和数据权限的全面权限机制,这里其实并不包括权限管理功能,我认为权限管理功能是一项业务。而机制,则如同自然规则一样,虽然看不见摸不着,但却无处不在。

三、业务模块的动态加载机制,如果不能动态加载业务模块,则开发新模块和发布新功能都会很麻烦。

如果你的系统是C/S模式,那么还需要客户端的自动升级机制。

除此以外,做得越多,约束越多。开发到后面,就会发现系统不重构不行,而重构也是困难重重。用“积重难返”来形容,实在是没法再贴切了。而一个轻便的,甚至是透明的架构设计,则可以做到和业务完全无关。无论今后需要开发什么样的功能,都不需要变更架构的设计。在技术升级换代后,升级架构也非常容易。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值