<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Dear ImGui on Text Matrix</title><link>https://txtmix.com/tags/dear-imgui/</link><description>Recent content in Dear ImGui on Text Matrix</description><generator>Hugo</generator><language>zh-cn</language><lastBuildDate>Tue, 21 Jul 2026 20:06:14 +0800</lastBuildDate><atom:link href="https://txtmix.com/tags/dear-imgui/index.xml" rel="self" type="application/rss+xml"/><item><title>Dear ImGui 架构拆解：为什么 74k 星的 C++ GUI 库选择了即时模式</title><link>https://txtmix.com/posts/tech/ocornut-imgui-immediate-mode-gui-architecture/</link><pubDate>Mon, 13 Jul 2026 03:03:14 +0800</pubDate><guid>https://txtmix.com/posts/tech/ocornut-imgui-immediate-mode-gui-architecture/</guid><description>&lt;h1 id="dear-imgui-架构拆解为什么-74k-星的-c-gui-库选择了即时模式">Dear ImGui 架构拆解：为什么 74k 星的 C++ GUI 库选择了即时模式&lt;/h1>
&lt;h2 id="核心判断">核心判断&lt;/h2>
&lt;p>Dear ImGui 解决的不是&amp;quot;画一个 GUI 控件&amp;quot;的问题，而是&amp;quot;程序员在调试工具、可视化脚本、引擎编辑器这种场景里，如何避免维护一个 UI 状态与业务状态的双重数据源&amp;quot;的问题。它的做法是把整套渲染状态压缩成一组每帧调用的命令，&lt;strong>不存 UI 状态对象，只存绘图原语&lt;/strong>，让源代码本身成为 UI 的 source of truth。从这个角度看它的架构选择，能立刻明白它和 Qt、Electron、Flutter 之间的边界。&lt;/p></description></item></channel></rss>