在GWT中管理许多小部件
假设我们在GWT应用程序中具有以下小部件/面板结构-在GWT中管理许多小部件,gwt,Gwt,假设我们在GWT应用程序中具有以下小部件/面板结构- DockLayoutPanel左侧的树菜单,用于导航到不同的应用程序 DockLayoutPanel中心的一个面板,不同的内容小部件加载在此面板中(这由导航树菜单控制) 这些内容小部件是包含一个或多个小部件的组合 处理此类应用程序的一种方法是为所有小部件/面板保留单例,这意味着组合将为其所有子小部件保留单例。但我觉得这是对单例的过度使用。另一种方法是在每次需要时构造新的小部件对象,但这一定很昂贵 围绕这个问题的最佳实践是什么?是否有解决这
- DockLayoutPanel左侧的树菜单,用于导航到不同的应用程序
- DockLayoutPanel中心的一个面板,不同的内容小部件加载在此面板中(这由导航树菜单控制)
- 这些内容小部件是包含一个或多个小部件的组合
总而言之,如果你没有尝试过,不要认为事情会很慢,也不要先发制人地优化你的代码。我们在ActiveGrade上遵循了类似的路径,现在按需创建大多数小部件。效果很好。如果我要优化交互速度,我的下一个猜测是按需创建小部件-但我仍然避免使用siNgleton。太复杂了。我完全同意。而且——即使在需要优化的情况下——单件通常不是答案。相反,在其他对象的字段、列表、地图或其他任何地方保留对需要重复使用的小部件的引用。然后确保构建一个非常干净的机制,在重复使用小部件之前重新初始化它们!我们遵循了与ActiveGrade的路径类似,现在可以按需创建大多数小部件。效果很好。如果我要优化交互速度,我的下一个猜测是按需创建小部件-但我仍然会避免单件。太复杂了。我完全同意。而且,即使在需要优化的情况下,单件通常也不是答案。相反,请保持引用需要在其他对象的字段、列表、地图或其他任何地方重复使用的小部件。然后确保在重复使用它们之前构建一个非常干净的机制来重新初始化小部件!