[料理佳餚] 使用 Decorator Pattern 分離參數檢查與資料處理

軟體開發的過程當中,針對傳遞進方法中的參數避免不了一定要做一些像是邊界值、限定值、特殊值…等一堆你想得到的檢查,如果我們把條件檢查跟資料處理放在同一個程式碼區塊,同一區塊的程式碼長度就會增長,自然就會降低閱讀的順暢度。

我也想過用 AOP 的方式來解決,但是沒有想出來一個比較好的設計去處理不同的參數個數、不同的參數型態,以及要檢查的邏輯,想來想去 Decorator Pattern 雖然會多出一些類別,但能做好「關注點分離」,這一點點的 effort 是可以接受的。

...繼續閱讀 »

[食譜好菜] 能不能講一下什麼是泛型(Generics)?

  • 23234
  • 0
  • C#
  • 2016-03-26

被問到「你能不能講一下什麼是 C# 中的泛型?」,這個時候我突然覺得泛型離我好遠、好遠…,明明平常用很多,常常見面啊!為什麼現在講不出來!? Orz…

原來我平常只懂得用,其實對於它的定義、限制不是很了解,稱得上是不學無術,今天被問到這個問題算是有一個機會可以讓我了解「泛型」這個好朋友,特此記錄,以示提醒。

...繼續閱讀 »

[食譜好菜] 常在面試出現的題目:SQL Injection

  • 3699
  • 0
  • C#
  • 2016-03-20

「你如何預防 SQL Injection?」這個問題已經成為了一個顯學,現在我們寫程式如果沒有把解決 SQL Injection 的方式變成習慣,我們就絕對是個不及格的程式設計師,一個領域如果夠成熟,那這個領域會累積一定厚度的必學項目,像 SQL Injection 的問題就是累積來的,面試也常常會問。

...繼續閱讀 »