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. Unity 随机地图房间通道生成

    之前的博客中已经说了随机房间生成: https://www.cnblogs.com/koshio0219/p/12604383.html 但实现房间生成只是整个地图生成最初最简单的一步.下面讨论如何随 ...

  2. PDF各种骚操作如何用python实现

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者: wLsq PS:如有需要Python学习资料的小伙伴可以加点击下方链 ...

  3. Python的6种方式实现单例模式

    单例模式是一个软件的设计模式,为了保证一个类,无论调用多少次产生的实例对象,都是指向同一个内存地址,仅仅只有一个实例(只有一个对象). 实现单例模式的手段有很多种,但总的原则是保证一个类只要实例化一个 ...

  4. Go gRPC进阶-proto数据验证(九)

    前言 上篇介绍了go-grpc-middleware的grpc_zap.grpc_auth和grpc_recovery使用,本篇将介绍grpc_validator,它可以对gRPC数据的输入和输出进行 ...

  5. 5. react父子组件

    1. 父组件如何获取子组件的方法以及属性? 1.)父组件: render( ){ console.log( this.refs.getmethod ): return ( <div> &l ...

  6. 常问的MySQL面试题整理

    char.varchar 的区别是什么? varchar是变长而char的长度是固定的.如果创建的列是固定大小的,你会得到更好的性能 truncate 和 delete 的区别是什么? delete ...

  7. 尝试用Vue.js开发网页小游戏的过程

    准备 首先去官方下载并安装VSCODE,下载地址 https://code.visualstudio.com/.安装后打开会发现是英文版的,需要去安装插件来汉化.具体是在扩展插件搜索chinese,选 ...

  8. 2019-2020-20199303《Linux内核原理与分析》第四周作业

    构造一个简单的Linux内核 Linux是一种开源电脑操作系统内核,它是一个用C语言写成.主要子系统: 1.系统调用接口 2.进程管理 3.内存管理 4.虚拟文件系统 qemu是一个开源模拟处理器,在 ...

  9. 基于 Docker 构建企业 Jenkins CI平台

    持续集成(Continuous Integration,CI):代码合并.构建.部署.测试都在一起,不断地执行这个过程,并对结果反馈. 持续部署(Continuous Deployment,CD):部 ...

  10. java1-3总结 19201421-吴志越

    关于最近几次作业,从C语言到Java的过渡,也就是从面向过程到面向对象的过渡.其中,一共有三次作业,前俩次可能更加偏向于过程的设计,利用C语言的想法就可以完成,但是,从需要使用类的开始,就逐渐向对象偏 ...