2020年11月1日 星期日

小山的 C# 教學 - 第 50 課 - 泛型 (Generics) 的初步介紹

本課簡介

本課開始正式介紹泛型 (Generics)
泛型不只在 C# 中,在其他程式語言也是很重要的語法
透過泛型可以大幅減少重複的程式碼
同時更進一步提升程式碼的彈性


2020年10月7日 星期三

小山的 C# 教學 - 第 49 課 - 串列 (List)

本課簡介

本課介紹了 C# 中常見的資料結構 - 串列 (List)
串列為非常基礎且易於使用的一種資料結構
可以根據儲存的資料量動態調整所需的記憶體空間
因此常替代陣列用來暫存大量的資料

另外本課也稍微介紹了泛型 (Generics)
讓大家了解如何指定串列 (List) 之中要儲存何種型別的資料


2020年7月21日 星期二

小山的 C# 教學-第48課-介面 (Interface)

本課簡介

本課介紹了介面

介面是 C# 中一個很常用的關鍵字,可以用來建立類似契約的效果
class 若實作某個介面,就必須要完成其中規定的 method
本課介紹了介面的使用情境,以及主要的特色

2020年5月31日 星期日

小山的 C# 教學-第47課-多型性 (Polymorphism)

本課簡介

本課簡介了物件導向的第三項特性多型性 (Polymorphism)
同時我們複習了之前教過的繼承、base 關鍵字與 override 關鍵字
並重新利用這些概念來了解甚麼是物件多型,以及它帶來的好處

2019年12月29日 星期日

小山的 C# 教學-第2.1課-Visual Studio Community

本課簡介

本課介紹了 Visual Studio Community
包括介紹各種 Visual Studio 版本的差異
以及安裝時需要注意的事項等等

因為最初教學使用的 Visual C# Express 已經無法取得
因此推薦學生使用這個版本進行練習

2018年1月19日 星期五

小山的 C# 教學-第46課-五子棋小遊戲(七)-簡單勝利判斷

本課簡介

本課為五子棋系列最後一課
這次的目標就是要寫一個簡單的勝利判斷
來看看怎麼寫吧!

2018年1月16日 星期二

小山的 C# 教學-第45課-五子棋小遊戲(六)-重構與最後準備

本課簡介

本課為五子棋系列第六課
此次會先來修復上次課程最後發現的 Bug
接著稍微整理一下一些遊戲邏輯的程式碼
結尾時來為最後的課程做一些準備!

2018年1月13日 星期六

小山的 C# 教學-第44課-五子棋小遊戲(五)-正確放置棋子

本課簡介

本課為五子棋系列第五課
此次的製作重點在於讓棋子能夠正確地出現在交叉點上

2017年8月13日 星期日

小山的 C# 教學-第43課-五子棋小遊戲(四)-判斷交差點的位置

本課簡介

來到五子棋系列第四課囉!
這課的目標在於讓程式能夠辨識棋盤上的交叉點
讓程式能夠知道玩家是否正在將棋子放到正確的位置上
這對接下來的課程要實作的放棋子以及勝負判斷都很有幫助!

2017年6月22日 星期四

小山的 C# 教學-第42課-五子棋小遊戲(三)-用滑鼠建立棋子

本課簡介

本課繼續製作五子棋小遊戲
這次的重點在於如何藉由滑鼠的點按來在對應的位置建立棋子
此外本課也稍微介紹了一個重要的概念:事件 Events

2017年6月17日 星期六

小山的 C# 教學-第41課-五子棋小遊戲(二)-動態建立棋子

本課簡介

本課承接上一課的專案
將繼續製作五子棋小遊戲

本課主要的重點在於如何使用程式碼來動態建立出棋子
而不是預先將棋子擺放在視窗上來顯示

2017年5月21日 星期日

小山的 C# 教學-第40課-五子棋小遊戲(一)-棋盤與棋子

本課簡介

從本課開始,我們將來製作一個五子棋的小遊戲
五子棋是許多人都玩過的一個簡單的遊戲
並且不需要太難的技巧就可以完成

本課將會先簡單解說規則
並從最基本的開啟專案到放置棋盤與棋子來教學

2016年10月26日 星期三

小山的 C# 教學-第39課-PictureBox

本課簡介

之前的課程中都沒有提及如何在視窗上面放置圖片
今天就來介紹一個簡單的做法
使用視窗元件的 PictureBox

小山的 C# 教學-第38課-Multidimensional Arrarys 多維陣列

本課簡介

之前在 22 課中有教過大家使用陣列
其實那些陣列都屬於一維陣列

陣列除了一維的之外,還可以有更高的維度
這次的課程將教大家如何使用更進階的多維陣列

2016年10月23日 星期日

小山的 C# 教學-第37課-switch 與 enum

本課簡介

本課主要在介紹 switch 與 enum
當我們想判斷某些變數的值來決定要做甚麼事情時
就常會用到 switch

enum 則可以幫助我們定義新的型別
並且賦予其有限的值
switch 跟 enum 兩者間常常會一起出現

小山的 C# 教學-第36課-Constant 常數

本課簡介

本課今天教大家如何宣告常數
常數是一種永存於程式中的定值
不會隨著程式的進行而被修改
在實際生活中有很多應用

2016年5月8日 星期日

小山的 C# 教學-第35課-Abstract Class & Abstract Method

本課簡介

本課目標為教導大家使用 Abstract Class 與 Abstract Method
當今天想要強迫某些衍生類別實作某些功能時
Abstract Method 就很符合需求
而 Abstract Class 又跟 Abstract Method 同進退
接下來就來看看是怎麼一回事吧!

2016年5月4日 星期三

小山的 C# 教學-第34課-Base 關鍵字

本課簡介

本課介紹在繼承中也時常用到的 base 關鍵字
這個關鍵字能讓衍生類別直接存取到基底類別的屬性與方法

2016年3月31日 星期四

小山的 C# 教學-第33課-Protected

本課簡介

之前曾經介紹過可以使用 public 跟 private
來進行 class 內部資源的權限控管

可是有些從 base class 繼承來的資源
如果是 private 的話就無法直接使用
本課介紹如何使用 protected 來使得 base class 的資源
可以讓繼承的 class 來進行存取

2016年3月21日 星期一

小山的 C# 教學-第32課-Override vs Method Hiding

本課簡介

有時候使用 override 的時候常會忘記要加上關鍵字
如果沒有加的話程式仍可以正常執行
但是跑出來的結果卻不太一樣?
這是為什麼呢?