活動簡介

提醒您!

此為歷史活動,如您對本活動有興趣,您可以從以下管道得到我們最新活動資訊:

輕鬆學會物件導向(使用C#)

活動規劃

物件導向真的沒那麼難,挑對好業師可以用最短的時間幫你灌頂,看書看了一堆,公司專案也拿來實驗好幾個了總是感覺少了什麼?

業界師資的好處就是踩過的雷💣很多,排除的雷更多,藉由經驗傳承可大幅縮短學員自我學習的撞牆時間🤯,課程結束後回去實做遇到了困難也不用擔心,SkillTree 提供了多種免費詢問管道(線上線下都有)只要你想學我們都很願意教🤜

不知道物件的職責是什麼?
不知道好維護、易擴展的程式要怎麼設計?

程式開發也好多年了,對於物件導向的概念還是半知半解?一切的工法與設計模式都是先從基礎的「物件導向」學起,融會貫通以後你會發現,以上都不再困難!因為觀念通了,一切就通了。

活動等級:初階→中階

活動講師

Bill
Bill

熱衷於物件導向程式開發的探索,喜歡研究物件導向基本理論與歷史,並偏好以非技術性的方式傳達物件導向開發的概念。專長領域為 RFID、通訊、OOP 與 Windows Store/Phone App 開發。

講師經歷:
  • 2009-至今 微軟最有價值專家 Microsoft MVP  Development Technologies
  • 台灣微軟 特約講師
  • Intel 特約講師
  • 全球前25大電子公司 UWP 顧問
  • SkillTree 專任講師

活動介紹

  • 一切從型別開始
    • .NET 型別
      • 五大型別
      • 參考型別特徵 
      • 型別物件與參考型別執行個體比較
      • 實值型別特徵
    • 型別變異性
      • 不變性、共變性與逆變性
    • 變數
      • 變數內容
    • 指派運算子的運作
  • 泛型的設計
    • 泛型的定義
    • 泛型條件約束
    • 泛型中的靜態設計
  • 成員的設計
    • 欄位
      • 欄位的定義
      • 欄位的設計
    • 屬性
      • 屬性的定義
      • 屬性的設計
    • 方法
      • 方法的定義
      • 方法封裝設計
      • 方法參數設計
      • 方法的繼承式多型設計
      • 方法多載設計
      • 靜態方法與擴充方法的設計
      • 區域方法的設計
      • 執行個體與靜態方法的選擇?
    • 建構式
      • 建構式的定義
      • 基底與衍生型別建構式的關係
      • 建構式多載設計
      • 物件的建構流程
    • 事件
      • 事件的定義
      • 事件的設計
      • 非同步議題
    • 索引子
      • 索引子的定義
      • 索引子的設計
      • 唯讀索引子
    • 常數
    • 巢狀型別
  • 抽象通論
    • 定義抽象
    • 類別與演算法的抽象
  • 結構的設計
    • 結構的定義與特徵
    • 結構設計方針
    • Framework 中重要的結構型別
      • Nullable<T>
      • ValueTuple 家族
      • ValueTask 與 ValueTask<T>
    • Boxing & Unboxing
      • Boxing 原理
      • 利用泛型解決 Boxing 問題
    • 防禦性複製
  • 類別的設計
    • 類別的定義與特徵
    • 類別的設計
      • 內聚性
      • 抽象類別
    • 靜態類別的設計
  • 介面的設計
    • 介面的定義
    • 實作介面成員 (< C# 8.0)
      • 一般實作
      • 抽象實作
      • 明確實作
    • 介面的擴充設計
    • C# 8 對於介面的增強
    • 泛型介面的變異性設計
  • 委派的設計
    • 委派的定義
    • Framework 中既有的委派型別
    • 非泛型委派的變異性議題
    • 泛型委派的變異性設計
  • 列舉的設計
    • 列舉的定義
    • 使用列舉的意圖
    • 旗標式列舉
  • 不可變設計
    • 不可變設計的定義
    • 不可變設計方針
  • Lambda 與 迭代器
    • Lambda 的演進
    • 迭代器原理與實作
  • 反射
    • 何謂反射
    • 動態載入組件
    • 動態建立執行個體
    • 取得成員資訊
    • 反射與泛型
  • Attribute
    • Attribute 的定義
    • 自訂 Attribute
    • Attribute 參數
    • 使用自訂 Attribute
    • Attribute 應用實例
  • SOLID 六大原則
    • 單一職責
    • 里式替換
    • 倚賴倒置
    • 介面隔離
    • 開閉
    • 最小知識
  • 物件導向設計應用
    • 三原則定義
    • 三原則的運用實例
    • 類別與介面的選擇
    • 介面與委派的選擇
    • Enumerable.Where 的設計之美
    • DI 與 IoC
    • 聚合設計
  • 基礎重構
    • 何時需要重構?
    • 基本重構技巧

 

講者的話

C# 是一個入門輕鬆的程式語言,也因為如此常忽視它博大精深的內涵。身為一個程式開發者,我特別喜歡研究這些基本的道理與其應用,將其發揮在真實的專案上,體會這些基本原理與原則的純淨與美麗,徐徐地向高可讀性、高維護度的設計開發理念前進。
在一個講師的身份來說,我試圖用更淺顯、更接近生活的方式講述與解釋這些硬梆梆的論述;個人一直相信一件事情,一個講師越了解他要講述的內容,就越容易使用平易近人而且正確的方式清楚地表達看似難以輕易理解的內容。

我是一個說故事的人,說的是 物件導向、C# 與 .Net Framework 的故事。

注意事項

  • 本課程不適合完全沒寫過 C# 的開發者。
  • 本課程不適合不寫程式的管理者。
  • 為避免清脆的鍵聲影響其他朋友,誠摯的懇求您不要攜帶機械式鍵盤
  • 本活動常態性免費延長時數(最高記錄18:00)如您晚上有約或預定車票,請斟酌延後。

學員評價

  • 針對自己不熟的,透過本次課程,有開頭認識,會再深入了解;本來以為熟悉的,卻發現原來是一知半解,這是課後最大的體認,還有很多要惡補的,十分感謝有此課程。
  • 個人這次從老師課程收穫非常多,老師專業非常強,表達方式也夠清楚,但因台灣學生總是比較害羞,比較不敢表達自己,感覺學員跟老師互動比較少,但已經比XX好太多了
  • 繼 上次NFC之後,是第二次聽 Bill 叔講課;本次他舉很多例子來說明很硬的課程內容,ex 車輪餅 封裝、火災 委派、等比喻,課程的例子有這麼多變化,十分有趣。記得第一堂課,嘆了一口氣,當天聽完真的覺得很慘,甚麼都不會;三天課後的現在,很感謝 Bill 叔 本次的開導,真的覺得太強了。
  • 圖形表示與看程式碼範例,確實在吸收與理解上非常有幫助。
  • 對C# 很深入,觀念很明確,解開了我很多的不了解的部份。
  • lab的部份非常多(讚),但是有些自己看會看不太懂怎麼用,如果可以稍微標一下lab順序或說明(搭配講議會比較好找)。
  • 幽默風趣、例子多,很棒!!會舉一些比較容易理解說明。
  • 老師很棒 盡全力把內容講給大家。
  • 講師在分享實例時,有些聽的當下會產生共嗚。
  • 無可挑替,就是專業。
  • 能力很好,對OOP有深刻理解。
  • 老師講得很清楚夠專業,有條理式教學。
  • 老師專業 講解詳細淺解易懂的舉例,觀念釐清面對面的教學,面對面的解惑。
  • 講師注重課程每個細節,講解不馬虎。
  • 課程案例頗多,方便容易了解課程內容。
  • 講師所分享在業界遇到的案例,以及他是如何處理。
  • demo 會出現令第一次參加SkillTree的我感到些許的意外,畢竟參加的課程不是他所開設的課程,願意協助講師處理一些小事務,看來demo前輩也是很重視課程品質且協助學員遇到的任何事務。 這三天課程下來,講師說的很專業,也很認真,聽了都想要一直聽下去,意猶未盡,但是修行靠個人,除了聽了講師的課程當下有感之外,也希望在實戰上可以真的把講師們所講的情境處理到最好。

過往上課片段

售後服務

我們提供多種的售後服務,目的是希望您確實學到,並且持續進步,

還想知道什麼就留言吧

持續學習

  • 我們使用 Microsoft Teams 做課程討論平台。了解更多

注意事項

  • 若報名人數不足15人,或因不可抗拒因素(如:天災、停電)主辦單位有權取消當次活動,並無息退還全額活動費用。
  • 主辦單位保留接受報名與否之權利,倘因故無法接受報名,將會無息退還全額活動費用。
  • 主辦單位保留對活動內容調整的權力。

退款方法

  • 因部分必要支出與行政費用,完成繳費後如取消報名,將依據時間遞減退還費用。
  • 活動前7天申請退費,退費用0 %
  • 活動前8天申請退費,退費用90 %
  • 收到申請表後我們會主動與您聯繫。

目前活動