java qt gui_GUI(图形界面)技术选型

很多学习编程的小伙伴们在初学的时候会感到疑惑:为什么我学完了C语言,还是写不出一个完整的界面软件呢?其实使用底层代码直接写界面程序是很难的,倘若你要在屏幕上画出一条红色的直线,那么你需要找到显卡的地址,然后往显卡的寄存器中写入数据,这个过程非常的繁琐。所幸的是,我们可以找到很多封装好的GUI库,这些框架提供给你很多现成的功能,例如绘制图表、绘制按钮、显示界面、事件处理等。通过这些框架,我们可以很方便地完成界面绘制。下面笔者推荐几种最好用的GUI库,这几种库具备较强的兼容性,可以跨平台部署。我个人对跨平台是非常执着的,QQ使用的GUI技术不能跨平台,所以腾讯就需要另外派开发团队来开发Mac和Linux版本的QQ,而且不同的系统上不同版本的QQ体验差距相当大(尤其是Linux上那个简陋的QQ,完全是上古风格)。而WPS采用跨平台的Qt开发,所以现在WPS在Mac、Linux和移动端体验都非常棒。

1. Qt

Qt是一个跨平台的C++库,虽然它的功能不仅仅是绘制界面,但是如果要用C++做界面程序,没有比Qt更好的选择了。Qt从最初的Qt Widget发展到现在的Qt Quick,新项目强烈建议使用Qt Quick。因为Qt Widget是用C++直接绘制界面,虽然C++速度很快,但是CPU在处理图形的效率方面还是没法和GPU相比,这两者常常有数十倍的效率差异。现在计算机图形学和机器学习能发展得这么快,很大程度上就得益于GPU的快速发展。为了弥补Qt Widget在图形处理上低效的问题,Qt Quick横空出世。Qt Quick帧率可以达到数百(帧率:每秒图像刷新的次数),而且完全不会有卡顿(如果你还在用古董

你可能感兴趣的:(java,qt,gui)