为什么几乎所有的GUI界面都采用事件驱动编程模型?
Posted feng9exe
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了为什么几乎所有的GUI界面都采用事件驱动编程模型?相关的知识,希望对你有一定的参考价值。
为了解耦合,使显示与逻辑分离。
我觉得是因为一般GUI的用户输入频率比较低,如果每个部分不停做轮询去获取用户输入,浪费时间
又可能比较难处理。而事件处理则是由中央的系统把输入事件派送给需要的部分。
桌面上,最广为人知的消息循环恐怕就是Windows了,WinMain 方法都是一个死循环,不断的读取并处理Windows消息,大家都玩过你懂的。(派发给窗体)
个人理解是 UI 框架面临的核心问题是 UI 更新流畅度和对输入响应的速度。前者是 UI 更新的帧率和 每帧的 timing (尤其是 UI 动画)决定的, 后者是由从用户输入到完成 UI 更新的延迟决定的。这要求 UI 框架对应用的运行拥有最大限度的控制权,以准确的把握每个帧的渲染时机。
作者:安江泽
链接:https://www.zhihu.com/question/26805116/answer/146517742
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
以上是关于为什么几乎所有的GUI界面都采用事件驱动编程模型?的主要内容,如果未能解决你的问题,请参考以下文章