c++ 是否适合做GUI?
嵌入式软件现在有些应用还是使用C++开发GUI,C++做应用开发有点是响应速度快,性能高,在很多低端板子上运行的很流畅。C++做应用主要是调用一些封装的控件,这些C++封装的控件因为一般都是内部项目调用,所以问题多多,开发起来比较费力。而且C++底层一般使用OpenGL开发界面,展示效果一般般。
HTML
现在主流是使用web来做GUI设计,HTML界面丰富,开发效率高,更有很多优秀的前端框架,angular,react,vue js 框架,有很多动画,效果丰富,很炫酷。缺点是如果运行在嵌入式低端板子上性能是个问题,不是很流畅,但是随着云端的发展,这个问题会慢慢得到解决。
综上所述,C++确实不适合开发GUI,Web开发GUI是大趋势,这也是前端开发现在越来越火的原因之一。
答案是不适合。C++可以做GUI,比如使用MFC框架,用过的人都会理解它有多么难用,再者就是Qt,Qt比起MFC要稍微好一点,但对于开发者来说还是有些难度的。C++更适合后端软件及算法的开发。下面就介绍几种轻量级适合GUI开发的技术。
- C#。C#是微软推出的一门基于.net平台的语言,它吸收了Java、c++等语言的优点开发而来。使用C#开发GUI十分简单,语言也通俗易懂,同时支持PC和移动端(安卓和iOS)。在实际开发中,很多程序员的具体做法是界面GUI部分使用C#实现,后台算法部分使用C++。这样同时兼顾了UI和程序的性能。
- Web技术。这一类开发技术是目前看来最先进的,像有道云词典这样的软件就是最好的例子。其GUI部分使用HTML5等web技术快速实现界面搭建以及网络通信部分,使用C++完成后台逻辑及算法实现,程序既美观又跑得快,可谓一举两得。
- 直接使用G语言进行编程。最有名的G语言莫过于Labview,Labview可以说就是为GUI而生的一门语言。使用它进行程序开发,全程不需要一行代码,全部使用GUI实现,是不是很心动。但是,我要告诉你的是东西虽好,但价格可不便宜,Labview一套软件下来动辄就是好几万,对于那些不差钱的公司及科研机构是最好的选择。因为Labview能让你把注意力集中在程序设计本身上来,而不用去过多关注所谓的编程技巧。此外,Labview自带了很丰富的库,可以让你轻松完成多媒体,及信号处理程序的开发。
C++可以做GUI。
但是这里需要理解的是C++是一种计算机编程语言。以C++为语言实现的GUI框架非常多,我们熟悉的QT、MFC、SDL等都是C++语言为基础开发出来的…
[_a***_] GUI编程中有哪些好用的框架?都有什么优缺点呢?
Python桌面GUI开发的库其实很多,下面我简单介绍几个,感兴趣的朋友可以尝试一下,实验环境win10+python3.6+pycharm5.0,主要内容如下:
1.tkintert:这个是python自带的一个标准库,专门用于GUI开发,跨平台、小巧轻便,对于日常的小型应用来说,完全可以选择这个库,使用简单、好学易懂,可以快速创建我们自己的GUI应用,下面简单介绍一下这个库的使用:
测试代码如下,其实就是先创建主窗口,然后添加对应的控件就行,这里简单添加了一个Label控件:
程序运行截图如下,就是一个简单的窗口,很简单吧:
2.EasyGui:这个是基于tkinter的一个GUI开发库,是对tkinter的高级封装,使用起来更加方便、快捷,代码量更少,学习起来也非常容易,经常被用于设计一些简单的对话框或弹出框,是一个小巧、灵活的GUI开发库,下面我简单介绍一下这个库的安装和使用,主要步骤如下:
安装EasyGui,这个直接在cmd窗口中输入命令“pip install easygui”就行,如下:
安装成功后,我们就可以进行正常的测试了,主要代码如下,一个简单的信息录入框:
Python中常用的GUI框架是非常多的,一般有Python自带的和第三方库。
Python自带的有Tkinter,也就是Python标准库中的,简单易学,kinter 的 API 简单易懂,适合初学者入门;跨平台,Tkinter 可以在 Windows、Linux、mac 等多个平台上运行;功能丰富,Tkinter 提供了丰富的 GUI 组件,如按钮、标签、文本框、列表框等,可以满足大部分 GUI 应用的需求。一般适合初学者和开发小型 GUI 项目,不适合一些大型复杂的GUI项目。
Python第三方库的话,那就非常非常多了,有PyQt、wxPython、PyGTK、Kivy、PySide等等非常的多,因为Python就是这样,只要你遵循相关的规则,你就可以自己开发相应的第三库,所以你可以想象,***全世界开发者的力量,不断的都会为Python的第三方库贡献力量,笔者没有统计过第三方的GUI框架有多少,也许有二十多款,也许过段时间,又有开发者开发了新的很好用的GUI框架。语言的生态就是这样,如果一门语言非常好用,就会有无数的人为它贡献力量,而且Pyhon安装第三方库又非常的简单, 直接通过pip命令就可以了。
本人依次用过tkinter, wxpython,pyQt. 实际上,python还有很多其它的做GUl的packages,其具体介绍可以参考 . 至于优缺点,这要根据具体情况而定。根据项目要求,在网上多做点调研,然后做决定。
苹果真的偷了施乐的GUI吗?
乔布斯传有详细介绍。不是偷,是拱手相让。施乐的工程师研发出了图形界面,施乐高层认为没有价值。乔布斯当时在组织研发Machintosh操作系统,也就是现在macOS的前身,进入了瓶颈,后来有人告诉他施乐有一种被放弃的技术。乔布斯就去拜访了施乐管理层提出要参观这套系统。高层对这个系统完全不重视,这时候还没有认识到这个系统的价值,就让研发这个系统的主要技术负责人给乔布斯演示。他们在施乐的会议室花了好几天时间演示了一遍。乔布斯提出了一些问题,也得到了解答。然后乔布斯就让苹果的工程师也做一套。所以施乐是苹果的老师。至于乔布斯提出参观的时候有没有表示要购买这套系统,乔布斯传没有提到。
苹果iPhone 7手机,可以刷入Linux操作系统吗?
几天前,开发者顺利地展示了基于 iPhone 8 平台的 IOS 13.3 和 iOS 13.3.1 双启动。
现在,得益于 postmarketOS 破解工作的最新进展,iPhone 7 也已被人灌进了 Linux 操作系统。
据悉,有人设法通过 checkra1n 越狱工具,在 iPhone 7 上安装了 postmarketOS,以便在设备上刷入 Linux 内核。
开发者称,其希望推动苹果设备上的 Linux 定制操作系统的进步,鉴于目前已经有关于双启动和分区的实验,未来该项目也有望获得更大的发展。
如屏幕快照所示,该项目仍处于 Linux 命令行阶段,距离灌入图形用户界面(GUI)仍有一段路要走。
需要注意的是,这些破解步骤可能导致设备变砖,所有风险还请自担。感兴趣的朋友,不妨到 project-insanity.org 上去围观一下。