Visual C# 2010入门经典》一1.4 编写第一个程序

简介: Visual C# 2010入门经典 至此,您应该对C#语言及其语法足够熟悉,能够编写第一个程序了。如果还没有安装Visual Studio 2010,现在就安装。鉴于这是您创建的第一个程序,因此将继承传统,创建一个在屏幕上显示“Hello, World”的简单程序。

本节书摘来异步社区《Visual C# 2010入门经典》一书中的第1章,第1.4节,作者: 【美】Scott Dorman译者: 张劼 责编: 傅道坤,更多章节内容可以访问云栖社区“异步社区”公众号查看。

1.4 编写第一个程序

Visual C# 2010入门经典
至此,您应该对C#语言及其语法足够熟悉,能够编写第一个程序了。如果还没有安装Visual Studio 2010,现在就安装。鉴于这是您创建的第一个程序,因此将继承传统,创建一个在屏幕上显示“Hello, World”的简单程序。

1.4.1 新建项目

要新建项目,可单击起始页中的“新建项目”命令或工具栏中的“新建项目”按钮,也可使用菜单,图1.6说明了这些命令和菜单所处的位置。


1_6

这将打开“新建项目”对话框,让您能够指定项目的名称和类型,如图1.7所示。


1_7

在这里,您将创建一个名为ConsoleHelloWorld的控制台应用程序。选择项目类型并输入名称后,便可单击“确定”按钮或双击项目类型。这将关闭该对话框、创建项目并显示该项目的默认代码,如图1.8所示。


1_8

正如您看到的,Visual Studio为您完成了一些工作,它提供了一些初始代码。添加代码前,先来看看Visual Studio为您生成的代码。

在文件的开头(第1行~第4行)列出了一些命名空间,如图1.9所示。列出每个命名空间时,都使用了编译指令using,这种编译指令由关键字using和命名空间组成。编译指令using告诉编译器和我们引用了一个命名空间,这样就可以使用该命名空间中声明的类型了。


1_9

紧接着编译指令using,声明了一个名为ConsoleHelloworld的命名空间(第6行)和一个名为Program的类(第8行),如图1.10所示。类和方法将在第3章详细介绍,这里可将类视为一个容器,其边界由左大括号和右大括号定义。


1_10

1.4.2 添加程序语句

现在,将注意力转向我们希望程序执行的操作上。由于这是一个控制台应用程序,您需要与运行该应用程序的控制台窗口交互。通过查看Framework类库,您会发现一个名为Console的类,它提供了显示消息和接受键盘输入的方法。

要在控制台窗口中显示文本,需要在定义Main方法的大括号(第11、第12行)之间输入如下语句:

Console.WriteLine("Hello, world");

现在,文件类似于如图1.11所示。


1_11

编写这行代码时,也可使用完整的类型名——System.Console,但是没有必要这样做,因为文件开头有相应的using编译指令。这些using编译指令告诉编译器,您要使用相应命名空间中声明的类型,因此只需指定类型名。然而,如果两个包含的命名空间中有两个同名的类型,那么编译器将无法判断您要使用哪个类型。在这种情况下,仍需要使用完整的类型名。

至此,应用程序“Hello, World”就编写好了。虽然这个示例看起来微不足道,但是实际上并非如此。别忘了,Windows命令提示符并非托管应用程序,因此上述一行代码就封装了所需的全部逻辑:与该非托管应用程序交互并命令它显示指定的文本。在C#编译器看来,这行看似微不足道的代码依赖于数十种类型,这些类型位于十多个命名空间内,它们都是由Framework类库提供的。


bytheway


注意:保存项目和解决方案

如果您使用的是Visual C# 2010学习版,就将在临时文件夹中创建项目和解决方案。当您关闭Visual C# 2010学习版或首次单击“保存”或“全部保存”按钮时,将被要求指定项目的保存位置。如果您使用的不是Visual Studio 2010学习版,项目和解决方案将自动保存在您在“新建项目”对话框中指定的位置。

1.4.3 运行应用程序

按Ctrl + F5组合键运行应用程序。Visual Studio将保存文件(如果还没有保存),将其编译成一个名为ConsoleHelloWorld.exe的应用程序并运行它。

如果您输入的代码正确,将在一个命令窗口中看到消息“Hello, world”,如图1.12所示。

1_12

消息按任意键继续是Visual Studio添加的,旨在让您能够看到输出。如果没有它,应用程序将在运行并显示消息后退出。

