【经验】Qt项目开发必备工具

在实际的项目中,除了需要掌握Qt开发框架本身,还需要掌握一些开发工具。这些工具能起到事半功倍的效果,甚至某些工具是开发不可或缺的。下面笔者就介绍一些常用的开发工具的用法及下载地址,希望对缺少实际项目经验的同学提供一些参考和建议。

1. 文件搜索利器Everything

软件介绍

软件主页:https://www.voidtools.com/zh-cn/

引用一下官方介绍:

“Everything” 是 Windows 上一款搜索引擎,它能够基于文件名快速定文件和文件夹位置。

“Everything” 仅索引文件和文件夹名,一般仅需几秒便可建立其数据库。全新安装的 Windows 10 (大约 120,000 个文件) 仅需 1 秒即可索引完成。索引 1,000,000 个文件将需要大约 1 分钟。

为什么选Everything?因为它功能强大、速度快等等、最主要是免费。

软件界面如下:
Everything软件截图

什么场景下才会使用Everything?

  • 忍受不了Windows自带搜索工具的速度,并想在一秒内找到文件时,你需要Everything;
  • 运行软件找不到动态库时,直接输入动态库名称即可找到;
  • 着急使用文档,但是只记得部分文档名称,忘记存放位置时,输入部分文件名即可快速找到;
  • 不想通过资源管理器一层一层定位文件时,可以用Everything搜索到文件后,直接定位到文件所在位置;
  • 支持Web服务:可以从手机或平板上通过浏览器访问它。

总的来说,Everything在日常中使用频率很高,它确确实实能够带来效率的提升。不管是对软件开发者还是职场人士,都是必备工具。

2. 文本编辑工具Notepad++

这个工具大家可能比较熟悉,它是Windows上Nodepad.exe的高级替代品,文件编辑利器,主要用于文本编辑。

我们知道Windows的Nodepad.exe界面和功能都十分简单,只能进行简单的文本编辑。
而Nodepad++支持代码高亮、支持插件、支持编码转换、支持高级搜索、甚至支持代码调试(部分语言),适合用来编写脚本程序。最主要的特点是免费,可以直接下载使用,官方下载地址:https://notepad-plus.it.softonic.com/。

界面截图如下:
Notepad++软件截图
这个软件也可以说是开发必备,可以满足多数情况的编辑需求,软件使用起来也十分简单,使用频率很高。

笔者注:Notepad++作者有反华言论,建议大家使用其他软件。还有很多优秀软件,比如Notepad2、Notepad3、VSCode等,国人当自强,希望以后会有更多优秀国产软件问世。

3. 文件比对工具

在多人协作的项目开发模式中,每个人负责开发不同的模块。
在特定开发阶段完成后,需要合并多个开发成员的项目代码。这就需要判断每个人对文件做了哪些修改,从而合并得到最终的代码版本。大量的代码靠人眼比对是不可行的,必须要借助文件比对工具进行比对。

下面介绍几种常用的文件比对工具。

  • Beyond Compare:付费软件,专业文件和文件夹比较工具,是被广泛认可和使用的软件,界面及交互设计上方便易用,功能上也是很完备,是笔者首推的软件。可以下载试用,或者输入序列号获得使用授权。
  • WinMerge:免费软件,界面设计和功能上都相对于Beyond Compare略逊一筹,但是也能满足日常使用需求。

限于篇幅,这里就不一一列举了,有很多相关软件,感兴趣的话大家可以一一尝试。

4. 版本管理工具

介绍

在使用版本管理工具前,需要了解为什么做软件开发需要进行版本管理。
前面的文章曾提到过,软件开发是一个工程系统,并不仅仅指代码编写。如何管理好项目中的代码、资源、配置的版本也是很重要的。
软件是一个不断迭代的逻辑产品,迭代离不开版本管理。
当然完全掌握版本管理是有一定难度的,在此之前,我们首先需要了解版本管理的基本问题,建立起对软件版本管理的基本认知。用简单的话来说,就是:

  • 版本就是同一个软件、资源在不同阶段的档案,档案是记录历史信息的最重要的工具,历史信息在项目中也会包含巨大的价值,一旦丢失可能造成巨大损失。
  • 版本管理的核心研究对象即为“版本”;
  • 确定了研究对象,那么就需要对研究对象进行操作,最基本的需求无非就包括:浏览版本内容、比较合并版本差异。其他复杂的功能是围绕着基本问题展开设计的,弄懂最核心的矛盾才是最重要的。后面会公众号有版本管理的文章,敬请关注。

