我认为在理解什么是SOA,SOA到底能做什么的时候,首先可以了解一下SOA的由来。对于此,我是从两个方面来认识的:一,从技术发展层面看SOA的诞生;二,从信息技术应用层面来看。也就是说,SOA的提出与发展,并且到现在得到越来越多的人的青睐,是技术发展线和应用发展线相交的必然结果。
一,熟悉技术的人都知道,从编程技术发展来看,非结构编程→结构编程→面向对象编程→面向组件编程,这个过程的发展不是孤立的,它的不断发展目的就是为了使技术人员的成果与需求贴合的越来越紧密,能够使所开发出来的功能也好、应用程序也好,复用性得到提高,开放性更好,以便满足越来越多的外部数据传递的需要,当然,这些也仅是其发展动力之一。
二,从信息技术应用层面的发展,我们又能看到什么呢?其实,破除国界的限制,从整个信息技术应用发展史来看,我们会看到信息技术的应用是从点到面,从局部到全部的一个过程。在这个过程中,我们毫无疑问地发现,在一个应用群体内(我们可以看成一个企业),越来越多的软件,越来越多的功能,不同的数据库,不同的开发工具,不同的应用目的,而串行其间的,就是数据。如何让这些数据能够无障碍流转呢?每个应用者都在思考。
技术成熟了,应用需求明确了,于是,两条线相交,SOA就被炒起来了。但是,这个SOA不是属于某个个体的,不是属于某个团体的,它是属于所有在信息化技术与应用探索领域内共同奋斗的所有人的。
因为,回头去看我们所走的历程,就会发现,我们一直在为推动SOA理念的贯彻而努力。
记住,我们不是一个人在战斗!