企业应用架构的设计--是面面俱到还是仅仅提供基础服务

有2种思路。

一种是尽可能地将能隐藏的东西隐藏起来,将能封装的功能封装起来,提供给developer的只是一些傻瓜级的API。程序员可发挥的空间很小,比如甚至都不需要知道数据库表。

另外一种是选择好合适的技术架构,做好基础设施的搭建,比如异常处理,权限,工作流。只提供简单的封装,程序员有足够的灵活度。

显然,前者的情况,程序员会比较没有动力。优势是系统的核心程序员无法触及,相对安全。有不少公司都是这种情况,程序员的流动性相当高,不过老板也不在乎。

而后者的情况,程序员会有较高的积极性,容易成长,团队的融合会比较不错。更加符合敏捷的思路。但也许产品或者项目的规模大了后,会导致失去控制。

也许还是应该具体情况具体分析吧!

相关推荐