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#的项目即可。

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

    mkdir ./First
    cd ./Fiest
    dotnet new console
    dotnet run

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

1.3 一些基本名称

using System;

namespace c_
{
class Program
{
static void Main(string[] args)
{
int number;
Morning morning = new Morning;
number = 1;
//打印Hi
Console.WriteLine("Hi");
} }
}
------
class Morning
{
...
}
  • 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. 【three.js第三课】鼠标事件,移动、旋转物体

    1.下载three.js的源码包后,文件夹结构如下: 2.在[three.js第一课]的代码基础上,引入OrbitControls.js文件,此文件主要用于 对鼠标的操作. 该文件位置:在文件结构中 ...

  2. 【draft】Team project :Bing dictionary plug-in

    课后~ 开会调研开会调研开会~ 在和Bing词典负责人进行了可行性的深入磋商后,我们对本次选题有了更加清晰的认识~困难好多~然而终于敲定了项目内容,我们的目标是这样一款神奇的插件,它帮你记录下新近查询 ...

  3. Git敏捷开发--reset和clean

    reset 丢弃本地所有修改,强行和上游分支保持一致 git reset --hard HEAD 若仅丢弃某个文件的改动,利用checkout git checkout your_file clean ...

  4. centos7 —— 网络连接问题

    今天用虚拟机(VM)安装好centos7后,发现无法连接网络,百思不得其解: 第一步:找到需要修改的文件位置,查明原因 #.查看网络是否可以ping通 ~ ping www.baidu.com #.查 ...

  5. Spring5:Java Config

    @Configuration @Bean @ComponentScan @ImportResource 使用Java的方式配置spring,完全不使用spring配置文件,交给java来做! 两个注解 ...

  6. 如何使用Jsoup爬取网页内容

    前言: 这是一篇迟到很久的文章了,人真的是越来越懒,前一阵用jsoup实现了一个功能,个人觉得和selenium的webdriver原理类似,所以今天正好有时间,就又来更新分享了. 实现场景: 爬取博 ...

  7. JWT验证机制【Python版Flask或自己写的后端可以用】【刘新宇】

    JWT Json Web Token(JWT) JSON Web Token(JWT)是一个非常轻巧的规范.这个规范允许我们使用JWT在两个组织之间传递安全可靠的信息. 官方定义:JSON Web T ...

  8. MySql --FIND_IN_SET() 函数 (转)

    例子:https://www.jianshu.com/p/b2c1ba0ba34f 举个例子来说:有个文章表里面有个type字段,他存储的是文章类型,有 1头条,2推荐,3热点,4图文 .....11 ...

  9. thinkphp--create()的使用方法(个人感悟)

    M方法和D方法的区别 ThinkPHP 中M方法和D方法都用于实例化一个模型类,M方法 用于高效实例化一个基础模型类,而 D方法 用于实例化一个用户定义模型类. 使用M方法 如果是如下情况,请考虑使用 ...

  10. 对 spring 中默认的 DataSource 创建进行覆盖

    配置如下 /** * Primary:标识为主配置,将默认的配置覆盖掉 * ConfigurationProperties:设置配置来源 * * @return DataSource */ @Prim ...