精通C#學習筆記--C# 與 .NET平臺
.NET之道
1.
NET
執行庫環境
基礎類庫
CTS【公共型別系統】:
執行庫支援的資料型別和程式設計結構
2.
C#所生成的程式碼只能在.NET執行庫中執行。
在.NET執行庫下執行的程式碼,稱為託管程式碼。
包含託管程式碼的二進位制單元稱為程式集。
3.
儘管 .NET二進位制檔案與非託管windows二進位制檔案【.dll,.exe】具有相同的副檔名,但它們的內部是完全不同的。
.NET二進位制檔案,包含的 中間語言和型別後設資料。
一般在 CIL指令被.NET執行庫引用時,才編譯為特定平臺的指令。
4.
5.CTS
.NET中,型別是一個一般性的術語,指的是 集合{類,介面,結構,列舉,委託}裡的任意一個成員。
5.1.CTS類型別
class Calc
{
public int ......
{
return ......
}
}
類的特徵:
密封性:密封類不能作為其它類的基類
類可實現介面
5.2.CTS介面型別
public interface IDraw
{
void Draw();
}
5.3.CTS結構型別
struct Point
{
public int xPos;
public Point(int x)
{
xPos = x;
}
public void PrintPos()
{
Console.WriteLine("({0}, {1})", xPos);
}
}
5.4.CTS列舉型別
派生自基類 System.Enum
enum CharType
{
Wizard = 100,
Thief -200
}
5.5.CTS委託型別
類似於函式指標。
派生自System.MulticastDelegate,用delegate來宣告。
delegate int BinaryOp(int x, int y);
5.6.CTS型別成員
5.7.CTS資料型別
System.Byte byte
System.SByte sbyte
System.Int16 short
System.Int32 int
System.Int64 long
System.UInt16 ushort
System.UInt32 uint
System.UInt64 ulong
System.Single float
System.Double double
System.Object object
System.Char char
System.String string
System.Decimal decimal
System.Boolean bool
6.CLS
描述了支援.NET的編譯器須支援的最小的和完全的特徵集。
// 讓編譯器按CLS檢查
[assembly: CLSCompliant(true)]
7.基礎類庫
.NET提供了大量的基礎設施。
需要對這些基礎設施進行了解,它們是.NET下程式設計的基礎。
System
System.Collections
System.Collections.Generic
System.Data
System.IO
System.Reflection
System.Runtime.InteropServices
System.Drawing
System.Windows
System.Windows.Controls
System.Windows.Shapes
System.Threading
System.Threading.Tasks
System.Xml
需要用到特定程式集時,進行有針對性的學習。
邊幹邊學。
8.關於.NET的跨平臺
C#
CIL
程式集
.NET命名控制元件
執行時引擎結構
是國際規範。
Mono提供了 符合標準定義的
C#編譯器
.NET執行時引擎
使其可在linux等其它系統使用。
構建C#應用
1.構建C#應用
4.1.csc.exe
1.把csc.exe所在路徑新增到環境變數
2.開啟cmd,轉到原始檔所在路徑
3.csc /r:System.Windows.Forms;…; /t:exe xx1.cs xx2.cs …【編譯器會自動引用一些.NET核心程式集】
4.2.ildasm.exe【用於檢視編譯後.exe,.dll資訊】
1.把ildasm.exe所在路徑新增到環境變數
2.開啟cmd,轉到目標exe或dll所在路徑
3.ildasm xx.exe xx.dll
4.3.C#響應檔案【.rsp】
C#響應檔案,包含原始 編譯時,指令資訊。
1.把csc.exe所在路徑新增到環境變數
2.開啟cmd,轉到C#響應檔案所在路徑
3.csc @name.rsp
存在預設C#響應檔案 【與csc.exe放在同一目錄】
編譯時,指定 /noconfig 來通知不使用預設的C#響應檔案。
2. .NET SDK文件系統
.NET提供了大量的基礎類庫。
這些類庫構成了.NET下功能開發的基礎。
需要花費時間,學習相關的類庫。
相關文章
- 精通C#學習筆記---C#核心程式設計結構C#筆記程式設計
- C#學習筆記C#筆記
- C#特性學習筆記C#筆記
- C#字串學習筆記C#字串筆記
- C#學習筆記2C#筆記
- c#學習筆記(一)C#筆記
- 【C#學習筆記】Hello WorldC#筆記
- C#學習筆記(一) (轉)C#筆記
- 我的C#學習筆記14C#筆記
- 我的C#學習筆記1C#筆記
- unity學習筆記-C#協程Unity筆記C#
- 【C#學習筆記】函式呼叫C#筆記函式
- 【C#學習筆記】陣列使用C#筆記陣列
- 【C#學習筆記】指標使用C#筆記指標
- 【C#學習筆記】改變字型C#筆記
- 【C#學習筆記】讀檔案C#筆記
- 【C#學習筆記】寫檔案C#筆記
- C#學習筆記——Show()與ShowDialog()的區別C#筆記
- 【C#學習筆記】結構體使用C#筆記結構體
- 【C#學習筆記】List容器使用C#筆記
- 【C#學習筆記】儲存檔案C#筆記
- 【C#學習筆記】Dictionary容器使用C#筆記
- 【C#學習筆記】函式過載C#筆記函式
- 【C#學習筆記】播放wav檔案C#筆記
- 【C#學習筆記】型別轉換C#筆記型別
- 【C#學習筆記】smtp發郵件C#筆記
- C#多執行緒學習筆記C#執行緒筆記
- C#學習筆記之值型別與引用型別C#筆記型別
- 京東量化平臺學習筆記筆記
- C# 多執行緒學習筆記 – 1C#執行緒筆記
- 【C#學習筆記】LinkedList容器使用C#筆記
- 【C#學習筆記】圖片畫素操作C#筆記
- 【C#學習筆記】獲得本機IPC#筆記
- SQL Server工作平臺學習筆記SQLServer筆記
- C#學習筆記(與Java、C、C++和Python對比)C#筆記JavaC++Python
- 【C#學習筆記】獲得系統時間C#筆記
- 【C#學習筆記】呼叫C++生成的DLLC#筆記C++
- 【C#學習筆記】類建構函式使用C#筆記函式