【C#基础】初识编程语言C#

简介: 编程语言C#和.NET平台的介绍以及如何写出自己第一个C#程序。
序号 系列文章
- 【算法】C#实现经典排序算法总结
- 【数据结构】C#实现常用数据结构总结
- 【学习资源】C#初学者学习资源推荐
- 【教程】 .Net环境和开发工具Visual Studio的安装

前言

在学习C#之前,我们需要准备好编程所需要的 编译环境.Net开发工具Visual Studio的安装,在这里可以参考笔者之前写的一个教程: .Net环境和开发工具Visual Studio的安装

一. C#语言介绍

C#(读作"See Sharp")是由微软团队开发的一种新式编程语言,不仅面向对象,并且类型安全。 开发人员利用C#能够生成在.NET中运行的多种安全可靠的应用程序。 C# 源于C语言系列,C、C++、Java和JavaScript程序员很快就可以上手使用。

列举C#语成为一种广泛应用的专业语言的原因:

  • 现代的、通用的编程语言
  • 面向对象
  • 面向组件
  • 结构化的
  • 自然的语言
  • 性能高效的
  • 跨平台的
  • 高度兼容.Net平台

同时,微软开发团队在对C#的不断更新中也加上了许多强大的功能,多项C#功能有助于创建可靠且持久的应用程序,其中包括但不限于:

  • 垃圾回收机制(Garbage collection mechanism),垃圾回收自动回收那些不可访问的未使用对象所占用的内存,可以防范为 null 的类型不引用已分配对象的变量。
  • 异常处理(Exception handling),提供了一种结构化且可扩展的方法来进行错误检测和恢复。
  • Lambda 表达式(Lambda expressions)和语言集成查询 (LINQ) ,支持了函数式编程技术,创建出了一个公共模式,用于处理来自任何源的数据。
  • 异步操作语言(Asynchronous programming),支持提供用于构建分布式系统的语法。
  • 统一的类型系统(Uniform type system),所有 C# 类型(包括int和double 等基元类型)均继承自一个根object类型。所有类型共用一组通用运算。任何类型的值都可以一致地进行存储、传输和处理。
  • 支持自定义的引用类型和值类型、允许动态分配轻型结构的对象和内嵌存储、支持泛型方法和类型、提供迭代器,使集合类的实现者可以定义客户端代码的自定义行为。

最后,C#强调版本控制,以确保程序和库以兼容方式随时间推移而变化。

二. .NET平台介绍

.NET是一个免费的跨平台开放源代码开发人员平台,用于生成多种类型的应用程序。.NET基于许多大规模应用在生产中使用的高性能运行时构建而来。而C#则是用于生成面向.NET环境的代码,用C#编写的源代码被编译成符合CLI规范的中间语言 (IL),执行C#程序时,程序集将加载到CLR(公共语言运行时)。CLR会直接执行实时 (JIT) 编译,将IL代码转换成本机指令。

语言互操作性是.NET的一项重要功能。.NET支持下列各种语言:C#、F#、Visual Basic、C++等等。这些语言都可以访问.NET平台,生成的IL代码符合公共类型规范(CTS)以支持它们彼此之间可以互相交互。

借助.NET能帮您编写出下面类型的应用程序:

  • 云应用:云原生应用、控制台应用、云中的无服务器函数、Web应用、Web API和微服务。
  • 跨平台客户端应用: 桌面应用、游戏、移动应用。
  • Windows应用:Windows桌面应用:Windows窗体、Windows WPF、通用Windows平台(UWP),Windows服务。
  • 其它应用类型:机器学习、物联网(IoT)

除了运行时服务之外,.NET还包含大量库。这些库支持多种不同的工作负载。 它们已整理到命名空间中,这些命名空间提供各种实用功能。 这些功能包括:

  • 文件输入输出
  • 字符串控制
  • XML分析
  • Web应用程序框架
  • Windows窗体控件

典型的C#应用程序广泛使用 .NET类库来处理常见的"管道"零碎工作。

三. Hello,World

"Hello, World"程序历来都用于介绍编程语言,下面我们就可以用C#写出我们第一个"Hello, World"程序:
using System;

class Hello
{
    static void Main()
    {
        Console.WriteLine("Hello, World");
    }
}

