我是一個高中生,九月時算是正式高二了,在這暑假兩個月的時間接觸了部分語言,從資處科的製作網頁導致接觸javascrip看了一些教學影片可卻沒能體會如何運用變成重複的使用addEventListener和function封裝更改css的程序,暑假的一開始在某中壢大學接觸了C/C++ (沒有物件導向) 很平凡的If...else Switch for while do...while以及函式(function/或稱子程式)以及部分資料型態與指針大約三天的課程外加2天的VBA,這主要是因應APCS的考試 (筆者還沒考過不知道如何呢) ,八月多找了三個朋友去Python營隊兩天,實際上還是跟某中壢大學一樣我們都還是在用 ((那幾個)) ,資處科二年級要學程式語言,這個語言名稱VB,傳說中被譽為最適合新手的語言但是從語法結構上分析會發現這是比較偏向英文比較強的人 (筆者英文不好QQ ) 我們來嘗試比較VB與 C# 代碼
Module Module1
Class program
Sub Main()
Dim logic As New Logic
logic.Name = "DE"
Debug.WriteLine(logic.Name)
End Sub
End Class
Class Logic
Private _name As String
Public Property Name() As String
Get
Return _name
End Get
Set(ByVal value As String)
If value = "" Then
_name = "沒名子的死小孩"
Else
_name = value
End If
End Set
End Property
End Class
End Module
namespace ConsoleApp1
{
class Program
{
static void Main()
{
Logic logic = new Logic();
logic.Name = "DE";
Console.WriteLine(logic.Name);
}
}
class Logic
{
private string _name;
public string Name
{
get
{
return _name;
}
set
{
if (value == "")
{
_name = "沒名子的死小孩";
}
else
{
_name = value;
}
}
}
}
}
相比之下我覺得c#更加簡潔有力且讓英文恐懼症的人能更加舒緩許多,且unity是採用C#的遊戲開發引擎,C#也適合當作遊戲設計師的語言選擇
python也算是英文挺多的語言甚至有時候還會感覺黏在一起因為沒有所謂的 {}
C++ 的class宣告等等都比較麻煩總結來說C#相比比較好入門
大約8月開始我看了小山的c#教學以及鐵錳的c#語言入門詳解長達一個月的時間
這次的鐵人賽就當作一個紀錄筆記也不錯或是給那些0基礎的人當作學習的參考
如果要認真說這個必然會說很久等待我們遇到迴圈以及疊代時候我們會稍微說明一下計算,各位只要記住我們並不需要算出真正的時間需要花多少,而是在我們運行這個程序時帶入的變數會被運行幾次即可,我們應該盡可能的壓低所要時間,他的單位叫做BIG O是種漸進時間複雜度。
空間複雜度與時間複雜度往往是相對的(一邊高另一邊則低),在講解變數以及陣列時候會給予計算說明,其定義為過程產生了幾個變數,當變數越多我們記憶體吃的量也越多。
正確性是指我們程序的三步驟 輸入-處理-輸出 的輸出是不是正確。
可讀性非常非常的關鍵,在我們學習語言一人開發時候我們往往會使用獨創語言如DD,CC,ABD,VS這類語言或是我們把私人字段,公開資段都用小寫或全部大寫等等這些不符合命名原則的事情,如果發生在一個一個團隊裡面會導致所有人都讀不懂整個團隊運行效率變成低的難以言語,所以說呢可讀性正是他人對於我們寫CODE能理解的程度。
這邊說的IDE絕對絕對並不是指硬體接口那個IDE喔XD!!!!
而是指編輯程序與匯出程序的整合開發環境(Integrated Development Environment),在這套軟體的幫助下我們很便利的撰寫C#,常見的IDE有
Visual Studio 2019 下載點
檔案開起來必須下載
以及最下面的
這樣就可以進行C#的程序開發
在軟體開啟時會呈現這樣
選擇建立新的專案
找到控制台專案兩個都可以推薦選下面的
點擊下一步應該會呈現這樣
專案名稱與解決方案名稱先不要理會沒關係可以先把兩者命名統一化
架構則是其框架和語言版本建議選最新
位置則是這個專案的位置(記住專案本身就是一個資料夾,所以不用怕檔案膨脹的問題)
建立好應該會長這樣
以後如果要編輯的話就點ConsoleApp1(這是專案資料夾)裡面的ConsoleApp1.sln即可編輯
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApp1
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("你好C#");
Console.ReadLine();
}
}
}
並點擊Visual Studio 2019上方的DEBUG右邊綠色開始按鈕
接者我們來用圖片說明一下上方代碼的構造
在編成命名中我們要盡量避免使用Main這個詞(這並不是說不能寫Main_killr),因為static void Main()代表的程序進入點也就是程序會根據裡面內容進行運作,而當擁有兩個static void Main()方法編譯器便不能編譯因為這代表有一個以上的進入點是不正常的而()裡面的string[] args 則是當程序開始時會帶入的數組正常來說並不會使用且可以直接刪掉但()這兩個並不能刪掉!!
輸入 輸出 聲明變數 資料型態