版本管理工具

  • Git
    Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的分布式版本控制软件。Git作者也是Linux操作系统的作者,感兴趣的可以深入了解一下。
    Git只是一个版本管理的工具集,针对Git有很多GUI软件,旨在简化Git的使用。
    最常用的Git UI客户端这里建议使用:TortoiseGit,小乌龟牌Git,软件免费,官网可以下载使用,地址:https://tortoisegit.org/。
    Git目前是主流,需要尽量学会基本操作。

  • SVN
    SVN是旧时代的版本管理工具,功能及相对于Git而言不够强大,但是也是足够使用的,最好能够了解。
    SVN的桌面客户端用得比较多的是TortoiseSVN,小乌龟牌SVN,TortoiseSVN 是 Subversion 版本控制系统的一个免费开源客户端。官网地址:https://tortoisesvn.net/。
    SVN原理上和Git不同,SVN需要服务器,服务器软件一般使用Visual SVN,也是免费的,官网地址:https://www.visualsvn.com/server/。
    使用时,需要同时安装SVN客户端和SVN服务器配合使用。

5. Markdown编辑器

做项目时一般需要写一些篇幅较短的文章,用于记录或说明一件事情。如果你还在使用文本文件那就太落伍啦!试试用Markdown来写文章吧,本文即使用Markdown创作。虽然Markdown有一定的学习成本,但是真正使用频繁的部分并不多,还是要牢记二八学习法则,只有20%的技术在80%的情况下能用到,比较难的技术很少能用到。所以先把20%学会了,就算基本学会了。

Markdown编辑器推荐使用Typora,目前是免费使用的,很好用的Markdown桌面客户端。

Typora软件界面:
Typora软件界面

结语

上面简单介绍了笔者觉得最常用的做Qt项目开发时的工具,只是众多工具的冰山一角。
后面有新的有用的开发工具(包括笔者编写的工具)会及时补充,敬请关注。


最近创建了一个公众号,主要是Qt相关,欢迎关注支持。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/437019.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

c与python内存传递_python - 从Python向C ++传递COM指针数组 - 堆栈内存溢出

我已经阅读了许多文档,示例和StackOverflow主题,但仍然无法正常工作! 我正在为我的C COM对象编写一个Python接口。 这不是我第一次这样做。 过去,我已经成功地使用comtypes获取单个接口指针,并将它们传递给我的COM类&…

【转】TCP/IP协议--TCP的超时和重传

TCP是可靠传输。可靠之一体现在收到数据后,返回去一个确认。但是不能完全避免的是,数据和确认都可能丢失。解决这个办法就是,提供一个发送的重传定时器:如果定时器溢出时还没收到确认,它就重传这个报文段。 想法是完美…

【技术】Qt对话框讲解

前言 Qt中对话框QDialog是几乎每个项目都会用到的GUI窗口对象。本文通过讲解QDialog及其子类在项目中经常被用到的功能点,帮助小伙伴们理解和掌握其使用方法。 QDialog QDialog是Qt对话框类树中的基类,Qt为我们提供了很多QDialog子类,即标…

mysql集群方案对比_MySQL云原生方案在携程开发测试场景中的实践

一、背景与使用场景随着Kubernetes平台在容器云计算领域的一统天下,云原生 (Cloud Native) 一词也被提的越来越频繁。各类应用纷纷走上了容器化、云原生化的道路,无状态服务应用在Kubernetes平台上的运行,已经得到了大规模生产级别的实践认可…

UML核心问题

帮助读者理解每种图是为了展现什么内容、解决什么核心问题而存在的。 下面按照重要性先后依次说明。 1. 用例图 核心:人、目标、功能 以人为出发点,描述人实现一个目标需要使用哪些功能,仅仅指出功能点就行,点到即止&#xff0c…

【转】setsocketopt getsocketopt比较全的参数说明

setSocketOption各项的含义 DELAY 小缓冲写入延迟值。如果为0,则禁用了TCP对于小缓冲区操作的Nagle算法。如果需要启动该算法则需要把该值设置为非0 KEEPLIVE 保持连接的特性。如果该值为0,则禁用了保持连接的特性。如果要启动该特性则要把…

vb.net datagridview数据批量导入sql_【自学C#】|| 笔记 44 ComboBox:组合框控件数据绑定...

