C# 基础入门
一、语言概述 💻
C#(发音为“C sharp”)是由微软公司设计开发的一种现代、类型安全的面向对象编程语言。它在保持 C++ 语言的表达力和高效性的同时,还提供了自动内存管理、异常处理等现代化特性。
# 符号在音乐记谱法中表示升调(Sharp),当一个音符标记为 # 时,表示这个音要升高半音。这个命名展现了微软对这门语言的野心和定位——既要继承 C 语言家族的优良传统,又要在此基础上有所提升和突破。
C# 作为一种多功能且功能强大的语言,广泛应用于各个领域。特别在游戏编程中非常受欢迎,凭借其强大的性能和灵活性,已成为游戏开发者的首选语言。
本教程将从游戏开发的实际需求出发,聚焦实用语法和技能。
C# 最为人所知的是用于在 Unity 游戏引擎中编写脚本的语言。 Godot 引擎也支持用 C# 编写游戏逻辑。
Unity 通过使用 Mono 实现跨平台 C# 脚本支持。
Godot 3.x 使用 Mono 作为 C# 运行时环境。Godot 4.x 采用原生 .NET 支持,逐步迁移到了现代 .NET 生态系统。
Mono 是一个开源的 .NET 框架实现,提供跨平台的开发解决方案,为开发者提供完整的 .NET 兼容性环境。
二、语言特性 👥
-
面向对象:
C#支持面向对象编程的原则,使得组织和结构化代码变得更容易。 -
类型安全:
C#是一种静态类型语言,这意味着变量必须声明为特定的数据类型,从而增强代码安全性。 -
内存管理:
C#通过垃圾回收实现自动内存管理,减少内存泄漏的风险。 -
现代语言特性:
C#不断发展,引入了许多现代编程语言的特性,使得开发更加高效和灵活。 -
开源生态系统:
C#拥有活跃的开源社区,提供了大量的开源项目、文档和资源,有助于解决跨平台开发中遇到的问题。
三、开发环境 🖥️
1、.NET SDK 🔧
.NET SDK:该软件开发套件包括编译器、库和其他资源用于用C#开发应用程序。
2、.NET Framework 🔧
.NET Framework 是一个已经存在多年的传统框架,Windows平台专用。
3、.NET Core 🔧
.NET Core 是 .NET 的跨平台开源版本,旨在支持现代应用程序。
4、.NET 🔧
.NET 平台融合了 .NET Framework 和 .NET Core,并为开发人员提供一个单一的平台来创建任何类型的应用程序。这些发展是为了适应现代技术趋势以及提高性能和可扩展性的需求。
5、开发工具 📊
C# 的主要 IDE 是 Microsoft 的 Visual Studio。
不过,还有其他选择,例如 Visual Studio Code(支持 C# 扩展的轻量级代码编辑器)和 JetBrains Rider。
每个环境都有自己的优点和特点,选择取决于开发人员的具体需求:
-
Visual Studio:全面的 IDE,具有适用于大型项目和多语言支持。
-
JetBrains Rider:跨平台 .NET IDE,具有强大的 .NET 开发工具和丰富的插件。
四、Hello World 👋
打开开发工具并创建一个控制台项目或者使用命令行 dotnet new console 创建一个新的控制台应用,dotnet run 编译并运行一个简单的 C# 程序。
public class Program
{
public static void Main()
{
Console.WriteLine("Hello World!");
}
}
C# 程序中的入口点通常由位于 Program 类中的 Main() 方法表示。该方法必须是静态的,并作为程序执行的起点。
void是一个关键字,意味着我们程序的这一部分(称为方法)不会“返回”任何值。
Console.WriteLine() 和 Console.Write() 都将信息打印到控制台。
通用的C#程序结构:
public class Program
{
public static void Main(string[] args)
{
// program code
}
}
args 参数包含一个字符串数组,该数组在程序启动时传递给程序。