原创 命令模式command

外觀模式 將請求封裝成對象,以便使用不同的請求、隊列或者日誌來參數化其他對象。命令模式也支持可撤銷的操作 設計原則            爲了交互對象之間的松耦合設計而努力。 模式意圖         使用代理模式創建代

原创 重構---讓今天更有價值,讓明天更美好

一、三次法原則 第一次去做某件事時儘管去做;第二次做類似的事會產生反感;第三次再做類似的事,你就應該重構。 事不過三,三則重構 二、重構時機 任何情況下都要極力反對專門撥出時間進行重構,重構應該隨時隨地的進行;重構的原因是你想做別的事,

原创 sonar 代碼質量管理

http://blog.csdn.net/hunterno4/article/details/11687269

原创 觀察者模式observer

外觀模式             在對象之間定義一對多的依賴。當一個主題發生狀態變化時,依賴它額觀察者就會收到通知,並自動更新。 設計原則            爲了交互對象之間的松耦合設計而努力。 模式意圖         觀察者模

原创 git remote 用法

最近一直在學習使用git來管理自己的程序,總是今天東學一點,明天西湊一點,到用的時候,總是有些茫然不知所措。 在博客園裏看見一篇老好的文章,教我們做筆記啦,但是做完筆記還是要記得總結哦! 來吧,讓我們一起來總結吧,今天先來看

原创 適配器模式adapter

類適配器UML 直接實現Target接口即可 對象適配器UML Adapter 繼承Target,組合Aaptee 由於編程原則,多用組合少用繼承;對抽象編程,不對具體編程; 因此大多數情況下,爲了後續程序的靈活性,我們傾向於

原创 裝飾者模式decorator

設計原則: 開放-關閉原則,對擴展開放,對修改封閉 多用組合,少用繼承 針對接口編程,不針對實現編程 爲交互對象之間的鬆耦合設計而努力 類圖 待補充 示例: 飲料銷售系統 主體飲料:coffe 輔助調料:mocha,soy,whip

原创 重構時機----尋找代碼的壞味道

一、Duplicated Code(代碼重複) 保證實現只有一份。 如果你在一個以上的地點看到相同的程序結構,那麼可以肯定,設法將它們合而爲一。 1.同一個類的兩個函數含有相同的表達式          重構方法:Extract Meth

原创 oozie 編程方式的工作流

以一個例子簡要說明搭建簡單的oozie workflow 工作流 新聞門戶網站統計出top k的熱詞彙 一、需求分析 1.首先實現一個mapredue統計出所有新聞搜索條目各自出現的屏次(與大數據領域的wordcount mr實現一致

原创 Maven 添加第三方Jar包到本地repositories

由於有些Jar包不是開源的,在maven remote repositories找不到相應的包,所以得通過自有的Jar包在local repositories中添加jar。然後在pom.xml中添加相應的dependency,就能用本

原创 代理模式proxy

外觀模式 爲另外一個對象提供一個替身或者站位符號以控制對這個對象的訪問 設計原則            爲了交互對象之間的鬆耦合設計而努力。 模式意圖         使用代理模式創建代表(representative

原创 git branch --set-upstream

一。使用場景: 本地新建一個分支後,必須要做遠程分支關聯。如果沒有關聯,git會在下面的操作中提示你顯示的添加關聯。關聯目的是如果在本地分支下操作: git pull, git push ,不需要指定在命令行指定遠程的分支. I cr

原创 外觀模式facade

外觀模式             提供了一個統一的接口,用來訪問子系統中的一羣接口,外觀定義個了一個高層接口,讓子系統更容易使用。但是外觀並沒有把子系統隱藏起來,如果客戶需要接觸底層系統,仍然可以訪問 底層子系統。 設計原則      

原创 ToolRunner運行Hadoop原理分析

運行三步驟 一、Configurable Configurable public interface Configurable { /** Set the configuration to be used by this obje

原创 工廠模式factory(創建型)

工廠 工廠用來封裝對象的創建。 簡單工廠模式 一、模式概念        從設計模式的類型上來說,簡單工廠模式是屬於創建型模式,又叫做靜態工廠方法(Static Factory Method)模式,但不屬於23種GOF設計模式之一。簡單