你能推荐一个好的跨平台应用开发框架吗?
我想借助Stackoverflow社区的智慧和经验,帮我选择一个好的跨平台应用开发框架。
我想开发的应用是一个桌面图形应用,尽量支持多种现有的桌面环境(Linux、BSD、Windows、Mac)。理想情况下希望是开源的,但如果你知道有什么值得一提的闭源框架,也请告诉我。
理想的框架应该能提供尽可能多的现成模块,这样开发者就可以专注于在框架上添加这个应用特有的功能,而不是重复实现很多应用都有的通用功能。
需求:
目标桌面环境(Linux、BSD、Windows、Mac);不考虑移动设备和服务器。
编程语言是Python和C++的组合。
这个应用本身是一个图形应用,需要快速处理3D空间中的图像和数据。
我最希望找到的基本模块有:
图形用户界面工具包。可以是多平台的,也可以是特定操作系统的,只要框架能帮助我管理应用的操作系统特定版本;并且有一个不让不太懂技术的图形设计师感到害怕的GUI编辑器。
3D图形处理(OpenGL)
高效处理大数据集(比如有5万条记录的表格)
一个高效的构建系统,能够管理不同的操作系统,最好支持交叉编译。
偏好:
最好是开源框架
最好主要开发平台是Linux
最好有可用的IDE
虽然我在问这个问题时是针对一个已经遇到瓶颈的应用进行重构,但我希望你们也能把这个问题看作是一个全新的机会,以便对那些想要快速启动新应用开发的开发者也有帮助。
谢谢!
2 个回答
除了QT,WxWidgets也是一个选择。现在QT的授权政策变得比较严格,可能对一些人来说就没那么重要了。它们之间最大的技术区别是,WxWidgets实际上使用的是特定平台上本地的工具包,而QT则是提供了自己的工具包。对一些人来说,这意味着用wxWidget制作的应用在Windows、Mac、Linux/GTK或Sun/MOTIF平台上感觉更像是本地应用。
我用过这个库的C++部分,开发得很顺利,而且它能很好地与许多不同的构建环境结合。我从来没有使用过wxPython。
Qt 几乎涵盖了所有内容:
- 它是一个真正的开源项目,有活跃的开发和热情的社区支持。
- 关于可移植性,它可以在各种设备上使用,从嵌入式系统到大型系统,支持Windows、Mac OS X、Linux等操作系统;*BSD也应该没问题。
- 它提供了图形用户界面(GUI)的功能。
- 对Open GL的支持很好。
- 有Python的绑定(不过是第三方的)。
- 有无数的示例供学习。
- 文档非常完善。
- 还有更多其他功能。
不过,这个话题之前讨论过几次,所以建议你先看看以前的问题。