"Hello, World"程序详细的解释:

  • "Hello, World"程序始于引用System命名空间的using指令。命名空间提供了一种用于组织C#程序和库的分层方法。命名空间包含类型和其他命名空间。例如,System命名空间包含许多类型(如程序中引用的 Console 类)和其他许多命名空间(如 IO 和Collections)。
  • 借助引用给定命名空间的using 指令,可以非限定的方式使用作为相应命名空间成员的类型。由于使用using指令,因此程序可以使用Console.WriteLine作为System.Console.WriteLine 的简写。
  • "Hello, World"程序声明的Hello类只有一个成员,即Main方法。Main方法使用static修饰符进行声明。实例方法可以使用关键字this引用特定的封闭对象实例,而静态方法则可以在不引用特定对象的情况下运行。按照约定,Main静态方法是C#程序的入口点。
  • 程序的输出是由System命名空间中Console类的WriteLine方法生成,此类由标准类库提供。默认情况下,编译器会自动引用标准类库。

结语

以上就是编程语言C#和.NET平台的介绍以及写出第一个C#程序,希望能够对大家有所帮助。请大家多多支持,大家一起学习C#,你们的支持就是笔者创作最大的动力!
目录
相关文章
|
人工智能 开发框架 物联网
为什么 C# 可能是最好的第一编程语言
C# 是一个全面领域的全能型语言,结合新时代的 .NET 平台,与时俱进的发展创新,未来无限可期!对于带着有色眼镜看待的人们,是否该刮目相看了呢?下面看看行业大佬关于 .NET 的解说。
1231 2
为什么 C# 可能是最好的第一编程语言
|
6月前
|
Java Go C#
编程语言C#、C++、Java、Python、go 选择哪个好?
我想说的是,不论选择哪种编程语言,决定选择的都是你最终的目的,做选择之前,先充分调研每一个选择项,再做选择思路就会非常清晰了。
140 3
|
7月前
|
人工智能 Java 物联网
C# 成为 2023 年度编程语言之王!
2023 年 TIOBE 年度编程语言已经正式公布,C# 在稳居前 10 名 20 多年之久后,首次摘下年度编程语言桂冠。TIOBE 数据显示,C# 在 2023 年的涨幅达 1.43%,远超过竞争对手 Scratch 的 0.83% 和 Fortran 的 0.64%。
487 1
C# 成为 2023 年度编程语言之王!
|
7月前
|
开发框架 Java .NET
C#编程语言的优势与C++对比
C#编程语言的优势与C++对比
186 0
|
7月前
|
搜索推荐 Java C#
C#有望成为2023年的编程语言之王
C#有望成为2023年的编程语言之王
125 1
C#有望成为2023年的编程语言之王
|
7月前
|
关系型数据库 C# 数据库
2023 年度数据库 PostgreSQL 遇到年度编程语言 C# 会发生什么样的火花?
2023 年度数据库 PostgreSQL 遇到年度编程语言 C# 会发生什么样的火花?分析这俩的发展趋势,技术生态,社区活跃度,特别是国产化信创领域的支持度?
89 1
|
7月前
|
人工智能 搜索推荐 Java
C# 最有可能摘得“年度编程语言”,Python、Java 正在让位,TIOBE 12 月编程语言榜单最新预测来了!
C# 最有可能摘得“年度编程语言”,Python、Java 正在让位,TIOBE 12 月编程语言榜单最新预测来了!
61 1
|
7月前
|
物联网 Linux 编译器
C#成为2023年年度编程语言之王
C#成为2023年年度编程语言之王
|
机器学习/深度学习 Java C#
C# 编程语言简介
C# 是一种通用的、静态类型的编程语言,由 Microsoft 开发。它是为了构建 .NET 应用程序而设计的,同时也可以用于开发跨平台应用、游戏和桌面应用。C# 具有简洁、现代化的语法以及强大的面向对象编程特性,使得开发者能够快速高效地构建各种类型的应用。
121 0
|
开发框架 安全 C#
探索C#编程语言:现代开发的引领者
大家好,今天我们将深入探讨一门备受程序员欢迎的编程语言——C#(C Sharp)。C#是一种多用途、现代化的编程语言,由微软公司推出,它在软件开发领域扮演着至关重要的角色。让我们一起来了解一下C#是如何引领现代开发的!
559 0