是不是想到了你学C语言或者别的时候第一个程序“HelloWorld”?当然,我们也要从一个最简单的程序来了解程序最基本的组成——他就是My first program!
解决方案和项目
什么是解决方案和项目
假设有一个电子产品生产的工厂(你是不是想到了富士康),工厂有好几条生产流水线,第一条流水线生产苹果手机(当然是代工了!),第二条流水线生产三星手机(三星找别人代工么?),第三条生产什么,大家放开脑洞去想吧,嘿嘿。如果把工厂比作解决方案的话,那么每条生产流水线就是项目。也就是说,项目就是一个个的程序,解决方案是项目的集合,这些程序可以相互调用(什么是调用,比如生产后盖的流水线的产品可以给三星手机流水线用,成为三星手机的一部分)。如下图
新建解项目和解决方案
菜单中点击【文件】->【新建项目】,显示如下图的对话框
对上图中的解释:
- 模板:也就是选择语言,这里我们选择C#
- 类型:要创建的程序类型,我们选择控制台应用程序(就大家最讨厌的那个黑的白字的窗口,也叫做命令行)
- 名称:这里的名称指的是项目名称,我们填入MyFirstProgram
- 位置:项目存在哪里呢?我选了默认
- 解决方案名称:我填写了和项目相同的名称,后面的为解决方案创建目录别忘了勾上哦
接下来,我们点击确定,项目和解决方案就创建好了,创建完成后,会有一个默认的程序显示在我们面前。
我的第一个程序My first program
首先来看一下创建好的程序,默认的代码
对上图的解释:
- 菜单和工具栏区域,主要是常用的一些功能
- 代码编辑区,我们写代码就写在这一区域里
- 解决方案资源管理器,你能看到,我们刚才创建的MyFirstProgram解决方案和项目就在这里,而且明显看到,解决方案是项目的上级,当然,我们还可以在解决方案里再添加项目
- 这个是命名空间的引用部分,你可以理解为C语言的include部分(这样理解不是很准确),就是要包含进来别人写好的一些东西
- 命名空间声明部分。这个命名空间MyFirstProgram,和我们的项目同名了,当然你也可以改成张三,李四。(什么是命名空间,加入你有一个苹果,我也有一个苹果,那么为了区分这两个苹果,可以这样说,张三的苹果,李四的苹果。说到这里你就明白了,命名空间就是指定这个程序是谁的)
- 类的声明部分。这个暂且这么记着吧,目前涉及不到。
- 这是一个主方法或者叫主函数,程序执行的入口就是这里,程序总是会先执行主函数(是不是想起了C语言的主函数)
- 这对花括号(程序里习惯把大括号叫做花括号,中括号叫方括号,小括号叫圆括号,没有为什么,就这么记着吧)中间的部分,就是我们写自己的代码的地方
- 其实,你已经发现了,这个写程序好简单,都自动生成好了。那么,我们就来写一句话吧,代码如下:
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MyFirtsProgram { class Program { static void Main(string[] args) { Console.WriteLine("This is my first program!!!"); } } }
我在刚才的8区域,也就是最中间的花括号里写了一句话:“Console.WriteLine("This is my first program!!!");”你能猜猜这是什么意思么?Console不知道怎么翻译,后面是写一行,也就是Console(其实这个单词就是控制台)这个东西写一行This my first program!!!到底是不是呢?
我想你已经迫不及待的想运行程序了,让我们来运行一下吧,点击菜单栏【调试】->【启动调试】,或者快捷键F5,当然,工具栏里的那个绿色的小三角符号也是调试的意思,让我们运行起来吧!
怎么一个黑色窗口闪了一下就没了呢,因为我们的程序已经执行完退出了,那么怎么解决呢?在刚才的那句话后面加一句:“Console.ReadKey();”这样我们的程序会等我们按下键盘的任意一个按键时才会退出。好的,我们再次运行程序,如下图:
我们刚才猜测的结果是对的,控制台写出了这句话。看来,这个程序也是可以读的嘛!
分析我们的代码
我们现在回头看一下我们的代码,我们的代码全部书写在了主函数里,下面总结一下书写的要求:
- 每句话里有大写字母也有小写字母。其实,这样的做法不仅是让你能够顺利猜测代码含义,读通代码,最重要的一点是C#不像C语言那样不分大小写,在C#中,严格区分大小写,如果你随意写大小写,会出错的。(你也感受到了,刚才输入代码的过程中,会有智能提示,防止你输入错误的语句或词)
- 每句话都以英文的半角分号(;)结尾,而且圆括号也是英文半角状态下输入的。也就是说,写程序时,标点符号和括号都应该以英文半角输入(针对搜狗输入法,Shift键+空格键切换全角和半角,Shift键切换中英文)
- 无论是花括号,还是圆括号,双引号,都是成对出现的,所以,我建议大家输入代码时,遇到这些成对出现的符号直接成对打出,再返回括号内填写内容,以免丢失后半个括号
我怕我忘了每句话的含义,怎么在程序里添加注释
有时候,我们刚学的新语句,怕忘记,想在旁边写注释怎么办?
我先来介绍两种注释方法
第一种,行注释,用//开始,改行//以后的语句就不会被程序读取执行了,例如下面的代码(注释的变绿色了啊)
Console.WriteLine("This is my first program!!!");//这行的意思是在控制台上输出一句话 //Console.WriteLine("这行由于注释掉了,不会被执行!!!"); Console.ReadKey();
上面的程序里,第二行的输出语句由于被注释了,所以,程序不会读取代码执行。大家可以自行运行一下检验一下结果。
上面的注释方法每次只能注释一行,如果我要想注释一段代码的话,每行都写//很麻烦,所以,就有了第二种注释方法,块注释,也叫段落注释。用/*开头,并用*/结尾,夹在这之间的内容都会被视为注释,如下面的代码:
Console.WriteLine("This is my first program!!!");//这行的意思是在控制台上输出一句话 /* 我这是块注释 Console.WriteLine("这行由于注释掉了,不会被执行!!!"); */ Console.ReadKey();
我们可以看出,注释不仅可以给代码添加备注,方便阅读,而且可以屏蔽某些代码被程序执行,这个功能很重要,以后调试程序时也经常用到。
那么注释有没有快捷键呢?当然是有的:选择需要注释的代码,在工具栏点击 这个按钮,前者是添加注释,后者是取消注释。(Ctrl+K+C可以添加注释,Ctrl+K+U是取消注释)。
总结
- 软件界面
- 解决方案和项目
- 一个项目应该包含的部分(命名空间的引用,命名空间的声明,类的声明,主函数,我们自己的代码)
- 代码书写要求规范
- 注释的方法
- 学了两句话,第一个是控制台输出一行,第二个是控制台等待用户按下键盘