# C# 环境
在这一章中,我们将讨论创建 C# 编程所需的工具。我们已经提到 C# 是 .Net 框架的一部分,且用于编写 .Net 应用程序。因此,在讨论运行 C# 程序的可用工具之前,让我们先了解一下 C# 与 .Net 框架之间的关系。
## .Net 框架(.Net Framework)
.Net 框架是一个创新的平台,能帮您编写出下面类型的应用程序:
* Windows 应用程序
* Web 应用程序
* Web 服务
.Net 框架应用程序是多平台的应用程序。框架的设计方式使它适用于下列各种语言:C#、C++、Visual Basic、Jscript、COBOL 等等。所有这些语言可以访问框架,彼此之间也可以互相交互。
.Net 框架由一个巨大的代码库组成,用于 C# 等客户端语言。下面列出一些 .Net 框架的组件:
* 公共语言运行库(Common Language Runtime - CLR)
* .Net 框架类库(.Net Framework Class Library)
* 公共语言规范(Common Language Specification)
* 通用类型系统(Common Type System)
* 元数据(Metadata)和组件(Assemblies)
* Windows 窗体(Windows Forms)
* ASP.Net 和 ASP.Net AJAX
* ADO.Net
* Windows 工作流基础(Windows Workflow Foundation - WF)
* Windows 显示基础(Windows Presentation Foundation)
* Windows 通信基础(Windows Communication Foundation - WCF)
* LINQ
如需了解每个组件的详细信息,请参阅微软(Microsoft)的文档。
## C# 的集成开发环境(Integrated Development Environment - IDE)
微软(Microsoft)提供了下列用于 C# 编程的开发工具:
* Visual Studio 2010 (VS)
* Visual C# 2010 Express (VCE)
* Visual Web Developer
后面两个是免费使用的,可从微软官方网址下载。使用这些工具,您可以编写各种 C# 程序,从简单的命令行应用程序到更复杂的应用程序。您也可以使用基本的文本编辑器(比如 Notepad)编写 C# 源代码文件,并使用命令行编译器(.NET 框架的一部分)编译代码为组件。
Visual C# Express 和 Visual Web Developer Express 版本是 Visual Studio 的定制版本,且具有相同的外观和感观。它们保留 Visual Studio 的大部分功能。在本教程中,我们使用的是 Visual C# 2010 Express。
您可以从 [Microsoft Visual Studio](//www.microsoft.com/visualstudio/eng/downloads) 上进行下载。它会自动安装在您的机器上。请注意,您需要一个可用的网络连接来完成速成版的安装。
## 在 Linux 或 Mac OS 上编写 C# 程序
虽然 .NET 框架是运行在 Windows 操作系统上,但是也有一些运行于其它操作系统上的版本可供选择。**Mono** 是 .NET 框架的一个开源版本,它包含了一个 C# 编译器,且可运行于多种操作系统上,比如各种版本的 Linux 和 Mac OS。如需了解更多详情,请访问 [Go Mono](//www.go-mono.com/mono-downloads/download.html)。
Mono 的目的不仅仅是跨平台地运行微软 .NET 应用程序,而且也为 Linux 开发者提供了更好的开发工具。Mono 可运行在多种操作系统上,包括 Android、BSD、iOS、Linux、OS X、Windows、Solaris 和 UNIX。
- C# 基础
- C# 简介
- C# 环境
- C# 程序结构
- C# 基本语法
- C# 数据类型
- C# 类型转换
- C# 变量
- C# 常量
- C# 运算符
- C# 判断
- C# 循环
- C# 封装
- C# 方法
- C# 可空类型(Nullable)
- C# 数组(Array)
- C# 字符串(String)
- C# 结构(Struct)
- C# 枚举(Enum)
- C# 类(Class)
- C# 继承
- C# 多态性
- C# 运算符重载
- C# 接口(Interface)
- C# 命名空间(Namespace)
- C# 预处理器指令
- C# 正则表达式
- C# 异常处理
- C# 文件的输入与输出
- C# 高级
- C# 特性(Attribute)
- C# 反射(Reflection)
- C# 属性(Property)
- C# 索引器(Indexer)
- C# 委托(Delegate)
- C# 事件(Event)
- C# 集合(Collection)
- C# 泛型(Generic)
- C# 匿名方法
- C# 不安全代码
- C# 多线程
- ASP.NET 简介
- Web Pages 教程
- ASP.NET Web Pages - 教程
- ASP.NET Web Pages - 添加 Razor 代码
- ASP.NET Web Pages - 页面布局
- ASP.NET Web Pages - 文件夹
- ASP.NET Web Pages - 全局页面
- ASP.NET Web Pages - HTML 表单
- ASP.NET Web Pages - 对象
- ASP.NET Web Pages - 文件
- ASP.NET Web Pages - 帮助器
- ASP.NET Web Pages - WebGrid 帮助器
- ASP.NET Web Pages - Chart 帮助器
- ASP.NET Web Pages - WebMail 帮助器
- ASP.NET Web Pages - PHP
- ASP.NET Web Pages - 发布网站
- Razor 教程
- ASP.NET Razor - 标记
- ASP.NET Razor - C# 和 VB 代码语法
- ASP.NET Razor - C# 变量
- ASP.NET Razor - C# 循环和数组
- ASP.NET Razor - C# 逻辑条件
- ASP.NET Razor - VB 变量
- ASP.NET Razor - VB 循环和数组
- ASP.NET Razor - VB 逻辑条件
- MVC 教程
- ASP.NET MVC 教程
- ASP.NET MVC - Internet 应用程序
- ASP.NET MVC - 应用程序文件夹
- ASP.NET MVC - 样式和布局
- ASP.NET MVC - 控制器
- ASP.NET MVC - 视图
- ASP.NET MVC - SQL 数据库
- ASP.NET MVC - 模型
- ASP.NET MVC - 安全
- ASP.NET MVC - HTML 帮助器
- ASP.NET MVC - 发布网站
- Web Forms 教程
- ASP.NET Web Forms - 教程
- ASP.NET Web Forms - HTML 页面
- ASP.NET Web Forms - 服务器控件
- ASP.NET Web Forms - 事件
- ASP.NET Web Forms - HTML 表单
- ASP.NET Web Forms - 维持 ViewState
- ASP.NET Web Forms - TextBox 控件
- ASP.NET Web Forms - Button 控件
- ASP.NET Web Forms - 数据绑定
- ASP.NET Web Forms - ArrayList 对象
- ASP.NET Web Forms - Hashtable 对象
- ASP.NET Web Forms - SortedList 对象
- ASP.NET Web Forms - XML 文件
- ASP.NET Web Forms - Repeater 控件
- ASP.NET Web Forms - DataList 控件
- ASP.NET Web Forms - 数据库连接
- ASP.NET Web Forms - 母版页
- ASP.NET Web Forms - 导航
- Web Pages 参考手册
- ASP.NET Web Pages - 类
- ASP.NET Web Pages - WebSecurity 对象
- ASP.NET Web Pages - Database 对象
- ASP.NET Web Pages - WebMail 对象
- ASP.NET Web Pages - 更多帮助器
- MVC - 参考手册
- Web Forms 参考手册
- ASP.NET Web Forms - HTML 服务器控件
- ASP.NET Web Forms - Web 服务器控件
- ASP.NET Web Forms - Validation 服务器控件
- 免责声明