相关文章
|
4月前
|
存储 安全 Java
程序与技术分享:C#值类型和引用类型的区别
程序与技术分享:C#值类型和引用类型的区别
34 0
|
22天前
|
C# 容器
C#中的命名空间与程序集管理
在C#编程中,`命名空间`和`程序集`是组织代码的关键概念,有助于提高代码的可维护性和复用性。本文从基础入手,详细解释了命名空间的逻辑组织方式及其基本语法,展示了如何使用`using`指令访问其他命名空间中的类型,并提供了常见问题的解决方案。接着介绍了程序集这一.NET框架的基本单位,包括其创建、引用及高级特性如强名称和延迟加载等。通过具体示例,展示了如何创建和使用自定义程序集,并提出了针对版本不匹配和性能问题的有效策略。理解并善用这些概念,能显著提升开发效率和代码质量。
36 4
|
28天前
|
Linux C# 开发者
Uno Platform 驱动的跨平台应用开发:从零开始的全方位资源指南与定制化学习路径规划,助您轻松上手并精通 C# 与 XAML 编程技巧,打造高效多端一致用户体验的移动与桌面应用程序
【9月更文挑战第8天】Uno Platform 的社区资源与学习路径推荐旨在为初学者和开发者提供全面指南,涵盖官方文档、GitHub 仓库及社区支持,助您掌握使用 C# 和 XAML 创建跨平台原生 UI 的技能。从官网入门教程到进阶技巧,再到活跃社区如 Discord,本指南带领您逐步深入了解 Uno Platform,并提供实用示例代码,帮助您在 Windows、iOS、Android、macOS、Linux 和 WebAssembly 等平台上高效开发。建议先熟悉 C# 和 XAML 基础,然后实践官方教程,研究 GitHub 示例项目,并积极参与社区讨论,不断提升技能。
37 2
|
28天前
|
设计模式 C# 开发者
C#设计模式入门实战教程
C#设计模式入门实战教程
|
17天前
|
安全 数据库连接 API
C#一分钟浅谈:多线程编程入门
在现代软件开发中,多线程编程对于提升程序响应性和执行效率至关重要。本文从基础概念入手,详细探讨了C#中的多线程技术,包括线程创建、管理及常见问题的解决策略,如线程安全、死锁和资源泄露等,并通过具体示例帮助读者理解和应用这些技巧,适合初学者快速掌握C#多线程编程。
49 0
|
28天前
|
开发框架 .NET Java
C#/.NET/.NET Core自学入门指南
C#/.NET/.NET Core自学入门指南
|
2月前
|
图形学 C# 开发者
全面掌握Unity游戏开发核心技术:C#脚本编程从入门到精通——详解生命周期方法、事件处理与面向对象设计,助你打造高效稳定的互动娱乐体验
【8月更文挑战第31天】Unity 是一款强大的游戏开发平台,支持多种编程语言,其中 C# 最为常用。本文介绍 C# 在 Unity 中的应用,涵盖脚本生命周期、常用函数、事件处理及面向对象编程等核心概念。通过具体示例,展示如何编写有效的 C# 脚本,包括 Start、Update 和 LateUpdate 等生命周期方法,以及碰撞检测和类继承等高级技巧,帮助开发者掌握 Unity 脚本编程基础,提升游戏开发效率。
44 0
|
2月前
|
开发者 iOS开发 C#
Uno Platform 入门超详细指南:从零开始教你打造兼容 Web、Windows、iOS 和 Android 的跨平台应用,轻松掌握 XAML 与 C# 开发技巧,快速上手示例代码助你迈出第一步
【8月更文挑战第31天】Uno Platform 是一个基于 Microsoft .NET 的开源框架,支持使用 C# 和 XAML 构建跨平台应用,适用于 Web(WebAssembly)、Windows、Linux、macOS、iOS 和 Android。它允许开发者共享几乎全部的业务逻辑和 UI 代码,同时保持原生性能。选择 Uno Platform 可以统一开发体验,减少代码重复,降低开发成本。安装时需先配置好 Visual Studio 或 Visual Studio for Mac,并通过 NuGet 或官网下载工具包。
61 0
|
2月前
|
缓存 NoSQL Redis
【Azure Redis 缓存】C#程序是否有对应的方式来优化并缩短由于 Redis 维护造成的不可访问的时间
【Azure Redis 缓存】C#程序是否有对应的方式来优化并缩短由于 Redis 维护造成的不可访问的时间
下一篇
无影云桌面