软件系统架构心得
毕业这几年来,不敢说设计过多少大项目,小项目也有若干个了。再加上平时设计和开发控件(其实一个控件就是一个小型的系统,它也有自己的架构)也有相关设计,我对软件系统架构也有了一定的心得,现分享一下。
其实我在系统架构方面的真正提升,还是在设计DIM平台时。当时考虑的因素很多,包括接口和实现的低耦合,业务细分(分离),平台管理方式,权限及日志设计等。当时考虑到用户可能会用多种数据库,多种搭建方式(最简单的就是单机版使用,最复杂的就是自己架构一台服务器),及完全的动态数据表的建立及维护。那时对控件也进行了升级,功能块完全抽象出来,使后台调用更为简洁(用过我那个动态列表和动态表单控件的比较清楚,在1.0版本中业务处理起来还是比较复杂和混乱的,功能扩展比较繁琐)。这样在2.0版本里,动态列表和表单内部职责进行了细分,并把常用功能块抽象,使控件内部逻辑更加清晰,方便维护及扩展。目前比较可惜的就是这个平台最终还是因时间和精力问题被放弃了,不过当作系统架构来练笔的话,还算一个比较不错的例子吧。