📗 IPC上位机开发 · 全流程指南
📚
30 章 · 从入门到实战
1
IPC基础概念
管道、消息队列、共享内存、信号量、Socket · 进程通信必要性
2
开发环境搭建
Win/Linux C++/Python · CMake & Makefile · VS Code & IDE
3
管道通信 (Pipe)
匿名/命名管道 · 父子进程实战 · 读写阻塞问题
4
消息队列 (Message Queue)
System V / POSIX · 发送接收 · 优先级控制
5
共享内存 (Shared Memory)
shmget/shmat/shmdt · 同步问题初探
6
信号量 (Semaphore)
二元/计数信号量 · PV操作 · 互斥与同步
7
Socket通信基础
TCP/UDP · socket/bind/listen · C/S模型
8
Socket实战
多线程服务器 · select/poll/epoll · 非阻塞IO
9
序列化与反序列化
JSON/Protobuf/MessagePack · 粘包 · 自定义协议
10
上位机UI框架选型
Qt · C# WinForms · PyQt · Electron 对比
11
Qt基础
Qt Creator · 信号与槽 · QWidget/QPushButton
12
Qt网络编程
QTcpSocket/QUdpSocket · 心跳包 · 重连机制
13
Qt多线程
QThread · moveToThread · 互斥锁 · 线程安全
14
数据可视化
Qt Charts / QCustomPlot · 实时曲线 · 仪表盘
15
日志系统设计
spdlog/log4cpp · 分级 · 滚动日志 · 远程上报
16
配置文件管理
JSON/YAML/INI · 热加载 · 多环境切换
17
数据库集成
SQLite/MySQL · ORM (Qt SQL/SQLAlchemy) · 持久化
18
通信协议栈设计
帧头帧尾 · CRC32 · 超时重传 · 滑动窗口
19
设备管理模块
设备发现(UDP广播) · 注册心跳 · 在线状态
20
命令下发与响应
指令队列 · 异步回调 · 超时 · 错误码定义
21
实时数据采集
高精度定时器 · 环形缓冲区 · 丢帧检测与补传
22
告警与事件系统
告警级别 · 触发条件 · 弹窗/声音/邮件推送
23
插件化架构
dlopen/LoadLibrary · 插件接口 · 热插拔
24
单元测试与集成测试
Google Test/Catch2 · Mock · CI/CD集成
25
性能优化
内存池 · 对象池 · 零拷贝 · 读写锁/无锁队列
26
安全性
AES/RSA加密 · 身份认证 · 防重放 · TLS
27
跨平台编译
Win/macOS/Linux · 条件编译 · 平台抽象层
28
打包与部署
Inno Setup/NSIS · Docker · 自动更新
29
项目实战一
共享内存工业采集上位机 · UI/日志/告警
30
项目实战二
Socket远程设备监控 · 多客户端 · 可视化 · 报表