标签: c++ xml user-interface qt
我正在开发一个灵活的GUI应用程序,它可以有大约12种不同的布局。这些布局都是明确定义的,不会改变。每个布局由多个小部件组成,这些小部件使用位模式与DLL连接。虽然大多数小部件是相同的,但所使用的位模式取决于所呈现的接口类型。
我的直觉是使用继承:定义一个通用的“Panel”并具有不同配置的子类。但是,界面的某些部分是用户定义的,并且规定在XML文件中指定。
整个面板应该用XML定义,还是仅用户配置的部分?
答案 0 :(得分:10)
YAGNI :根据当前要求设计屏幕,您明确指出这些要求不会改变。如果在一年之后需要进行更多自定义,请将其设置为然后,而不是现在。
KISS :如果使用XML导致整体代码较少且比子类化更简单,请使用XML。如果子类化导致代码更少,则使用子类化。经验告诉我子类化更简单。
答案 1 :(得分:1)
我的感觉是,您应该做任何能让您更灵活地改变主意,添加新功能或在将来调整布局的内容。