一、ComboBox:组合框控件数据绑定在 Windows 应用程序中很多控件都提供了 DataSource 属性,并将 DataSet 或 DataTable 的值直接赋给该属性,这样在控件中即可显示从数据库中查询出来的数据。 常用的数据绑定控件有文本框(TextBox)、标签(L…

【转】C#Socket编程详解(一)TCP与UDP简介

一、TCP与UDP 1、TCP 1.1 定义 TCP(TransmissionControl Protocol)传输控制协议。 是一种可靠的、面向连接的协议(eg:打电话)、传输效率低全双工通信(发送缓存&接收缓存)、面向字节流。使用TCP的应…

【精华】掌握Qt调试技术

前言 软件调试,是开发过程中必备的技能。通过调试可以发现软件存在的bug,即缺陷。调试可以帮助开发者窥探到软件运行过程中的详细状态,从而为消除bug提供重要信息。调试的英文是debug,前面的de在英文中表示“反对”,“…

ps海报合成教程_如何利用PS制作海报?详细教程来了!

今天能学长给大家带来一套利用PS做【月满中秋】海报的教程。福利干货到,请大家接住!话不多说,直接上教程【月满中秋-第一课】月满中秋-海报制作教程https://www.zhihu.com/video/1187797197951918080为了方便大家阅读,本篇文章特地…

【转】WebSocket详解(一):初步认识WebSocket技术

1、前言 HTML5规范在传统的web交互基础上为我们带来了众多的新特性,随着web技术被广泛用于web APP的开发,这些新特性得以推广和使用,而websocket作为一种新的web通信技术具有巨大意义。 本文将带您认识WebSocket。也可查看本文的下篇&#x…

【Qt调试技巧】Profile配置使用及一些坑

介绍 不知从哪个版本起,Qt Creator中的构建配置中,增加了一种新型配置,名叫“Profile”,如下图所示: 官方对Profile的描述是:Profile是介于Debug和Release中间的一种配置。具体是什么意思呢?…

python 语句简写_自学Python-语句之列表推导式

先举例分析运行过程:例如:#将list_a[1,2,3,4,5]元素扩大10倍,生成新的列表。如果按传统的for循环来写:--------------------list_a[1,2,3,4,5]list_b[]for x in list_a:list_b.append(x*10)print(list_b)输出:[10, 20,…

Qt中使用OpenSSL

概述 OpenSSL官网 OpenSSL官网:OpenSSL是一个开源跨平台的加密库,应用广泛。Windows提供了自己的一套加密认证API,感兴趣的话可以参考:Windows Authentication Overview。 Qt官方文档: Secure Sockets Layer (SSL)…

【转】带你玩转Visual Studio——03.带你了解VC++各种类型的工程

上一篇文章带你玩转Visual Studio——带你新建一个工程一文中提到新建一个工程时会有很多的工程类型(图1),现在将简单介绍各种类型工程的含义和主要用途。由于这里包含的工程类型太多,有很多本人也没有接触过,有些可能理解的不太对的地方还请…

数学学习过程中的感悟(一)

前言 最近在考研复习,回顾自己的学习数学的过程,有一些感悟,在此记录一下。 正文 大学的时候,学习到了高数,但是接触不久就丧失了兴趣。明明中学时代还很喜欢学习数学,为什么到了大学,一点兴…

如何调整金格电子章服务器印章_重磅!公安部再度认可电子签名、电子印章法律效力!...

近日,公安部发布《关于修改〈公安机关办理刑事案件程序规定〉的决定》,对《公安机关办理刑事案件程序规定》(以下简称规定)进行了全面修改完善,并将于9月1日起施行。修改后的规定共14章388条。其中,新增的第…

【转】带你玩转Visual Studio——04.带你高效开发

上一篇文章带你玩转Visual Studio——带你了解VC各种类型的工程一文中讲了各种类型VC工程的主要功能和用途。现在将带你一起快速开发c程序。 有过Java开发经验的人都知道Java的常用开发工具(如Eclipse、Intellij IDEA等)都有非常强大的关键字高亮、智能提示、快速追踪等的功能…

python编译make_Python在Linux下编译安装

【准备环境】Linux centos【前言】1 linux下默认带Python,带的是2.7版本的 ,如果需要升级版本,需要把系统的自带的Python改名或者卸载,再次安装你所需要的Python版本,centos下由于yum依赖自带的Python2.7,所…

【信号与线性系统】知识点与学习攻略

知识点理解 关于正交分解可以看这个视频: https://www.bilibili.com/video/BV1qV411C7u6/ 记住两个完备正交函数集: 一个是正余弦三角函数,非零不同频率项乘积为0,非零同频率项乘积积分为T/2,零频率项乘积积分为T。 一…