我正在用C++开发用于印刷电路板和原理图(又名EDA CAD)的计算机辅助设计软件包。它使用Lua来处理一些特定的事情,但我想扩展Lua的角色,以便实现大部分的用户界面逻辑。如何设计CAD包装的结构?
我想重新建立的方式,它可以让人们通过编辑的Lua很容易地改变用户界面行为的内部,也可以增加全新的功能。
的问题是,短期暴露某种巨大的API来的Lua代码的,我想不出一个好办法做到这一点。我怀疑一个庞大的API,带有一个我能想到的所有功能的函数可能是一个糟糕的设计。我如何设计一个让用户实现我从未想过的事情的系统?
有没有一本很好的文档或我可以阅读的书,或者是一个人们谈论这类事情的论坛。我一直在寻找并思考好几个月,而我仍然不确定答案是什么。
顺便说一句,该项目被称为LiquidPCB。
非常感谢
雨果
我的问题是关于Lua的问题,关于应用程序的*结构更多。我可以使用Lua,Python或C++。问题的确是:“应用程序和插件之间的界面应该是什么样的?” – Rocketmagnet 2009-02-11 15:30:09