目前,我有两个彼此分开的项目。第一个是VB.NET桌面应用程序,它已经很大了,可能有点臃肿。另一个是较旧的ASP.NET项目。我的任务是将ASP.NET项目的功能集成到桌面应用程序中。我还没有说明应该怎么做。我们还在计划/谈论它。但该团队最担心的问题之一是桌面应用程序是否会因添加一个非常大的新功能而受到性能影响。我倾向于认为.exe只会变得更大一些。但加载时间等不应该变长?
我认为它将被实现的方式是作为一个单独的窗口,它在功能上类似于Web应用程序。按下主菜单栏上的按钮即可访问此窗口。
我知道这里没有太多细节,但我是否应该通过添加一个大的新功能来预期应用程序的其余部分会对性能产生影响?
答案 0 :(得分:0)
通过良好的设计正确完成工作应该是您最初的关注点而不是性能。
我甚至会将两个应用程序分成更多层。如果你有模型,那么在你的两个项目中都很常见的业务对象会使它们成为新的类库,那么你可以拥有更多的抽象,而不必在项目中包含所有内容。
处理两个项目的抽象和分层。然后你可以担心性能。
答案 1 :(得分:0)
我根本不会期望性能受到打击 - 如果有的话,可能是预编译器的额外时间或从磁盘加载程序集,但这是最小的 - 但是一旦加载了东西在内存中,您的应用程序的其余部分不应因新功能而对性能产生任何影响。唯一会减慢您的应用程序的是让它做更多,如果您的用户没有访问新功能,并且应用程序在后台没有使用它们中的任何一个,那么用户的表现和经验应该是不变的。
答案 2 :(得分:0)
当您使用它们内部的方法时,编译EXE和DLL文件,而不是在它们加载到内存时。因此,如果您将新内容放入DLL中,您将会遇到加载和编译新DLL所需的小时间延迟,但如果您不在特定情况下使用这些方法,则不会受到任何处罚。使用。 (如果在特定的使用情况下没有使用DLL,则根本不会将DLL加载到内存中。)
我希望你实际上看不出任何区别。 (如果设计很好。)它根本不应该伤到你。