Indie Hacker日常杂碎

我所有关于独立开发者的编程技术、产品设计和想法,都会在这以文章的形式表示出来,所有文章均已时间顺序排序。

Qt篇: 常问面试题

Qt/C++面试八股文,不需要死记硬背,只需理解。

Qt篇: 如何搭建MVP架构项目

MVP架构(Model-View-Presenter)是一种软件设计模式,常用于用户界面(UI)的开发,该架构核心主要是分离业务逻辑和用户界面。MVP具有高度解耦的性能,广泛应用于桌面应用或需要高测试覆盖率的大型项目中。

Qt篇: if else替代方案 -- 表驱动法

有些人可能会认为if...else挺好的,这样写也简单,又容易看得懂,是这样没错。但对于写应用层软件来说,使用if...else的场景很多,有时候需要大量的if...else语句,这样的代码会导致代码变得冗长且难以阅读,对于后期维护也是比较容易出错的。为此应该需要一个比较优雅的方案替代 -- 表驱动法

Qt篇: 多线程与UI组件的通信方式

对于不了解GUI线程可能都会犯一个错误:学习了多线程会直接在子线程里创建UI组件,从而更新界面UI,这是做界面开发的大忌,会直接引发程序崩溃。

Qt篇: 自定义事件

在Qt框架中虽然提供了非常多的事件对象,但是在项目开发中,开发新功能或者自定义新组件时,自定义事件是至关重要的,能够掌握自定义事件对象本质,能够轻松驾驭各种功能的扩展和新自定义组件开发。

Qt篇: 信号槽的连接方式

了解Qt信号槽连接的内在原理,掌握 connectionType 参数的使用,可以更灵活、安全地管理对象之间的通信,尤其是在复杂的多线程环境下,这对于开发高效、稳定的 Qt 应用程序至关重要。

Qt篇: 多线程信号量

QSemaphore 是 Qt 框架中提供的一个用于多个线程同步和数据存取的信号量类。与互斥锁QMutex一样,QSemaphore 也是一个跨平台通用的同步机制。

Qt篇: 多线程死锁

估计很多人都听过死锁问题,那么多线程为什么会产生死锁现象,是什么原因导致的?我们又该如何避免死锁的发生呢?

Qt篇: 多线程互斥

什么是多线程互斥,造成互斥的原因是什么,它与多线程同步又有什么不同呢?怎么解决多线程互斥问题?

Qt篇: 多线程同步

了解多线程的本质,什么是多线程同步,解决方法是什么?

Qt篇: 多线程如何创建之moveToThread

使用moveToThread()方法可以将一个继承自QObject的对象移动到另一个线程中执行。这种方法适合需要在不同线程中运行复杂的QObject类实例的情况,例如处理I/O操作或其他需要长时间运行的任务。

Qt篇: 多线程如何创建之继承QThread

QThread是Qt的一个跨平台解决多线程方案,简单易学,可以让初学者很快上手。QThread是Qt里封装好的一个类,那么既然是类,那么继承QThread的线程就必须以对象的形式被创建和使用,每一个线程都应该对应一个对象。

Qt篇: 浅谈进程和线程的关系

了解什么是程序、进程和线程。重点了解进程和线程概念,知晓线程与进程的关系,线程和main函数的关系。