恩, 題目定的很偉大的樣子.. 其實只是個不起眼的小技巧而以.. 以往開發網站程式都要裝 IIS, 到 visual studio 2005 後就有內建的 Develop Web Server 可以用.
不過還是很麻煩, 比方說我另外一篇文章講到 NUnitLite 在 Web Application 上的應用, 我有提供 sample code, 抓下來後, 你可能會把它放到 iis 做些設定跑看看, 或是直接用 visual studio 2005 開 web site 後按 f5 跑看看… 兩種方式看來都很麻煩, 尤其我用 notebook, 開個 visual studio 2005 要等半天, 不是很有吸引力的 code 我可能就懶的開了, 哈哈..
上篇因為貼 code , 放一起實在太長了, 只好分兩篇… 吊完胃口, 不囉唆了, 直接看我想出來的解法. 原則還是跟一般的函式庫一樣, 我希望先做出一個 base class, 把 singleton 的實作細節都處理掉, 函式庫的目的是讓使用你 lib 的人會很快樂才對, 因此 base class 可以辛苦點沒關係, 但是絕不能讓用你 code 的人得做苦工…
好了, 我實做出來的版本, code 如下:
public class GenericSingletonBase<T>
where T: GenericSingletonBase<T>,
new()
{
public readonly static T Instance = new T();
}
聽起來 singleton 跟 generic 好像搭不上邊, 不過搭配 .net framework 2.0 的 generic 機制, 倒是可以讓 singleton 好做很多… 我先簡單寫一下不使用 generic 時的做法…
只有單一 class 要實作 singleton 很簡單, 只要寫這樣的 code 就可以:
最近裝了台 PC, 灌了 MCE 2005 … 用起來只有一個字… 爽!!!
最近台灣引進了 TiVo 這套系統, 應該不少人聽過吧? PC + TV card + MCE2005 就是像 TiVo 這樣子的東西, 只不過都是 Microsoft 靠一堆軟體弄的… 不用額外買專用的機器, 也不用像 TiVo 要付月租費…
用起來如何? 就是用電腦看電視而以, 我沒有接在電視上, 而是直接用 LCD monitor 看, 爽度差了點, 不過我也習慣了, 我們家都是用 monitor 在看電視… 哈哈. 用 MCE 跟一般 TV card 付的軟體看電視, 差別蠻大的… 我列幾個我覺的特別好用的地方:
期待了半天的G7, 等著把用了多年的G2換掉的新機, 沒想到這麼令人失望…
早就有要換掉G2的打算了, 不過一直找不到合適的機種, G2其實我用的很滿意, 只是有些地方還是可以改進改進…
不過想要保留的優點有: