3分钟教C#入门

前言

正在持续更新

直到教完C#基础...

目前进度30%...

 

开篇

今天,开启一个教程,教C#编程入门。

相信大家初看代码,都不懂是什么,还记得我初学编程的时候也是什么都不懂,光看着代码,然后老师解释意思,什么是面向对象、类、变量等...老师张口就来,我完全没有理解,然后很快就忘了是什么,用来做什么,在学了2年的时候,依然一片迷茫,就犹如一个摩天大厦,老师每节课只给一块砖,这样永远都摸不清这个大厦的结构和怎么建成。

所以我会先生动形象的说明每一句代码干的事情,即使看不懂代码意思和写法,只需要听懂我比喻的结构,就能理解代码的大概,然后我再说明代码用法和编写结构。

 

我们先来看一份经典的C#Hellow代码。

using System;
namespace HelloWorldApplication
{
   class HelloWorld
   {
      static void Main(string[] args)
      {
         Console.WriteLine("Hello World");
         Console.ReadKey();
      }
   }
}

 

生动形象的说一下编程是怎么一回事

首先,编程有些职业也被称为工程师。

为什么会叫工程师呢?工程师不是在工地搬砖的吗(笑)

因为编程就和造房子很像,说到造一间房子,大家会想到要怎么造呢?

...

一般来说,造一个房子,会先打地基,结构上会有门口、卧室客厅等,装饰和用品上会有家私、装饰品、生活用品和空调wifi。

光有空调wifi,还要有电!但是发电厂又非常的大,房间内总不会弄一台发电机,所以还要连接水电。

为什么要提到以上的这些事情,因为这些事或多或少地会体现在你编写的代码项目内。

接下来我来说明一下这些事情,对应了你编程上的什么。

造房子即是整体,对应整个项目。//TODO 超链接到MSDN

大到核发电厂,小到空调外机,对应了引用库。

门作为入口,对应代码的Main方法

卧室厨房,对应不同的系统或代码块

每个一个东西可例如书本床,对应不同的对象

不同的对象有不同的数值和特性,例如床有宽度长度、书本有售价,对应变量、常量、方法等..

每个东西又有想让人看见的,也有不想让人看见的,对应代码不同的保护程度

粗体的字都是一些编程上的专业术语,也就是我学生时期的时候,听到老师说出来又不理解的事情,但现在我通过比喻地讲解了,而且完全可以用这些术语和程序员交流。

有了这些基础的了解之后,就可以尝试去阅读代码了。

 

上代码!

说完以上这些,我们再回来看看代码。看看是否都能看懂了呢?

/*引用库,就像我们造房子需要发电厂、煤气、空调外机*/
using System;   
/*命名空间,相当于住址一样*/
namespace HelloWorldApplication
{ 
   /*类名为HellowWorld,相当于你的房子*/
   class HelloWorld   
   {           
      /*Main函数,相当于房子入口*/
      static void Main(string[] args)
      {
        /*在方法内可以写具体代码,每一句代码,就相当于做了一件事情,比如你想让空调制冷。*/
         Console.WriteLine("Hello World");
         Console.ReadKey(); 
      }
   }
}

你会发现,即使你不懂代码,在看完“造房子”这个比喻之后,然后看着单词对应的中文意思,你大概可以猜到代码要干一件什么事情。

看到这里,大家是否对代码稍微有点看的懂了呢?

 

尝试看一份Unity的移动代码

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TestMove : MonoBehaviour
{
    public float moveSpeed = 5f;

    void Update()
    {
        if (Input.GetKey(KeyCode.W))
        {
            transform.Translate(Vector3.forward * moveSpeed * Time.deltaTime);
        }
        if (Input.GetKey(KeyCode.S))
        {
            transform.Translate(Vector3.back * moveSpeed * Time.deltaTime);
        }
        if (Input.GetKey(KeyCode.A))
        {
            transform.Translate(Vector3.left * moveSpeed * Time.deltaTime);
        }
        if (Input.GetKey(KeyCode.D))
        {
            transform.Translate(Vector3.right * moveSpeed * Time.deltaTime);
        }
    }
}

 

