Software entities (class, modules, functions, etc.) should be open for extension, but closed for modification. Junior programmers create simple solutions to simple problems. Senior programmers create complex solutions to complex problems. Great programmers find simple solutions to complex problems. 註1:本部落格的範例程式碼在 2015 年以前的文章中,大多是以全型空白做縮排。如需服用,請自行用文字編輯器的取代功能把全型空白取代成半型空白。
- Bertrand Meyer
- Charles Connell
註2:本部落格的內容授權請參閱部落格底部的授權宣告。
2014年2月20日 星期四
Vector vs ArrayList vs HashSet
記錄一下在 Java Code Geeks 上看到的文章 [1],主題是做 Vector、ArrayList 跟 HashSet 的比較。
2014年2月19日 星期三
2014年2月14日 星期五
Java 的記憶體配置(Global、Stack、Heap)
在 JVM 中,記憶體區分為 Global、Stack 和 Heap 兩種,各自存放不同的東西
大致來說,Global 存放靜態的變數、Stack 存放 method 以及非 class member 的 primitive type,Heap 則存放所有的物件以及相依於物件的 class member。
大致來說,Global 存放靜態的變數、Stack 存放 method 以及非 class member 的 primitive type,Heap 則存放所有的物件以及相依於物件的 class member。
2014年2月12日 星期三
設定 MongoDB 中資料的存活時間(TTL)
自從 MongoDB 2.2 以後,開始支援一個算是常用的功能,可以直接在 collection 上設定資料的存活時間
例如假設插入一筆資料後,希望它在兩小時後自動消失,過去的作法是要自己實作 daemon 去檢查
不過在 MongoDB 2.2 開始,MongoDB 會幫忙做這件事,只要在 collection 上做好設定即可。
例如假設插入一筆資料後,希望它在兩小時後自動消失,過去的作法是要自己實作 daemon 去檢查
不過在 MongoDB 2.2 開始,MongoDB 會幫忙做這件事,只要在 collection 上做好設定即可。