精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>各行各业>>IT人论坛>>【技术与市场】>>组件技术,软件业的一小步?

主题:组件技术,软件业的一小步?
发信人: ninja_xena()
整理人: hnyjchuhong(2001-11-27 21:35:57), 站内信件
    其实什么叫组件技术呢?我也没有一个完整清晰的概念,但不管怎么样,这的确让软件从一个比较封闭的时代慢慢走向开放了。
    记得最早接触类似的东西,是在帮一个企业做一个OA系统的时候,他们的各种订单,报价都是用WORD和EXCEL这类东西做的,特别是一些WORD文档,需要自动的转化到数据库里。当时用的是VB做开发,想不到什么解决的办法,于是遍寻手册,一开始找到的是DDE接口说明,可惜我根本没办法控制WORD进程来和我的程序通讯。后来是在联机文档里找到了当时的OLE的说明,如获得致宝,赶紧就把WORD和EXCEL往自己的VB程序里嵌,可是总是觉得怪怪的。最后,觉得应该MS有更完整的解决方案,就去跑了一天书店,抱着本VBA回来,才发现,原来通过OLE控制WORD可以象控制自己的程序一样容易!当时就觉得有一种“站在巨人肩膀上”的感觉了。
    后来搞的是DELPHI,好象到了DELPHI4 ,有了OFFICE控件群,用OFFICE功能完成很多很复杂的功能,比如把RTF转换成HTML。慢慢感觉,如果所有的程序,都留有给别人写的程序调用的接口的话,该有多好?当时还只能依赖VB的OLE功能和DELPHI的控件,还不能让所有的程序都听候自己的调遣,所以特别希望获得这样的能力。
    再后来做的比较多是CGI类的WEB开发程序,PHP的,C的都做过一点,发现用SCOKET这样的东西可以实现多进程、多机器间的自定义通讯(现在的JSP容器很多都是这样的方式和WEB服务器通讯,还有很多用TCP/IP的SQL数据库也是),有很多需要给别的程序公用的功能,也多做成用SCOKET来通讯的接口,特别是做成HTTP接口,基本就是做个WEB程序就可以了。
    可是后来发现,自己做这样的接口,少几个还可以,一旦多起来,接口没有一个统一的协议,维护起来特别麻烦,而且各借口各自为政,很容易出现更新不同步的问题,这个时候就开始留意XML了。
    XML的确是一个好东西,用来统一数据传递格式是最好不过的,而且又有很多的XML分析器可供选择,而不用自己写。但如果这只是用来做进程间的通讯调用,还是不完全足够的,因为协议的形式是XML,内容还是要自己定。
    能不能有一个完全包括了面向对象方法的接口协议方案呢?这时候,一个前辈介绍了CORBA这个东西给我认识,这是OMG组织定的国际标准,有各种语言的实现方案,而且隐藏了低层通讯的细节,让你调用别人的程序或者说是对象,就好象调用自己的一样,而不需要管到底这个东西是在另一个进程,还是在地球的另一端。
    自此,如果所有的程序都实现一个这些的接口,那么,软件开发的重用性就能大大的提高,这种重用不是以前的代码库的重用,而是真正的调用别人的程序,获得别人的计算能力的一种途径。这样,全世界运行着的程序,都可能成为你可以调遣的程序。就算不运用到远程计算,在自己的项目中,为接口编程的风格,也就自然的蔚然成风了,这样对项目的管理和以后项目的重用也是大有裨益的。
    其实CORBA已经出现了很多年,只是好象一直没什么花大力气宣传。但同类型的商业方案却推的如火如荼,比如MS的COM+到.NET方案;SUN公司的EJB方案;还有IBM的WEB服务方案,无不是根据组件的思想而延伸开去的。
    组件的思想,似乎从C语言有函数库就开始,到现在通过互联网,演变成一门专门的技术,不是预示着软件开发的新的一轮变革就要来临吗?

[关闭][返回]