上手熟悉IDE

vs的使用,新建项目,什么类型的项目是怎样的,

如何检测代码正确,如何看错误定位错误,

如何运行,如何调试,快捷键

 

学习C#全部内容

微软

菜鸟教程

 

简介

  • 现代的、通用的编程语言。
  • 面向对象。
  • 面向组件。
  • 容易学习。
  • 结构化语言。
  • 它产生高效率的程序。
  • 它可以在多种计算机平台上编译。
  • .Net 框架的一部分。

 

基础1 - 程序结构与基本语法

C#是一门语言,语言就会有语法,这是约定,不太需要记住,看多和练习多之后,就会和说话一样自然。

解释格式 

语句: 语句 + ;

定义变量格式:  修饰词 + 类型 + 名字 + ;

定义方法: 修饰词 + 返回类型 + 名字 + (参数) + {  + 内容 + } 

解释语法: 等号 运算+-*/

调用变量: 类.变量

调用方法:类.方法(参数)

 

Work1

自学网站

 

基础2 - 数据类型,变量与常量,输入输出语句

类型:int, float , double ,string,bool,

定义变量:<data_type>  <variable_list>;

变量初始化:variable_name = value;

定义常量:const 

​
using System;
namespace HelloWorldApplication
{
   class HelloWorld
   {
      string printStr = "Hello World";//成员变量
      static void Main(string[] args)
      {
         int times = 3;//局部变量
      }
   }
}

​

 

Work2

1、输出金字塔 

 

基础3 - 运算

运算语句 +-*/

运算语句2 sqrt aver

运算 - 临时变量

 

Work3

1、输入一个三位的整数,计算其每位数字的累加之和。例如:输入整数123后,其每位数字累加之和为6(1+2+3)

2、输入三个整数a、b、c的值, 输出表达式:b2-4ac的值。

3、输入 直角三角形的两直角边a、b的长度,输入其斜边c的长度;

4、输入三个双精度数,求它们的平均值并保留此平均值小数点后一位数,对小数点后第二位小数进行四舍五入,最后输出结果;

5、输入长方形的长度、宽度,输出其周长与面积。

6、输入两个实数,输出其较小值。

7、若a的值小于100且大于等于0,请将以下选择结构改写成由switch语句构成的选择结构:

if (a<30) m=1;

else if (a<40) m=2;

else if (a<50) m=3;

else if (a<60) m=4;

else  m=5;

8、以反序方式输出26个大写字母(即 Z Y X … B A)

9、计算 1+3+32+33+…+310的值;

10、计算 1!+2!+3!+…+15!的值。

 

Unity快速做一个游戏

3d横版游戏,具有移动、动画播放、攻击逻辑、敌人AI、血量

 

基础4 - 判断与循环

if语句 for语句 while语句,switch语句,do...while语句

 

基础5 - 封装

基础6 - 方法

基础7-可空类型

基础8 - 数组,字符串,结构体,枚举

基础9 - 类 构造函数 析构函数 虚函数

基础10 - 继承

基础11 - 多态性

基础12 - 运算符重载

基础13 - 接口

基础14 - 命名空间

基础15预处理器指令

基础16正则表达式

基础17异常处理

基础18文件的输入与输出

 

高级

高级1-特性

高级2-反射

高级3-属性

高级4-索引

高级5-委托

高级6-事件

高级7-集合

高级8-泛型

高级9-匿名函数

高级10不安全代码

高级11多线程

 

数据结构

数组,map,hash,array,list,dictionary,

 

计算机组成原理

计算机码   与或   系统运行原理  位移

 

图形学

绘制窗口

缓冲区

D3D

 

设计模式

工厂模式

 

单元测试

 

Unity

10分钟做一个简单的Unity小游戏 FPS游戏快速做成

 

基础学习

移动 input component monobehavic...

 

后记

https://blog.csdn.net/qq_35246620/article/details/78149036

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章