我正在开发一个实用程序,用于测试我目前正在处理的项目。该实用程序将做的是允许用户提供各种输入,它将发出请求并提供响应作为输出。
然而,在这一点上,确切的格式(需要哪个输入以及哪个是可选的)尚未充实。另外,Swing中的编码有点重复,因为总体工作很简单,尽管这应该是最安全的路径,因为我或多或少完全控制并且可以根据需要调整每个组件。我正在考虑使用XML格式的配置文件来描述GUI(至少是其中的一部分),然后对事件处理部分进行编码(除了验证等)。 GUI本身不应该太复杂。对于每种类型的请求,都有一个请求选项卡,每个选项卡中都有各种输入。
似乎有很多关于此的问题,但我不是要求第三方库来做这件事。我希望自己这样做,因为我认为它不会过于复杂(希望如此)。我使用它的主要考虑因素是可重用性(稍后,对于其他项目)和简化GUI工作。我的问题是:我还有其他优点/缺点吗? (未知)时间是否值得这样做?
我之前在VB.NET和Flex3中构建了GUI。
答案 0 :(得分:1)
XML就是2000年。它是代码,把它放在真正的源文件中。如果它真的如此简单以至于它可以是XML,那么您所做的就是删除XML处理步骤并使用更清晰的语法。如果它比您最初预期的要复杂一点,那么您可以掌握自己喜欢的编程语言的全部功能。
答案 1 :(得分:1)
根据我的经验,如果您的布局非常简单,那么FormLayout中的非可视化构建器就可以实现真正简洁的代码,而且重复次数最少。
答案 2 :(得分:1)
如果必须指定每个控件的精确位置,您可以查看声明性摆动辅助工具包,该工具包可以最小化样板并简化布局。 Groovy和JavaFX一样支持这一点,它们都是Java的简单库扩展(给予或接受)。
如果表单以模式布局,则使用XML或YAML格式的定义文件将起作用。我已经做到了,甚至在该文件中设置了数据绑定,这样你甚至不必处理监听器或初始值......
如果你确定你想要XML,我会认真考虑YAML,它真的很接近但不是:
<outer>
<inner a=1> abc </inner>
</outer>
我认为它更像是:
outer
inner a=1
abc
(我可能有点不对,但我认为这很接近。无论如何,你永远不应该强迫任何人输入XML - 如果你设置了XML,提供一个GUI来编辑它!)