- C# 从入门到项目实践(超值版)
- 聚慕课教育研发中心
- 187字
- 2021-03-24 02:36:06
第1章
步入C#编程世界——Hello C#
学习指引
C#是一个简单的、现代的、通用的和面向对象的编程语言,它是由微软公司开发的运行于.NET Framework之上的高级程序设计语言。C#在继承C和C++强大功能的同时,去掉了一些复杂特性。本章将详细介绍C#语言的发展历史,并且通过图文并茂的形式介绍安装与卸载Visual Studio 2017开发环境的全过程。
重点导读
- 熟悉C#语言。
- 熟悉.NET Framework。
- 熟悉C#程序的开发工具。
- 掌握编写C#程序。
- 掌握代码的输入与输出。
1.1 认识C#语言
C#读作C Sharp,是微软公司设计的一种编程语言,是在C和C++的基础上开发出来的一种简单、面向对象和类型安全的编程语言,并且能够与.NET Framework完美结合。
1.1.1 C#的发展史
C#最初有个酷炫的名字,叫做COOL。微软从1998年12月开始了COOL项目,直到2000年2月,COOL被正式更名为C#,主要是由安德斯·海尔斯伯格(Anders Hejlsberg)主持开发。C#是第一个面向组件的编程语言,其源码首先会编译成MSIL(Microsoft Intermediate Language,微软中间语言)再运行。
1. C# 1.0是纯粹面向对象的
2003年5月,微软推出了Visual Studio .NET 2003,同时也发布了C# 1.0的改进版本。这一时期的C#提出了面向对象的编程概念。C++并非纯粹面向对象,为了和C兼容以及提供更高的执行效率,该版本保留了很多模块化的东西。
2. C# 2.0提出泛型编程的新概念
2005年11月,微软推出了Visual Studio 2005,对应的是C# 2.0,该版本提出了泛型编程的新概念。泛型思想已经是一种很成熟的编程思想,但是依然没有哪一种主流的开发语言,能够支持完备的泛型编程。这主要是因为泛型思想与面向对象有部分冲突,同时由于在编译期间对类型参数的完全检测很难做到,很多问题会被遗留到运行时。C# 2.0独出心裁地对泛型类型参数提出了约束的新概念,并以优雅的语法体现在语言之中。有了约束,结合编译器强大的类型推断能力,可以在编译时发现几乎所有“危险”的泛型应用。
3. C# 3.0增加了语言集成查询技术
C# 3.0版和Visual Studio 2008一起发布于2007年下半年,但完整的语言功能是在C# 3.5版中发布的。该版本的新特性包括自动属性、推断类型、匿名类、扩展方法、对象初始化器、集合初始化器、Lambda表达式和LINQ。
LINQ(Language Integrated Query,语言集成查询)是一组用于C#和Visual Basic语言的扩展。它允许编写C#或者Visual Basic代码以操作内存数据的方式,查询数据库。该版本标示着C#发展过程中的重大改变,C#成为真正强大的编程语言。
4. C# 4.0增加了动态语言的特性
2010年4月发布了C# 4.0,运行于Visual Studio 2010。该版本延续了不断提高易用性的趋势,大大简化了许多常见任务,包括泛型类型、传统的互操作以及处理动态对象模型。C# 4.0的动态语言特性,在JavaScript和Python中都可以看到它的影子。从另一个角度来说,这些特性也都是为了提高程序员的工作效率。
5. C# 5.0的新增特性
2012年8月,C# 5.0随着Visual Studio 2012一起正式发布。它作为第5个C#的重要版本,通过新增的async和await关键字,引入了一种新的基于任务的异步编程模型。在这种方式下,可以通过类似同步方式编写异步代码,极大地简化了异步编程模型。
6. C# 6.0对语法进行改进
2015年7月,C# 6.0在Visual Studio 2015中引入。该版本更多地关注了语法的改进,而不是增加新的功能。这些新的语法将有助于用户更好更方便地编写代码。
7. C# 7.0促使专注于数据消费,简化代码和性能
2017年3月,伴随Visual Studio 2017的发布,C# 7.0开始正式走上工作岗位。对于早已熟悉了旧版本C#的开发者来说,C# 7.0增加的不少新特性和语法能在很大程度上提升编程效率并降低出错率。
1.1.2 C#的特点
C#语言继承了C语言的语法风格,同时又继承了C++面向对象的特性。不同的是,C#的对象模型已经面向Internet进行了重新设计,使用的是.NET框架的类库。该语言的主要特点如图1-1所示。
图1-1 C#的特点
1. 语法简洁
C#语言的语法是非常简单的,而且相对于C++来说,它不再提供对指针类型的支持,使得程序不能随便访问内存地址。
2. 面向对象设计
面向对象的特点主要是封装、继承和多态,而这三个特点在C#中得到了完全的体现。
3. 与Web紧密结合
用户在使用C#语言时,可以开发出与Web相关的应用,最常见的就是ASP.NET网站。
4. 安全性机制
C#语言安全性机制非常好,因为是通过.NET框架运行的,所以不直接操作内存。
5. 错误异常处理机制
C#语言有完善的错误处理机制,在使用C#进行开发时,用户可以使用try…catch异常处理机制来处理相应的代码。
6. 兼容性高
C#语言的兼容性也非常高,因为它是由微软推出的,所以对于微软的各个操作系统都是支持的。
1.1.3 C#典型行业应用
C#是唯一一种在Windows下能给出全套解决方案的编程语言。也就是说,从内核到中间组件再到外壳界面全部都能够用C#来完成,不用寻求其他编程语言的帮助。
1. 开发普通软件
在用户计算机上运行的各种程序都是软件。不论是聊天所使用的QQ、上网所使用的浏览器,还是操作系统,它们都是软件。而这些软件大部分都可以使用C#程序开发。
2. 开发网站
现在网站开发的主流技术有三种,分别为ASP.NET、Java Web和PHP。而其中的ASP.NET是微软推出的网站开发技术。该技术支持微软的各种语言,尤其是C#语言。
3. 开发游戏
据不完全数据统计,C#在服务器端开发、数字图像处理、网络软件、移动设备等领域中都是可以被用到的。对于用户平常接触的游戏而言,目前很多大型游戏客户端都是基于C#开发的。随着社会的进步和科学技术的发展,计算机技术也慢慢地走进人们的生活,编程成为网络技术人员不可或缺的技能之一。