C#学习笔记(一)——准备工作

1.1 下载安装.NET框架

.NET框架有点类似于Java的JDK或者python的解析器,其中包括编译器,执行引擎、功能框架以及一些和SDK捆绑的工具。总之,要要编译和执行C#项目需要先安装.NET框架。

推荐使用官网下载:https://dotnet.microsoft.com/download

其中.NET Core版本是跨平台使用,在Windows、macOS、Linux下都可以使用,Framework版本只适用于Windows平台。一般选择Build Apps后的下载即可,“Run Apps”的文件也被包括在里面。

1.2 创建源代码

  • 如果是使用Visual Studio等IDE的话,选择文件--新建--项目,选择C#的项目即可。

  • 如果是命令行创建,可以依次输入以下代码:

    1. mkdir ./First
    2. cd ./Fiest
    3. dotnet new console
    4. dotnet run

    其中“dotnet new console”是新生成一个程序框架,它会生成一个默认的程序并包含一些代码,“dotnet run”是对这个新创建的项目进行编译和运行。

1.3 一些基本名称

  1. using System;
  2. namespace c_
  3. {
  4. class Program
  5. {
  6. static void Main(string[] args)
  7. {
  8. int number;
  9. Morning morning = new Morning;
  10. number = 1;
  11. //打印Hi
  12. Console.WriteLine("Hi");
  13. }
  14. }
  15. }
  16. ------
  17. class Morning
  18. {
  19. ...
  20. }
  • using后面的叫命名空间,他的作用主要是,在用到该命名空间中定义的名称时,可以省略一部分。如果不使用“using System”这条语句,“Console.WriteLine("Hi")”这条语句就应该写成“System.Console.WriteLine("Hi");”。
  • class被称为类,在这里类的名称就是“Program”。
  • Main被称作方法。方法类似于C语言里面的函数。
  • args被称为参数。参数在方法后面的括号中出现。
  • int number被称为变量的声明。大概意思是宣称我要创建一个名叫number的变量,它的类型是int型。所谓类型就是这个变量是什么,比如整数、字符等。
  • number = 1被称为变量的赋值。
  • //Hi,//后面面的话被称为注释,可以添加一些对代码的说明,编译的时候编译器会忽略这些内容。
  • 由一对大括号括起来的区域称为作用域。比如Main后的大括号包含了三行代码,表示Main的作用域就是这三行,这三行之外的东西跟Main“不在一个国家”。
  • Morning morning = new Morning语句是新建了一个叫morning(注意大小写)的实例。类跟类的实例之间的关系有点像花瓶模具和花瓶之间的关系。
  • 方法作用域内的代码叫方法的实现,指的是该方法的具体内容。

1.4 简单的命名建议

  • 类和方法的名称每个单词的首字母大写,如HelloWorld。
  • 变量的名称除第一个单词首字母小写外,其他的大写,如helloWorld。
  • 虽然C#不强制,但是尽量使类名与保存该类的文件名保持一致。
  • 尽量使用命名来说明必要信息而不是添加注释。

# C#学习笔记(一)——准备工作的更多相关文章

  1. Hadoop学习笔记—22.Hadoop2.x环境搭建与配置

    自从2015年花了2个多月时间把Hadoop1.x的学习教程学习了一遍,对Hadoop这个神奇的小象有了一个初步的了解,还对每次学习的内容进行了总结,也形成了我的一个博文系列<Hadoop学习笔 ...

  2. OpenCV学习笔记(一)——OpenCV3.1.0+VS2015开发环境配置

    摘要: 由于最近AR(增强现实)这个概念非常火爆,各种基于AR的应用及游戏逐渐面向大众,而在AR中最重要的两个技术就是跟踪识别和增强渲染,其中跟踪识别是通过OpenCV这个开源的计算机视觉库来实现的, ...

  3. Spring学习笔记 1. 尚硅谷_佟刚_Spring_HelloWorld

    1,准备工作 (1)安装spring插件 搜索https://spring.io/tools/sts/all就可以下载最新的版本 下载之后不用解压,使用Eclipse进行安装.在菜单栏最右面的Help ...

  4. 转:openwrt中luci学习笔记

    原文地址:openwrt中luci学习笔记 最近在学习OpenWrt,需要在OpenWrt的WEB界面增加内容,本文将讲述修改OpenWrt的过程和其中遇到的问题. 一.WEB界面开发         ...

  5. zepto源码--核心方法10(位置)--学习笔记

    今天基本上就是zepto学习笔记的最后一篇了,介绍一下有关位置的函数,position, offset, scrollLeft, scrollTop scrollLeft 如果所选取的包装集不存在,则 ...

  6. DirectX 总结和DirectX 9.0 学习笔记

    转自:http://www.cnblogs.com/graphics/archive/2009/11/25/1583682.html DirectX 总结 DDS DirectXDraw Surfac ...

  7. Android学习笔记之JSON数据解析

    转载:Android学习笔记44:JSON数据解析 JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,采用完全独立于语言的文本格式,为Web应用开发提供了一种 ...

  8. [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计

    源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...

  9. AM335x(TQ335x)学习笔记——挂载Ramdisk

    上篇文章中我们已经能够通过u-boot启动内核了,但是没有能够启动成功,从内核的log中可以看出,内核启动失败的原因是没有挂载到root文件系统,本文将使用busybox制作根文件系统并打包成ramd ...

随机推荐

  1. 【Jenkins】插件更改国内源

    最近调试脚本,本机安装了Jenkins,但是安装插件时一直失败.更改升级站点也不生效,究其原因是因为default.json中插件下载地址还https://updates.jenkins.io,升级站 ...

  2. element动态添加表头的正确姿势

    1. 第一步循环 el-table-column <el-table-column v-if="item.show" v-for="(item, index) in ...

  3. java 一维数组的总结笔记

    数组 1. 一位数组的声明方式 type[] array Name 或 type arrayName[];(推荐使用第二种) 错误的声明方式 //int[5] intErrorArray;错误的 // ...

  4. Springboot:logback日志管理(九)

    Springboot默认使用的日志框架就是logback 创建自定义的logback-spring.xml放在resources类目录下即可 logback-spring.xml: <?xml ...

  5. 深入浅出webpack笔记

    1.CommonJS CommonJS是一种被广泛使用的JavaScript模块化规范,其核心思想是用过require方法来同步加载依赖的其他模块,通过moudle.exports导出需要暴露的接口, ...

  6. 常见分布式全局唯一ID生成策略

    全局唯一的 ID 几乎是所有系统都会遇到的刚需.这个 id 在搜索, 存储数据, 加快检索速度 等等很多方面都有着重要的意义.工业上有多种策略来获取这个全局唯一的id,针对常见的几种场景,我在这里进行 ...

  7. react typescript jest config (一)

    1. initialize project create a folder project Now we'll turn this folder into an npm package. npm in ...

  8. git flow配置问题

    Mac使用 git flow 的时候,当 -m 进行换行有时消息会被截断,怎么解决? 原因: brew 上的 gnu-getopt 这个包未配置好 步骤: 1. 在 ~/.gitflow_export ...

  9. 使用 Junit + Mockito 实践单元测试

    一.前言 相信做过开发的同学,都多多少少写过下面的代码,很长一段时间我一直以为这就是单元测试... @SpringBootTest @RunWith(SpringRunner.class) publi ...

  10. QtConcurrent::run() 只能运行参数个数不超过5的函数

    有时不得不看源码 qtconcurrentrun.h template <typename T, typename Param1, typename Arg1, typename Param2, ...