設計模式是研發工程師們耳熟能詳軟件設計方法論之一,對於設計高內聚低耦合的軟件系統大有裨益。設計模式
在軟件設計之外的領域,也大量存在着各類各樣的「模式」,譬如「模式」這個詞就來源於建築界——「每一個模式都描述了一個在咱們的環境中不斷出現的問題,而後描述了該問題的解決方案的核心,經過這種方式,咱們能夠無數次地重用那些已有的成功的解決方案,無須再重複相同的工做。這個定義能夠簡單地用一句話表示:模式是在特定環境下人們解決某類重複出現問題的一套成功或有效的解決方案(A pattern is a successful or efficient solution to a recurring problem within a context)」學習
在研發工程師平常的工做和學習中,也蘊含着大量模式。設計
近日,筆者在反思本身的工做歷程時,遺憾的發現:因爲在過往的時間中,沒有注意總結概括一些模式,致使在面對一些重複或相似的場景、問題時,沒法高效複用之前的經驗或知識,以致於須要從新思考,下降了效率,浪費了時間。blog
痛定思痛,筆者指望從前人、牛人的身上汲取模式。ci
翻閱了一些文章後,將精華再度精簡和組合,總結爲以下一張思惟導圖,這張圖中提到的方法會做爲從此半年內個人工做學習模式。it
半年以後,我會根據實踐經驗再來更新這張圖中的知識點。io