请有实际开发经验的谈谈.dll文件的使用

sangengyi 2004-06-11 08:57:21
什麽情况下需要.dll文件?
需要把那些类封装到.dll文件?
.dll是否可以提高软件的性能?
WinForm + ADO.NET
...全文
327 13 打赏 收藏 举报
写回复
13 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
BlueLevin 2004-06-14
反正只要是能重复用到的都可以做可DLL。如数据库链接。如果系统业务太多,太复杂。可以把业务分成一块块的。每个做一个DLL。把代码分开主要是方便维护,开发起来也方便。我们不需要在大堆代码中找几个片段。而且在一大片代码中相互调用函数,可能很难看。
  • 打赏
  • 举报
回复
gccr 2004-06-13
TO: beick(水**)
你这个名起的不好.回复时都不能引用.哈哈.
  • 打赏
  • 举报
回复
chenyu001 2004-06-13
form 可以写成DLL
  • 打赏
  • 举报
回复
peterli1976 2004-06-11
我说一种,当你封装成DLL后,可以用反射动态加载DLL,这样DLL就可以和系统对立开来,便于维护(只需要重新编写DLL,而不是Project).
  • 打赏
  • 举报
回复
jedliu 2004-06-11
我先说一种:当你建的project要引用另一个project里的.cs文件。则需要把那个project里需要的.cs文件全部压到.dll文件里。
在Visual Studio .NET 2003自带的工具中有一个Visual Studio .NET 2003 命令提示,在这里面你可以在你需要的.cs文件目录下敲入:csc /target:library /out:dllname(dll文件名).dll form1.cs form2.cs......(都是.cs文件)。然后就可导入引用。
  • 打赏
  • 举报
回复
whizstorm 2004-06-11
学习!!
  • 打赏
  • 举报
回复
sangengyi 2004-06-11
带Form的类也可以封装到.dll里吧?
如何判断那些类适合写成.dll,那些类不用写成.dll?
  • 打赏
  • 举报
回复
yemao20 2004-06-11
我个人感觉对数据库操作的可以封装成DLL.这样方便操作.少写代码.加快开发速度.
  • 打赏
  • 举报
回复
beick 2004-06-11
to: lemong(風之影)
要怎么才能够得到你那么多的星啊?
  • 打赏
  • 举报
回复
lemong 2004-06-11
除了带form的,都可以作成dll,关键看有没有必要
  • 打赏
  • 举报
回复
beick 2004-06-11
动态链接库的本质是实现功能级别的复用:
主要的好处是:
1. 节省硬盘的空间: 假如20个程序都需要执行访问文件的操作,基于“代码级别复用”的思维方式的"静态连接"可能会使得你的硬盘的使用空间集聚的增加
2. 方便于开发者对软件进行升级: 当你程序需要升级的时候,只需要替换相应的函数所在的动态链接库就可以了。另外一个例子就是.Net中的“国际化软件开发”,把你的资源放在不同的DLL中,就可以实现软件的不同的语言的版本,实际中也是这样做的。如果你玩过"Champion Football Manager"的话,就可以看到在他的安装的文件夹下面有一个Language文件夹,里面有不同语言的DLL
3.节省宝贵的内存的资源: 当把几个程序共同的功能提取出来放在一个DLL中,当操作系统运行其中一个程序时候,就会把这个DLL调用到内存,这时候假如另外一个程序也运行了,操作系统就不会重复的调同一个DLL了;最后,当所有相关的程序都显示的声明不再使用这个功能的时候,系统就会释放掉这块内存。这样的思路就是COM的核心的设计思想。

想要深入的研究DLL,请看<<COM本质论>>
  • 打赏
  • 举报
回复
beick 2004-06-11
1.自定义的用户的控件(体现了软件工程的“代码复用”的原则)
2.COM编程,DLL是COM对象的物理表现形式。
3.软件项目合作中,当你想让别人使用你的代码中的功能,又不想让别人看你的实现,就写一个DLL给他使用完事。
  • 打赏
  • 举报
回复
活力华华哥 2004-06-11
可以把操作数据库的代码,一般的业务代码封装在DLL文件中,供表现层调用
  • 打赏
  • 举报
回复
相关推荐
发帖
C#

10.8w+

社区成员

.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
帖子事件
创建了帖子
2004-06-11 08:57
社区公告

让您成为最强悍的C#开发者