C# 又称“C Sharp”,是微软发布的一种简单、安全、稳定、通用的面向对象编程语言。C# 是从 C/C++ 衍生出来的,它在继承 C/C++强大功能的同时,抛弃了 C/C++ 的一些复杂特性。C# 还和 Java 非常类似,仅仅在一些细节上有差别。
如今,C# 越来越受到程序员的青睐,本套C#教程将带领您全面、系统地学习 C#。
C#可以做什么?C# 运行在 .NET Framework 上,借助 C# 我们可以开发不同类型的应用程序:
本教程非常适合初学者阅读,可以帮助初次接触 C# 的同学快速掌握 C# 编程。C# 是从 C/C++ 衍生出来的一门编程语言,如果读者对 C/C++ 有一定的了解,那么学习 C# 会非常轻松。
.NET Framework 是一个由微软设计和开发的软件框架,主要用来开发可以在 Windows 平台上运行的应用程序,例如 Web、Windows 和移动端的各种应用程序,框架中提供了包括网络、安全性、内存管理和类型安全在内的各种服务。微软在 2002 年发布了 .NET Framework 的第一个版本(.Net framework 1.0)。
.NET Framework 支持 60 多种编程语言,例如 C#、F#、VB.NET、J#、VC++、JScript.NET、APL、COBOL、Perl、Oberon、ML、Pascal、Eiffel、Smalltalk、Python、Cobra、ADA 等等。
.NET Framework 主要由四个部分构成,如下所示:
CLR 全称为“Common Language Runtime”,它为 .NET 应用程序提供了一个托管的代码执行环境(类似 Java 中的虚拟机),是整个 .NET 框架的核心。实际上 CLR 是驻留在内存里的一段代码,负责程序执行期间的代码管理工作,例如内存管理、线程管理、安全管理、远程管理、即时编译等。下图中展示了 CLR 的组成:
关于上图中所示各个部分的说明,如下所示:
FCL 全称为“Framework Class Library”,它是一个标准库,其中包含了成千上万个类,主要用于构建应用程序。FCL 的核心是 BCL(Base Class Library:基础类库),BCL 提供了 FCL 的基本功能。FCL 的基本组成如下所示:
WinForms 是 Windows Forms 的简称,它是一种 .NET Framework 的智能客户端技术,用来开发可以在我们电脑中运行的应用程序,我们经常使用的记事本就是使用 WinForms 技术开发的。我对此技术发过五篇文章供大家学习,希望对大家有帮助。
ASP.NET 是一个微软设计和开发的 Web 框架,于 2002 年 1 月首次发布,ASP.NET 中完美的集成了 HTML、CSS 和 JavaScript。可以使用 ASP.NET 来开发网站、Web 应用程序和 Web 服务。
ADO.NET 一个是 .Net Framework 的模块,由可用于连接、检索、插入和删除数据的类组成,主要用来开发能够与 SQL Server、Oracle 等数据库进行交互的应用程序。
WPF 全称为“Windows Presentation Foundation”,是微软推出的基于 Windows 的用户界面框架,主要用来设计 Windows 应用程序的用户界面。WPF 以前也叫“Avalon”,集成在 .NET Framework 中,2006 发布的 .NET Framework 3.0 是最早支持 WPF 的。
WCF 全称为“Windows Communication Foundation”,是由微软开发的支持数据通信的应用程序框架,中文翻译为 Windows 通讯开发平台。与 WPF 相同,WCF 最早也是集成在 .NET Framework 3.0 中,WCP、WPF 和 WF 被统称为新一代 Windows 操作系统以及 WinFX(Windows Vista 的托管代码编程模型)的三个重大应用程序开发类库。
WCF 整合了 Windows 通讯中的 .net Remoting、WebService、Socket 机制,并融合了 HTTP 和 FTP 的相关技术,因此尤其适合 Windows 平台上分布式应用的开发。
WF 全称为“Windows Workflow Foundation”,是微软提供的一项技术,其中提供 API、进程内工作流引擎和可重新托管的设计器,用来将长时间运行的进程实现为 .NET 应用程序中的工作流。
LINQ 技术在 2007 年跟随 .NET Framework 3.5 一同发布,其全称为“Language Integrated Query”,是微软的一项技术,新增了一种自然查询的 SQL 语法到 .NET Framework 的编程语言中,当前支持 C# 以及 Visual Basic .NET 语言。
Entity Framework 是一个基于 ORM 的开源框架,可以和使用 .NET 对象的数据库一起使用。它可以减轻程序员在处理数据库方面的工作,是微软推荐使用的处理数据库的技术。
Parallel LINQ 也叫 PLINQ,是对 LINQ 技术的并行实现,PLINQ 将 LINQ 语法的简洁和可靠性与并行编程的强大功能结合在一起,大大提高了使用 LINQ 时的运行速度。除了上述特性和库之外,.NET 中包括一些其他的 API 和模型来改进或者增强 .NET 框架,例如在 .NET 4.5 中添加了基于任务的异步模型等等。
C# 的发音为“C Sharp”,是一门由微软开发并获得了 ECMA(欧洲计算机制造商协会)和 ISO(国际标准组织)批准的现代的、通用的、面向对象的编程语言。
C# 由 Anders Hejlsberg 及其团队在《.Net Framework》的开发过程中开发,属于 .Net Framework 的一部分,可以用来编写 .Net 应用程序。C# 是专为 CLI (公共语言基础结构)设计的,CLI 由可执行代码和运行时环境组成,允许在不同的计算机平台和体系结构上使用各种高级语言。
C# 之所以能称为一门被广泛应用的编程语言,原因有以下几点:
大家可能认为 C# 与传统的高级语言 C、C++ 相似,其实不然,实际上 C# 与 Java 非常相似,具有众多非常强大的编程功能,使得 C# 受到全世界众多程序员的喜爱。
以下是 C# 的一些重要功能的列表:
借助 C# 编程语言,我们可以开发不同类型且安全可靠的应用程序,例如:
自 2002 年跟随 .NET Framework 发布以来,C# 取得了长足的发展,下表中列举了 C# 的版本及发布时间供大家了解:
语言版本 | 发布时间 | .NET Framework版本 | Visual Studio版本 |
---|---|---|---|
C# 1.0 | 2002.1 | .NET Framework 1.0 | Visual Studio .NET 2002 |
C# 1.1\1.2 | 2003.4 | .NET Framework 1.1 | Visual Studio .NET 2003 |
C# 2.0 | 2005.11 | .NET Framework 2.0 | Visual Studio 2005 |
C# 3.0 | 2007.11 | .NET Framework 2.0\3.0\3.5 | Visual Studio 2008 |
C# 4.0 | 2010.4 | .NET Framework 4.0 | Visual Studio 2010 |
C# 5.0 | 2012.8 | .NET Framework 4.5 | Visual Studio 2012\2013 |
C# 6.0 | 2015.7 | .NET Framework 4.6 | Visual Studio 2015 |
C# 7.0 | 2017.3 | .NET Framework 4.6.2 | Visual Studio 2017 |
C# 7.1 | 2017.6 | .NET Framework 4.7 | Visual Studio 2017 v15.3 |
C# 7.2 | 2017.11 | .NET Framework 4.7.1 | Visual Studio 2017 v15.5 |
C# 7.3 | 2018.5 | .NET Framework 4.7.2 | Visual Studio 2017 v15.7 |
C# 8.0 | 2019.10 | .NET Framework 4.8 | Visual Studio 2019 v16.3 |
C# 9.0 | 2020.6 | .NET Framework 5.0 | Visual Studio 2019 v16.7 |
我们来介绍一下 C# 编程所需的工具,前面我们已经提到 C# 是 .Net Framework 的一部分,可以用来编写 .Net 应用程序,在介绍运行 C# 程序所需的工具之前,我们先来了解一下 C# 和 .Net Framework 之间到底是什么关系。
.Net Framework 是一个平台,它提供了一个跨语言的统一编程环境。而 C# 是一种在 .Net Framework 平台上使用的编程语言。目前能在 .Net Framework 平台上使用的开发语言有很多,例如 Visual Basic .NET、Python、J#、Visual C++.NET 等等,但使用最多的还是 C#。
微软为 C# 编程提供以下开发工具:
这两个开发工具都可以从微软的官方网站免费下载。使用这些工具,您可以编写各种类型的 C# 应用,比如命令行程序、网站等等。
在没有开发工具的情况下,您还可以直接使用基本的文本编辑器(如记事本)来编写 C# 源代码文件,然后使用命令行编译器将代码编译为可执行文件,命令行编译器也是 .NET Framework 的一部分。
除了上面介绍的两个开发工具外,还有 Visual C#Express 和 Visual Web Developer Express 同样都可以用来开发 C# 应用。可以将这两个开发工具看作是 Visual Studio 的精简版本,它们与 Visual Studio 具有相同的外观,并且保留了 Visual Studio 的大多数功能,但是微软已经不再提供这两个开发工具的更新,所以不推荐使用。在本教程后续的讲解中,我们将使用了 Visual Studio。
您可以从 Microsoft Visual Studio(https://visualstudio.microsoft.com/zh-hans/)下载并安装 Visual Studio,这里就不过多阐述了。
将C#的基本信息了然于心之后我们来了解一下C#的程序代码结构。
一个 C# 程序主要包括以下几个部分:
下面我们通过一个在命令行窗口打印“Hello World”的示例程序,来具体演示一下 C# 程序的组成,代码如下:
using System;
namespace c.biancheng.net
{
class Program
{
static void Main(string[] args)
{
/*第一个C#程序*/
Console.WriteLine("Hello World!");
Console.ReadKey();
}
}
}
运行上面的代码即可在命令行窗口输出“Hello World!”。
下面我们来看一下上面程序的各个部分。
另外,还有以下几点需要注意:
如果您使用 Visual Studio 来编译和执行 C# 程序,可以按照以下的步骤操作:
启动 Visual Studio;
提示:根据 Visual Studio 版本的不同,新建项目的步骤可能存在差异。
除了可以使用 Visual Studio 来编译 C# 程序外,还可以直接使用命令行来编译 C# 程序,操作步骤如下:
如果您在使用csc命令时提示“csc不是内部或外部命令…”,则说明您需要将 .NET Framework 添加到环境变量中。具体操作步骤如下:
注意:所有打开的窗口都要点击一下“确定”按钮,否则可能添加失败。
今天的内容就到这里吧,您一天看不了这么多,我一天也写不了这么多。
点赞再看,养成习惯,在评论区分享一下自己的心得或刚踩得坑,说不定有帮助呢。