您当前的位置:首页 > 计算机 > 编程开发 > C语言

定制与开发应用之二: 可扩展编程(一)

时间:12-30来源:作者:点击数:

相比于COM组件编程,可编程性扩展虽然比不上COM组件操作简单,但是由于可编程性扩展提供了底层的C语言编程接口,使得扩展编程拥有更高的运行效率和更稳定的执行能力,而且还使JAVA等其他编程语言调用SPSS进行分析成为可能。SPSS公司近年来着力加强了SPSS统计软件包对可编程性扩展的支持。从支持编程的多样性来看,SPSS的最新版本Statistics 17支持Python语言、SAS、R语言和.NET(C++、C#、VB)的集成开发,并提供了C语言的API(Application Programming Interface,应用程序编程接口)。

从编程灵活性来看,SPSS既可基于Script下的Saxbasic调用外部的Python、SAS、R及.NET程序,又可以被这些语言编写的程序所调用。从支持的操作系统来看,它既支持UNIX环境,又支持Windows环境。从运行特性来讲,既可以在后台调用SPSS处理器来完成指定任务得到输出的分析结果,又可以构建前端界面,实现与用户的窗口交互。可见,SPSS为用户提供了越来越灵活的编程技术支持,而且可编程性扩展已经成为SPSS高级用户自定制应用的良好选择。用户基于SPSS使用可编程性扩展,可以构建灵活、综合、与现有系统高度集成的企业级应用。SPSS的可编程性扩展最权威的资料是SPSS的官方文档,对版本Statistics 17.0而言,主要是《Programming and Data Management for SPSS Statistics 17.0》、《SPSS Statistics Programmability Extension Developer's Guide for Windows》和《SPSS Statistics Programmability Extension Developer's Guide for UNIX》。此外,SPSS还在可编程性扩展包中发布了相关的简单编程实例,可谓是周到。上述这些资料都可以在SPSS的官方网站开发人员中心下载栏目免费获取。

使用SPSS的可编程性扩展来进行开发和应用,首先要很好的理解SPSS Statistics的基础是什么,以及它如何工作。SPSS支持三种应用方式下的开发:

  1. SPSS统计应用(SPSS Statistics),它有图形化用户界面,但是编程扩展不适用GUI(图形化用户界面)。
  2. SPSS服务器(SPSS Server),它是一个分布式的应用,拥有一个客户端/服务器架构。它为资源密集型操作分发客户端请求到一个强大的分析服务软件。请求由客户端提交,被SPSS统计服务器处理。
  3. SPSS统计批处理工具(SPSS Statistics Batch Facility),它包含在SPSS统计服务器里。它的任务是自动的数据管理和统计结果输出。自动生产提供了无须人为干预的命令提交。批量处理工具把输入的命令语言文件作为数据操作和统计的请求。它也没有图形用户界面。

可编程性扩展包含在SPSS的基本系统里,提供扩展SPSS与需要独立集成插件的外部程序语言交互的基本的支持。SPSS实现与外部语言的集成主要是通过两个动态链接库文件,第一个是SPSSXD API,它包括C语言应用编程接口(API)实现内部处理(spssxd.dll)和外部处理(spssxd_p.dll),该API允许外部处理器控制SPSS统计应用。第二个是通用接口spssdx.dll,它使SPSS可以执行写在命令语句“BEGIN PROGRAM-END PROGRAM”语句块间的外部语言代码。

通常,一个插件包含两种库文件,第一种是MyLanguageInvokeSPSSXD,负责装载spssxd.dll或者spssxd_p.dll,并且使外部语言可以使用SPSSXD API。第二种是InvokeMyLanguage,它通过spssdx.dll为SPSS激活外部处理器,是一个插件的备选组件。

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门