GUI的概念 - 集中或分散

时间:2010-04-09 11:07:48

标签: user-interface erlang

几个月以来,我一直在学习Erlang,现在是时候做一些基本的GUI了。

经过一些快速研究后,我看到有一个名为'wxi'的有趣库(基于Haskell的Fudgets),它在GUI上使用了不同的方法。没有中央循环,每个小部件都处理它自己的事件并处理它自己的数据。

你们对此有何看法?它看起来有点像Erlang这样的语言,并且它是一种有趣的方法。

William van Doorn

1 个答案:

答案 0 :(得分:2)

在传统的应用程序中,进程(或线程,如果你想挑剔)拥有UI的状态并通过消息循环处理事件。由于Erlang进程非常轻量级,因此wxi的方法是传统模型的非常合理和自然的扩展。

这种方法对UI和应用程序设计具有重要意义。例如,具有动画,I / O等的复杂下载管理器控件可以捆绑为完全独立的进程(子进程处理其组件UI部分),通过消息传递与父UI交互。由于连接问题或内部错误,这样的控制甚至可能崩溃,作为主管的父控件将指示发生错误并且只是启动控件的新副本。