黑马程序员——程序集和命名空间


---------------------- ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

                     


1.程序集概念:

程序集最直观的理解就是程序模块的集合,在IDE环境中对应解决方案中的工程项。

                                      

“CSharp基础”解决方案中只有一个控制台工程项目“First”,这个工程项目就对应一个程序集,而工程项目被编译以后,会得到对应的程序集文件(主要有.exe和.dll文件格式),程序集文件在调试状态下位于工程项目的bin文件夹下的Debug文件夹中。在解决方案资源管理器面板中单击 (显示所有文件)图标,此刻在当前工程项目中多出了两个文件夹,分别是bin和obj,这两个文件夹默认情况下是隐藏起来的。

① bin目录:用来保存项目生成的程序集文件,它有Debug和Release两个版本,分别对应的文件夹为bin/Debug和bin/Release,分别对应调试和发布两种程序集生成状态,默认选中调试状态对应的文件夹bin/Debug,可以通过:项目属性—>生成—>输出路径来修改;

② obj目录:用来保存每个模块的编译结果,在.NET中,编译是分模块进行的,编译整个完成后会合并为一个.dll或.exe保存到bin目录下。因为每次编译时默认都是采用增量编译,即只重新编译改变了的模块。obj保存每个模块的编译结果,用来加快编译速度。

在解决方案资源管理器中右键工程项目“First”,选择【生成】选项,或直接按快捷键“F6”,此时便把当前的工程项目(或说成是程序集)编译为程序集文件“First.exe”,伴随这个程序集文件生成的另外一个文件为“First.pdb”,这两个文件同时位于bin/Debug中,因为当前是调试状态,如果是发布状态,则两文件将位于bin/Release中。

                     

对于生成的程序集文件(.exe或.dll格式),如这里的“First.exe”程序集文件,当前工程项目的所有功能及一切元素都集成在此程序集文件中,此文件可被拷贝到其它任何地方独立运行(因.exe为可执行文件),同时也可被其它的工程项目(程序集)引用;“First.pdb”文件存储调试状态下代码中的断点等调试信息。Debug模式下生成的程序集为调试版本,未经优化,而Release模式下不包含调试信息,并对代码进行了优化。

总结:程序集就是解决方案中的工程项目,就是程序模块的集合,把此程序集编译后会得到对应的程序集文件,此程序集文件位于bin文件夹下的Debug或Release文件夹中;程序集文件格式一般为.exe和.dll两种,.exe文件可独立运行,同时也能被其它工程项目引用,而.dll格式程序集不能单独运行,只能被其它的工程项目引用,如当我们创建了一个工程项目,即一个程序集,然后在此工程项目中编写代码,加入许多的通用功能模块后,编译整个程序集便得到程序集文件,可以把此程序集文件共享或出售给别人,别人拿到这个程序集文件后,可以引用这个程序集,从而使用此程序集中的功能,对于使用者来说,只需要了解这些功能接口即可,而无须关心程序集中的功能是如何实现的,也看不见具体的功能实现代码。


2.命名空间:

       在CSharp语言中以命名空间的形式逻辑组合代码,只要引用了对应的命名空间就行,而代码文件具体的物理位置及文件名可以随意更改,只要命名空间不变就没有任何影响。

       命名空间是定义在程序集中的,要成功引用命名空间,必须先引用包含该命名空间的程序集,否则,命名空间将不能使用。一个程序集可包含多个命名空间,同一个命名空间可位于不同代码文件中,甚至是不同的程序集中。命名空间的名称默认情况下和包含它的程序集名称同名,但是同名不是必须的。



----------------------ASP.Net+Android+IOS开发.Net培训、期待与您交流! ----------------------

详细请查看:http://edu.csdn.net





  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值