折腾开发环境的一天

一直使用 Visual Studio Code 来将就着阅读 Qt 源码,至于体验也只能说是将就着能看,跳转和调试功能基本处于停摆状态。之前很少使用 Qt Creator,大多使用 Visual Studio 开发 Qt 项目,因为在接触 Qt 之前,已使用 VS 多年,VS 也可以满足 Qt 项目开发的需求,何况 Qt 对我而言更多的只是一个 UI 库,重心也没有全部在 Qt 上面,所以也没有动力去花时间熟悉另一个 IDE 了。 今日心血来潮,想折腾一下 Qt Creator,后面用它来看 Qt 源码也许会方便些。 我想虽然 Qt6 已经改用 CMakeList 管理源码,但 Qt5 的源码依然使用的是 QMake,并提供了 Qt Creator 项目文件,使用 Qt Creator 来阅读 Qt5 源码也许会更加便利。

编程基础

回顾2D绘图的数学知识

本篇旨在帮助开发人员回顾在2D图形编程中可能会涉及到的数学知识。

编程基础

不同操作系统所集成的字体

如果界面所指定的字体在用户系统上未安装,则会自动降级到系统默认字体,这样会导致界面显示异常或达不到预期效果。 对于特殊字体我们通常会集成到软件安装包内,但对于汉字这样的语言,它的文字比较多,因此字体文件比较大,如果集成到安装包内会导致安装包体积变大,所以对于类似中文这样字符比较多的语言字体,我们通常会选择系统自带的字体。 而不同操作系统(如Windows和macOS)所自带的字体不一样,甚至同一操作系统不同的版本(如Windows 7和Windows 11)自带的字体也不一样,因此在选择采用什么字体前,需要弄清我们应用程序支持的操作系统所自带的字体都有哪些,才能更好的做选择。 操作系统的新版本通常只会新增字体,不会移除老的字体。

编程基础

正则规则速查

本文不是一个完整的正则表达式的教程,仅适用于已掌握正则表达式语法,需要进行规则速查的开发人员。

编程基础

Git杂记

本文记录 Git 使用中的一些零碎知识,方便自己查阅,亦希望成人之美。

编程基础

图形编程扫盲

一、常见图形编程接口我们常见的图形编程接口主要分为如下派系: OpenGL DirectX Vulkan Metal 下图展示了各个派系的分支及特点:

编程基础

Windows资源管理器图标覆盖优先级设定

我们在安装了TortoiseSVN或TortoiseGit后,会自动在资源管理器的文件夹和文件图标上显示覆盖图标(Icon Overlay),这样可以比较方便的查看文件状态。 但有时候我们安装的其他软件,如Dropbox等,也会在资源管理器中显示覆盖...

编程基础

网络协议(7)--HTTP与HTTPS协议

HTTP 是Hyper Text Transfer Protocol(超文本传输协议)的缩写。HTTP 协议位于 TCP/IP 协议栈的应用层。

编程基础

网络协议(6)--TCP协议

一、TCP 特性尽管 TCP 和 UDP 都是用 IP 协议作为网络层,但 TCP 却提供和 UDP 完全不同的网络服务。TCP 是面向连接的、稳定可靠的字节流服务。TCP 首部的很多字段都是为了实现这 2 大特性而设计的。

编程基础

网络协议(5)--UDP协议

一、什么是 UDP 协议?UDP 是 User Datagram Protocol 的简称,中文名是用户数据报协议,是 OSI 参考模型中的传输层协议,它是一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。

编程基础

网络协议(4)--ICMP协议

互联网控制消息协议(英文:Internet Control Message Protocol,ICMP)是互联网协议族的核心协议之一。定义在 RFC 792 文档中。ICMP 的消息大致可以分为两类:一类是差错报文,即通知出错原因的错误消息(如 traceroute),另一类是查询报文,即用于诊断的查询消息(如 ping)。使用 ICMP 协议的典型应用有 ping 和 traceroute(windows 上叫 tracert)。

编程基础

网络协议(3)--IP协议

IP 协议是 TCP/IP 协议族中最核心的协议。所有的 TCP、UDP、ICMP、IGMP 数据都以 IP 数据报的格式传输。

编程基础
12