解决方案、项目、程序集、命名空间
来源:互联网 发布:plsql将表导入数据库 编辑:程序博客网 时间:2024/06/01 15:39
解决方案、项目、程序集、命名空间
1、项目(Project),通俗的说,一个项目可以就是你开发的一个软件。在.Net下,一个项目可以表现为多种类型,如控制台应用程序, Windows应用程序,类库(Class Library),Web应用程序,Web Service,Windows控件等等。如果经过编译,从扩展名来看,应用程序都会被编译为.exe文件,而其余的会被编译为.dll文件。既然是.exe文件,就表明它是可以被执行的,表现在程序中,这些应用程序都有一个主程序入口点,即方法Main()。而类库,Windows控件等,则没有这个入口点,所以也不能直接执行,而仅提供一些功能,给其他项目调用。 在Visual Studio.Net中,可以在“File”菜单中,选择“new”一个“Project”,来创建一个新的项目。
2、例如创建控制台应用程序。注意在此时,Visual Studio除了建立了一个控制台项目之外,该项目同时还属于一个解决方案(Solution)。这个解决方案有什么用?如果你只需要开发一个Hello World的项目,解决方案自然毫无用处。但是,一个稍微复杂一点的软件,都需要很多模块来组成,为了体现彼此之间的层次关系,利于程序的复用,往往需要多个项目,每个项目实现不同的功能,最后将这些项目组合起来,就形成了一个完整的解决方案。形象地说,解决方案就是一个容器,在这个容器里,分成好多层,好多格,用来存放不同的项目。一个解决方案与项目是大于等于的关系。建立解决方案后,会建立一个扩展名为.sln的文件。 在解决方案里添加项目,不能再用“new”的方法,而是要在“File”菜单中,选择“Add Project”。添加的项目,可以是新项目,也可以是已经存在的项目。
3、程序集叫Assembly。通俗的角度来说,一个项目也就是一个程序集。从设计的角度来说,也可以看成是一个完整的模块(Module),或者称为是包(Package)。因此,一个程序集也可以体现为一个dll文件,或者exe文件。怎样划分程序集也是大有文章的,不过初学者暂时不用考虑它。
4、命名空间(namespace)是在C++里面就有的概念。引入它,主要是为了避免一个项目中,可能会存在的相同对象名的冲突。这个命名空间的定义,没有特殊的要求。不过基本上来说,为了保证其唯一性,最好是用uri的格式,例如BruceZhang.com。这个命名空间有点像我们姓名中的姓,然后每个对象的名字则是姓名中的名。如果有重复,再国外的命名中,还可以加上middle name。那么名都为勇的,由于姓氏不同也就分开了,或者叫张勇,或者叫赵勇。当然人的姓氏重复者居多,所以我们为命名空间取名时,尽可能的复杂一点。 有许多初学者,常常把一个项目就理解为一个命名空间。其实这两者没有绝对的联系,在项目里我们也可以定义很多不相同的命名空间。但为了用户便于使用,最好在一个项目中,其命名空间最好是一体的层次结构。在Visual Studio里,我们可以在项目中新建一个文件夹,默认情况下,该文件夹下对象的命名空间,应该是“项目的命名空间.文件夹名”。当然,我们也可以在namespace中修改它。
Fish邀请您访问狗刨学习网-Unity3D培训&学习社区
http://unity.gopedu.com/?fromuid=3344
0 0
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间区别
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间
- (转帖)解决方案、项目、程序集、命名空间
- C#入门概念--解决方案、项目、程序集、命名空间
- 12.C#:解决方案、项目、程序集、命名空间区别
- (转)《叩开C#之门》系列之一:解决方案、项目、程序集、命名空间
- 解决方案、项目、程序集、命名空间之间的联系与区别
- java面试题
- nyoj-171 聪明的kk
- 【剑指Offer面试编程题】题目1388:跳台阶--九度OJ
- 53 java.io.IOException: open failed: EACCES (Permission denied)问题解决
- 如何使用service
- 解决方案、项目、程序集、命名空间
- 如何使ubuntu的侧边栏(启动器)自动隐藏
- JDBC连接SQLServer多个实例
- android弹出dialog中监听返回建
- 使用bundle在Activity之间传递数据
- error LNK2038: 检测到“_MSC_VER”的不匹配项: 值“1600”不匹配值“1800”
- 黑马程序员—— Date、Calender、Math.Random对象
- LEETCODE: Permutations II
- Linux安装Adobe Player