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

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