我越来越多地参与Windows CE5 +平台上的胖客户端移动开发,并且想知道处理10多个屏幕的应用程序的最佳做法是什么。
从初步调查中有两个选项
1 - 每次需要时为表单实例化一个新实例。 这显然是流程密集型并且滞后于UI
2 - 在项目加载时实例化所有表单,或者在加载表单时将其保存在内存中。 处理器密集程度较低但消耗内存,减少了UI延迟。
如果使用选项2,那么编组表单的最佳方法是什么,以便正确的表单出现在最顶层。
请让我知道你的想法
答案 0 :(得分:3)
我倾向于使用混合的选项。我懒得加载表单按需以保持合理的启动,但缓存经常使用的表单。我也倾向于不使用实际的“表格”。我有一个应用程序的主要表单,然后是对话框/弹出窗口的表单,但是我在UserControls中执行的大多数应用程序实现(以及从UserControls派生的SmartParts。然后在IoC / DI框架中进行管理(特别是OpenNETCF IoC )无论如何,这对我来说大部分创作都有效。
至于什么是最重要的,这实际上取决于你的机制。在我的情况下,框架确保应该是最重要的是(无论是通过StackWorkspace,TabWorkspace还是其他),但是如果你正在使用Forms,只需在你导航到的表单上调用Show就会将它带到前面。如果您更多地关注用户“备份”的内容,那么您需要存储该信息 - 一个简单的框架(如this one,我也rewrote for IoC)往往运作良好
答案 1 :(得分:0)
您应该非常小心地加载/卸载图像或资源。这样的工厂绝对是个好主意。