Best Practice to Implement Java Singleton
Singleton 是個看起來簡單好用,但要做得好又不是那麼容易的 pattern,尤其是在 multithread 的環境之下,很容易出問題。但有時候,就是有其適合發揮的地方。本文介紹目前公認在 Java 裡實作 singleton 最好的手法。
Singleton 是個看起來簡單好用,但要做得好又不是那麼容易的 pattern,尤其是在 multithread 的環境之下,很容易出問題。但有時候,就是有其適合發揮的地方。本文介紹目前公認在 Java 裡實作 singleton 最好的手法。
在規劃 daily build 時,通常會更進一步希望能夠測試到最終產出的 package,能否被正確地 deploy。以使用 YUM 作為 deployment system 為例,這表示了我們要能夠「自動地」測試做出來的 RPM 套件,其 dependencies 對不對,安裝過程會不會有問題等等。如果這個測試能夠被自動化並整合進 Hudson/Jenkins,我們就能更接近 Continuous Delivery 的理想。
使用 INI 當作設定檔格式的好處是,和慣常在 Windows 上開發的人較容易溝通;但缺點就是,處理起來會麻煩一些。好比說想要用 sed 自動修改預設的設定值,以便作 auto testing 時,自動改設定的 script 寫法便會複雜一點。
今天這篇《為什麼雲端產業在台灣行不通》突然蹦進台灣網路圈,作為當年回答葉教授問題的人,我認為有必要把一些事情再說明更清楚一些,以免大家思考到「擊沈」就沒了——這樣的短線操作,除了讓一般大眾理解業內人士第一個就想到的問題之外,對大環境其實幫助不大。
Hudson/Jenkins 是很好用的 Continuous Integration 工具,但有時候當我們不在公司,或是正在 private branch 奮鬥的時候,如果也能享受 CI 保護傘,那會方便很多。以下簡述如何在 Mac 搭建 Jenkins 環境給自己用。
因為 H.C. 太忙沒有時間,所以小弟就自告奮勇地接下來承辦今年 OSDC.tw 的相關活動:Hackathon。所謂 Hackathon,mindos 的說法很受歡迎,就是「一個程式設計聚會,大家聚在一個有電有網路有食物的地方,寫平常沒時間寫的小程式。然後很開心 :)」
最近又開始寫起 PHP 了,雖然嫌惡她的人很多,但我個人覺得,在設計上揉雜了 C 與 Perl 血統的 PHP,寫起來其實還是可以帶有兩者混和的爽感。閒話休提。網站程式少不了要處理 configuration、database 與 logging 等事務,而這些乍看之下又恰好符合 singleton 的使用情境,儘管阿 Ken 一再地告誡我們應該對 singleton 說不,但我還是不由自主地嘗試製作簡單易用又完美 singleton 實作,但最終想清楚之後,才體悟到在我碰到的使用情境裡,facet 與 ioc 的搭配,應該是更好的方案:職責更鮮明,架構更具彈性...