关于PB代码重用的全面探讨

类别:数据库 点击:0 评论:0 推荐:

    在现在面向对象的编程的时代,代码重用是个永远值得讨论的话题,关于PB代码的重用,不少人都有提过,不过我觉得有些观点是不适当的,如何提高PB代码的重用性,我谈谈我的看法.

    首先说的应该就是如何在PB程序内部实现代码的重用.这个相信大家都比较熟悉,那就是面向对象编程的3个关键:继承,封装,多态.相信用过PB一段时间的人都熟悉如何做到这3点,继承,封装不说了,多态也可以通过函数重载的方式实现.

    上面说的是在一个程序项目中如何重用代码,就是说这些代码都是源代码.那对于非原代码的已有PB代码资源如何利用呢?

    最常用的应该就是如何利用PBD了.
    

    在开发环境中包含PBD应该是最常用的方法,也就是说,将PBD库包含到PB的开发环境的Library List中,这个时候,就可以象调用pbl中的对象一样,调用PBD中的对象和函数的功能了.这个时候,PBD除了无法看源代码之外,其他方面和PBL没有什么不同,编译整个应用的时候,他们也将参与编译.


    第二中应用方式,应该就是不将PBD包含到项目的Library List中,而是在程序运行的时候将PBD包含进来,使用的是PB的GetLibraryList,SetLibraryList的功能.这个方式对完全独立的PBD特别适用.

    第三种方式就比较少用,那就是用PB的Automation Server,首先将PB程序编译成Automation Server的PBD,然后在其他程序用OLE对象对它进行操作.对于PB程序,调用它是没有必要的,因为完全可以用上述的其他方式调用,更加简单,效率更高.但是它的好处是这个PBD可以被VC++,VB,BCB等调用,因为OLE的支持是大部分开发工具都支持的,这样就可以将PB开发的程序重用到其他语言开发的程序中.

    第四种方式比Automation Server更加先进一点,那就是用COM/COM+组件.COM/COM+组件技术将会渐渐取代OLE技术.同样COM组件可以被其他语言的程序所重用,同时COM+组件还可以实现远程调用,从而构建3层应用程序.

    最后,如果你使用EAServer开发3层应用的话,可以将PB代码发布为EAServer组件来调用.

    终上所述,PB的代码资源早已经不是只能被本身所利用,通过众多的方式,它能够很好的被其他语言利用,我想大家对它的片面看法也应该改改了.

 

本文地址:http://com.8s8s.com/it/it20033.htm