2017-10-10 96 views
2

将所有代码合并到一个dll文件中更好吗或者为每个名称空间创建单独的项目更好?我认为它不会以任何方式损害代码的可读性,因为代码在名称空间中是分开的。组织图书馆的最佳方式是什么

我的问题是:

如何库的危害表现的大小?

+1

大量项目会导致一些开销,但在性能方面可以忽略不计。它虽然会导致认知开销,并且潜在问题像循环引用的更多机会。 – stuartd

+1

[大装配和性能](https://stackoverflow.com/q/337144/1997232)。 – Sinatr

+0

谢谢@Sinatr,这就是我一直在寻找的! – ZuLeweiner

回答

1

这取决于它,但通常它会影响您的应用程序在初始负载。在你有依赖注入的情况下,由于依赖注入工具需要做一些工作来弄清楚,DLL加载将花费更长的时间。

关于应用程序直接引用其他项目或组件的显式依赖关系,性能会在应用程序负载上受到影响,但应该不会因其存在而影响性能。所有这些当然不会考虑这些DLL,无论他们做什么工作,它们的大小也会增加加载时间。

也有可能您的应用程序有插件,这些插件在加载时会降低性能。但是,如果发生这种情况取决于您的申请。

+0

因此,为每个主题/命名空间创建多个DLL,然后让用户将它们分别添加为引用会更好吗? – ZuLeweiner

+0

这是一个难以回答的问题,因为它涉及到您的应用程序的个别需求。在应用程序很小并执行特定任务的情况下,只有一个exe就足够了。应用程序越大,将它分离为不同的组件和库的意义越大。特别是您想要在多个地方重新使用代码的情况。考虑到它为整个项目带来的维护好处,加载DLL的开销非常小,特别是在大型应用程序中 – DiskJunky

相关问题