2

我一直在为一个非常大的项目寻找一些框架,比如 200 多页和 50 多张表格等,以便在 Silverlight 中开发。是否有开发如此大型应用程序的最佳实践或框架建议?希望它将是构成最终应用程序的多种技术,并有兴趣了解您对此的看法。我的一位朋友向我指出 Caliburn 是最好的框架之一。有没有人用它开发过这么大的应用程序?

4

2 回答 2

2

我们在所有项目中都使用 Caliburn(但这具有误导性,因为我们是开发它的人)。:-)

表的数量没有影响,因为 Caliburn 与数据访问无关。“页数”也没有必要产生影响。使用术语“页面”让我认为您心中有一个导航(浏览器样式)UI 隐喻。如果是这样,您在使用该方法时仍然可以从 Calbiurn 中受益,但这不是自然的“Caliburn 方式”。

总而言之,应用程序的大小和复杂性并不重要。为了更好地了解 Caliburn 为何有用,我建议阅读 Rob Eisenberg 的系列文章,从这里开始

请注意,我们鼓励新项目使用 Caliburn Micro,而不是原来的 Caliburn。另一个可以提供帮助的资源可能是 Rob来自 MIX 10 的视频,我们讨论了如何推出自己的框架(独立于 Caliburn)。

于 2010-10-11T18:15:55.190 回答
1

我们在 Caliburn 上构建了一个稍微小一点的项目(大约 30 页)。正如我所看到的,更多页面的唯一并发症是内存消耗,因为 caliburn 在其开箱即用的行为中初始化所有页面(屏幕/视图模型)并将它们保存在内存中。我们创建了处理这种情况的自定义方式 - 一种“惰性屏幕导体”,仅在请求其页面时创建视图模型,并且还有一种关闭它的方法(从而让垃圾收集器处理它)。因此,现在应用程序中是否有 30 个或 300 个页面都无关紧要。它会占用打开页面所需的内存(假设用户不需要一次打开所有 300 个页面)。

顺便说一句:我计划迁移到 Caliburn.Micro,所以我必须将它迁移到这个框架。另一方面,Caliburn.Micro 更简洁(而且我对它的理解也比为旧 Caiburn 创建解决方案时更好)所以我希望重构解决方案是一个好主意。

于 2010-10-19T18:55:59.467 回答