引擎抽離
為何要抽離引擎
將重要的演算法獨立出來, 並編譯成dll檔, 這叫引擎抽離. 在一個專案中, 將開發出來的重要程式碼, 加以整理並獨立成一個class, 編譯成SDK(類別庫). 這不僅可以賣給別人, 也成為下個專案的引用類別. 這是程式設計師的價值, 具有快速開發的能力. 且因轉成二位進碼, 不需交付原始碼, 保護自己的智慧財產
類別庫專案建立
新增專案, 選擇類別庫 .NET Framework. .專案名請愖重選取. Net Standard具說是建立可以跨平台(Linux, Mac)的SDK, 但經測試, 無法引入其他元件.
引入常用的Window元件
為了使用常用的元件, 如Button, PictureBox等, 先加入/新增項目/選Windows Form, 加入後, 在檔案總管裏就會設定好各項參考, 然後就可以把Form1.cs刪除掉
啟用資源檔
C#可以在SDK綁定資源檔, 這點就比Java方便多了. 在Java中, jar無法引入資源檔, 但Android的aar檔有改進, 也可以綁定資源檔.
請在專案按右鍵/加入/資源檔, 名稱改為Resource.resx
然後於檔案總管的Resource.resx按視下, 點選左方上的影像, 加入資源選取加入現在檔案, 再選取硬碟上的圖片, 即可將圖片置入資源檔內
開始撰寫類別庫
public class Pokemon:PictureBox
{
public Pokemon(int x, int y)
{
this.Image = MahalSdk.Resource.pokemon;
this.SizeMode = PictureBoxSizeMode.StretchImage;
this.Size = new System.Drawing.Size(100, 100);
this.Location = new System.Drawing.Point(x, y);
}
}
編譯
在方案按建置方案, 或於專案按建置, 即可於 obj\Debug之下出現 dll檔

I am really impressed with your writing skills and also with the layout on your weblog.
Is this a paid theme or did you customize it yourself?
Anyway keep up the nice quality writing, it’s rare to
see a nice blog like this one nowadays.