剖析Hello、world程序
认识class和namespace
类(class):是构成程序的主题
名称空间(namespace):以树形结构组织类(和其他类型)
例如Button类
namespace Helloword
{
class program
{
static void Main {string[] args}
{
Console.Writeline["Hello world!"];
///System.console.Writeline[“Hello world!”];
}
}
}
使用namespace调用命名空间中的class
缺失调用库是,可使用“鼠标”点碰触class,点击弹出namespace,或者可使用“ctrl”+“.”达到同样效果
using System;
不同namespace中的class可能重名,不可全部导入namespace,会存在namespace冲突;
当使用class冲突时,
- 必须完全限定使用范围
- 使用名称空间/类型别名来消除类型的歧义 ```csharp using ERPUtils = MyCompany.ERP.Utilities; using BCUtils = MyCompany.Barcode.Utilities;
public void MyMethod() { var a = ERPUtils.Method(); var b = BCUtils.Method(); } ```
- 在using中直接重新定义
类库(Dynamic Link Library)的引用
类库引用是使用namespace的物理基础
不同的技术类型的项目会默认引用不同的类库
DLL引用(黑盒引用)
黑盒引用若发生,无法修改,只能由创建者修改
尽量使用弱依赖构建程序
- 右击rendence点击添加DLL(系统本身集成DLL、第三方书写DLL)
存在一些DLL需要一些依赖DLL才可以使用
NuGet: 添加可使用Manager NuGet Packages一次性添加所有底层DLL
项目引用(白盒引用)
一个项目可以被多个solution调用
- 右击solution,add,Existing Project,找到项目并添加;右击Rendence,solution,添加项目DLL
依赖关系
类(或者对象)之间的耦合关系
优秀1的程序追求“高内聚低耦合”
排除错误
仔细阅读编译器的报错
MSDN文档与Edge结合