论文部分内容阅读
[摘要]:本文通过介绍和分析wxWidgets开发包的性质和特点,根据测井解释与采集软件的特点进行了部分试探性的开发,可以使同一源代码在不同的操作系统下实现相同的功能,满足测井软件需求并能提高相关软件的开发效率。
[关键字]:wxWidgets 操作系统 测井软件
中图分类号:TP316 文献标识码:TP 文章编号:1009-914X(2012)26- 0388 -01
一、引言
wxWidgets[1] 是一个程序员的开发工具包,这个工具包用来开发用于桌面或者移动设备的具有图形界面的应用程序。wxWidgets库给程序员提供了大量的类以及类的方法,以供其使用和定制。
wxWidgets编写的程序的各个部分都可以是跨平台的,而不仅仅是图形界面的部分。这些部分包括:文件和流操作,多线程,程序设置, 进程间通讯,在线帮助,网络编程、多种常用图形格式支持、数据库支持、HTML察看和打印等等。同时wxWidgets是个API库,可以被python、perl、c++、java、lua、c#、basic、ruby等语言调用。
而我们测井技术领域的软件普遍运行于Windows、Unix(基于Xview的Sun工作站计算机、基于Motif的SGI工作站及PowerPC机等等)、Linux等。目前测井软件开发人员的工作基本上是基于某一平台而开展的,实际上有很多程序功能是在不同平台上进行着重复的开发。采用wxWidgets提供的跨平台开发方案可以让程序员不用修改源代码就能在不同的操作系统实现同一功能。
二、wxWidgets的特点
关于跨平台软件开发包,而wxWidgets被直接编译成机器码,从而获得速度优势。wxWidgets提供的API函数在它支持的所有平台上是相同的或者是非常相似的。这意味着你可以编写一个windows上运行的程序,这个程序不需要经过任何改动,只需要通过重新编译,就可以在Windows、 Linux或者Max OSX上运行。比起为另外的平台从头编写代码,这显然有很大的好处,另外一个附带的好处是,你不需要重新学习那个平台的API。
关于跨平台开发,基于C++的wxWidgets程序会运行更快,感观上更象本地原生程序并且更容易安装。C++也更容易访问操作系统提供的底层函数并且更容易和已有的C++或者C代码集成。基于以上原因,通过wxWidgets可以让你开发高性能的,本地原生的应用程序。
另外一个与众不同的地方在于,wxWidgets可以给你的应用程序提供本地观感。wxWidgets使用本地的窗口控件,所以wxWidgets的程序不只是看上去象是本操作系统上的原生程序,它实际上就是原生程序。对于使用应用程序的用户来说,这是非常重要的,因为和本地操作系统标准的任何一点细微的不同,都会让他们 产生避而远之的想法。为了让所开发的程序可以方便的从微软的 Windows移植到Linux或者是苹果的OSX。 wxWidgets还正致力于移动终端的支持,包括嵌入式linux(如android等),微软的Pocket PC。
三、测井软件开发使用现状
目前测井解释软件普遍运行于SUN工作站或服务器、SGI工作站服务器、微型计算机等计算机机型上;操作系统采用基于Xview和Xt-motif图形界面的Unix,以及微软的Windows等。对于测井采集软件,则采用PowerPC、HP工作站、微型计算机等采用的操作系统属于基于Xt-motif图形界面的Unix、基于Qt的Linux以及微软的Windows等。由于测井专业数据处理、显示等共性的需要,使得在不同操作系统中的解释软件或采集软件存在着大量的相同功能软件的重复开发的情况,造成了资源的浪费和效率的降低。
wxWidgets开发包,自1992年发行以来,在得到各方的支持的情况下,已经得到了较为强劲的发展和完善。无论是功能上,还是开发文档方面都已经能够满足我们测井专业领域对计算机软件的要求,已经有能力解决我们面临的跨平台开发的要求。因此我们进行了相关的尝试。
四、尝试开发
通过这两个程序的编制,我们能够使同一分程序源代码在不同操作系统下得到相同的程序功能和用户操作,以及本地化的外观从而实现同一套源代码在不同操作系统下的重用,减少了重复开发的情况的发生。
五、效果分析及展望
测井采集系统,目前发展到了包含成像测井、远程监控诊断、远程测井等功能的综合测井采集系统。而技术控制中心、数据中心、仪器研发中心、测井采集现场都可以通过网络连接到一起,从而为我们实现远程监控诊断及远程测井提供了必备的技术支持。 然而,与测井技术相关的领域使用的计算机操作系统主要集中在微软的Windows系列、Linux和Unix;监控和诊断是现场必不可少的部分;如果操作系统方面,在现场使用微软的Windows,在控制中心使用的是Unix工作站;我们以往必须开发两套监控和诊断程序。现在wxWidgets开发包提供对操作系统Windows、Linux和Unix等操作系统的支持,使得我们能够仅开发一套原始代码(在Windows或Linux系统上开发),就可以得到两套或三套运行于不同操作系统上的执行程序。也就是将该程序的源代码在技术控制中心、数据中心、仪器研发中心等部门的计算机上重新进行编译就能得到运行在不同操作系统下的具有相同功能的执行程序。它们通过网络实现监控、诊断、远程控制或实时处理等。通过以上两个测试小程序的实现,我们有理由相信,通过wxWidgets开发包的使用,能有效地减少不必要的重复开发的情况的发生。
六、 结论
通过对wxWidgets开发包的分析和测试,及我们测井专业领域部分软件的分析。我們能够通过wxWidgets开发包的使用,编写一套代码在不同操作系统上实现相同的功能,更有效地为测井软件开发服务,提高软件的开发和使用效率。
参考文献:
[1] Cross-Platform GUI Programming with wxWidgets Junlian Smart, Kevin Hock,Stefan Csomor/2006-10/PH PTR Online .
[2] Java从入门到精通 高宏静 等编著/2009-08-01/化学工业出版社
[3] Linux? Bible 2010 Edition Christopher Negus/2010-10/Wiley Publishing,Inc
作者简介:
(作者姓名:王艳红 性别:女 籍贯:山东阳谷 出生年月:1968年1月 单位:大庆钻探工程公司测井公司 职称:助理工程师 研究方向:石油测井软件设计与开发)
[关键字]:wxWidgets 操作系统 测井软件
中图分类号:TP316 文献标识码:TP 文章编号:1009-914X(2012)26- 0388 -01
一、引言
wxWidgets[1] 是一个程序员的开发工具包,这个工具包用来开发用于桌面或者移动设备的具有图形界面的应用程序。wxWidgets库给程序员提供了大量的类以及类的方法,以供其使用和定制。
wxWidgets编写的程序的各个部分都可以是跨平台的,而不仅仅是图形界面的部分。这些部分包括:文件和流操作,多线程,程序设置, 进程间通讯,在线帮助,网络编程、多种常用图形格式支持、数据库支持、HTML察看和打印等等。同时wxWidgets是个API库,可以被python、perl、c++、java、lua、c#、basic、ruby等语言调用。
而我们测井技术领域的软件普遍运行于Windows、Unix(基于Xview的Sun工作站计算机、基于Motif的SGI工作站及PowerPC机等等)、Linux等。目前测井软件开发人员的工作基本上是基于某一平台而开展的,实际上有很多程序功能是在不同平台上进行着重复的开发。采用wxWidgets提供的跨平台开发方案可以让程序员不用修改源代码就能在不同的操作系统实现同一功能。
二、wxWidgets的特点
关于跨平台软件开发包,而wxWidgets被直接编译成机器码,从而获得速度优势。wxWidgets提供的API函数在它支持的所有平台上是相同的或者是非常相似的。这意味着你可以编写一个windows上运行的程序,这个程序不需要经过任何改动,只需要通过重新编译,就可以在Windows、 Linux或者Max OSX上运行。比起为另外的平台从头编写代码,这显然有很大的好处,另外一个附带的好处是,你不需要重新学习那个平台的API。
关于跨平台开发,基于C++的wxWidgets程序会运行更快,感观上更象本地原生程序并且更容易安装。C++也更容易访问操作系统提供的底层函数并且更容易和已有的C++或者C代码集成。基于以上原因,通过wxWidgets可以让你开发高性能的,本地原生的应用程序。
另外一个与众不同的地方在于,wxWidgets可以给你的应用程序提供本地观感。wxWidgets使用本地的窗口控件,所以wxWidgets的程序不只是看上去象是本操作系统上的原生程序,它实际上就是原生程序。对于使用应用程序的用户来说,这是非常重要的,因为和本地操作系统标准的任何一点细微的不同,都会让他们 产生避而远之的想法。为了让所开发的程序可以方便的从微软的 Windows移植到Linux或者是苹果的OSX。 wxWidgets还正致力于移动终端的支持,包括嵌入式linux(如android等),微软的Pocket PC。
三、测井软件开发使用现状
目前测井解释软件普遍运行于SUN工作站或服务器、SGI工作站服务器、微型计算机等计算机机型上;操作系统采用基于Xview和Xt-motif图形界面的Unix,以及微软的Windows等。对于测井采集软件,则采用PowerPC、HP工作站、微型计算机等采用的操作系统属于基于Xt-motif图形界面的Unix、基于Qt的Linux以及微软的Windows等。由于测井专业数据处理、显示等共性的需要,使得在不同操作系统中的解释软件或采集软件存在着大量的相同功能软件的重复开发的情况,造成了资源的浪费和效率的降低。
wxWidgets开发包,自1992年发行以来,在得到各方的支持的情况下,已经得到了较为强劲的发展和完善。无论是功能上,还是开发文档方面都已经能够满足我们测井专业领域对计算机软件的要求,已经有能力解决我们面临的跨平台开发的要求。因此我们进行了相关的尝试。
四、尝试开发
通过这两个程序的编制,我们能够使同一分程序源代码在不同操作系统下得到相同的程序功能和用户操作,以及本地化的外观从而实现同一套源代码在不同操作系统下的重用,减少了重复开发的情况的发生。
五、效果分析及展望
测井采集系统,目前发展到了包含成像测井、远程监控诊断、远程测井等功能的综合测井采集系统。而技术控制中心、数据中心、仪器研发中心、测井采集现场都可以通过网络连接到一起,从而为我们实现远程监控诊断及远程测井提供了必备的技术支持。 然而,与测井技术相关的领域使用的计算机操作系统主要集中在微软的Windows系列、Linux和Unix;监控和诊断是现场必不可少的部分;如果操作系统方面,在现场使用微软的Windows,在控制中心使用的是Unix工作站;我们以往必须开发两套监控和诊断程序。现在wxWidgets开发包提供对操作系统Windows、Linux和Unix等操作系统的支持,使得我们能够仅开发一套原始代码(在Windows或Linux系统上开发),就可以得到两套或三套运行于不同操作系统上的执行程序。也就是将该程序的源代码在技术控制中心、数据中心、仪器研发中心等部门的计算机上重新进行编译就能得到运行在不同操作系统下的具有相同功能的执行程序。它们通过网络实现监控、诊断、远程控制或实时处理等。通过以上两个测试小程序的实现,我们有理由相信,通过wxWidgets开发包的使用,能有效地减少不必要的重复开发的情况的发生。
六、 结论
通过对wxWidgets开发包的分析和测试,及我们测井专业领域部分软件的分析。我們能够通过wxWidgets开发包的使用,编写一套代码在不同操作系统上实现相同的功能,更有效地为测井软件开发服务,提高软件的开发和使用效率。
参考文献:
[1] Cross-Platform GUI Programming with wxWidgets Junlian Smart, Kevin Hock,Stefan Csomor/2006-10/PH PTR Online .
[2] Java从入门到精通 高宏静 等编著/2009-08-01/化学工业出版社
[3] Linux? Bible 2010 Edition Christopher Negus/2010-10/Wiley Publishing,Inc
作者简介:
(作者姓名:王艳红 性别:女 籍贯:山东阳谷 出生年月:1968年1月 单位:大庆钻探工程公司测井公司 职称:助理工程师 研究方向:石油测井软件设计与开发)