EventHandler 是什麼? 會特別再寫這一篇,
是因為在初學的時候一直分不清楚 EventHandler 與 Event、Delegate 的關係,
加上看大話設計模式的時候,作者直接將 EventHandler 當作宣告 Delegate 的名稱,
讓我更加混亂了,看了好幾篇之後,才慢慢釐清他們之間的關係。
EventHandler 是什麼? 會特別再寫這一篇,
是因為在初學的時候一直分不清楚 EventHandler 與 Event、Delegate 的關係,
加上看大話設計模式的時候,作者直接將 EventHandler 當作宣告 Delegate 的名稱,
讓我更加混亂了,看了好幾篇之後,才慢慢釐清他們之間的關係。
熱心的同事給我一個程式範例,
但他使用的版本比較新,是 .NET 5.0,並以 Visual Studio 2019 建立的專案,
我目前使用的是 .net Framework 4.7.5,因此下載了最新的 .NET 5.0,
結果原本使用Visual Studio 2015開發中的一些 MFC 專案卻無法載入。
前一篇 Observer Pattern 觀察者模式 提到一些可以透過 Delegate 與 Event 克服的問題,
最主要去克服的概念就是 " Subject 通知者 與 Observer 觀察者 耦合在一起" ,
白話一點要克服的就是" Subject 的視野必須有 Observer ,Observer 的視野也必須有 Subject "。
這篇就來示範如何操作 Delegate 與 Event 來解耦,程式碼請參考 Chapter_14.2。
再來一個已經在使用的設計模式,其實它就是 Event 的概念,但還是有點不同,
順序是這樣的,先有了 Observer 觀察者模式,用久了發現還是有些問題無法克服,
便發展出 Delegate 委派 與 Event 事件 來克服,讓人更便利的去使用。
由於自己的工作中不曾使用過類似Builder Pattern的情境,
因此剛讀完並沒有特別深刻的體會與連結,
但我盡量地去找出能應用的場景應該是什麼,來加強這個Pattern的學習記憶。
這不就是把相同的程式碼,提煉出來組成abstract class嗎?
其實大話作者提到了 Pattern Method 的真正重點:
" 定義一個操作中的演算法骨架,而將一些步驟延遲到子類別中。 "
我的觀點是,在 沒有很多 本錢 的情況下, 別寄望每個月幾千元放到股票或者最近很夯的高股息ETF就能讓你致富, 先投資自己,讓自己的本業收入提高吧。