原创 [5+1]開閉原則(一)

[5+1]開閉原則(一) 前言 面向對象的SOLID設計原則,外加一個迪米特法則,就是我們常說的5+1設計原則。 這六個設計原則的位置有點不上不下。論原則性和理論指導意義,它們不如封裝繼承抽象或者高內聚低耦合,所以在寫代碼或者code r

原创 系統中的業務異常

系統中的業務異常 搭建系統框架時,關於異常,我們一般要考慮這樣幾件事情。 系統中有哪些異常 這個問題其實很簡單:一類是業務異常,例如“用戶輸入的證件號不合法”、“銀行卡四要素鑑權失敗”、“餘額不足”等業務邏輯上的問題;除此之外的全都是系統

原创 多態

——“面向對象的三大特性是什麼?” ——“封裝、繼承、多態。” 這大概是最容易回答的面試題了。但是,封裝、繼承、多態到底是什麼?它們在面向對象中起到了什麼樣的作用呢? 多態 多態(Polymorphic)其實也是一個顧名思義的詞:“多

原创 繼承

——“面向對象的三大特性是什麼?”——“封裝、繼承、多態。”這大概是最容易回答的面試題了。但是,封裝、繼承、多態到底是什麼?它們在面向對象中起到了什麼樣的作用呢?繼承繼承(inherit)關係是對象之間的一種層級結構關係。在這個層級結構中,

原创 繼承

——“面向對象的三大特性是什麼?”——“封裝、繼承、多態。”這大概是最容易回答的面試題了。但是,封裝、繼承、多態到底是什麼?它們在面向對象中起到了什麼樣的作用呢?繼承繼承(inherit)關係是對象之間的一種層級結構關係。在這個層級結構中,

原创 封裝

——“面向對象的三大特性是什麼?”——“封裝、繼承、多態。”這大概是最容易回答的面試題了。但是,封裝、繼承、多態到底是什麼?它們在面向對象中起到了什麼樣的作用呢?封裝“封裝”這個詞是從Encapsulate翻譯過來的,我覺得這個翻譯簡直太妙

原创 我和姑娘們不可不說的故事

背景項目我們的這個項目背景比較簡單,本質上是爲業務部門做一個類OA系統。它的功能主要是把一些線下的工作流程轉到線上處理。只不過與一般的行政管理流程相比,它涉及的業務專業知識更多、處理流程也更復雜。有一點必須特別指出:我們組是中途接手、而非從

原创 Spring事務

spring事務基本配置 參見:http://www.cnblogs.com/leiOOlei/p/3725911.html spring事務傳播機制 參見:http://www.cnblogs.com/aurawing/articles/

原创 我的敏捷經歷-回顧會

如果有人問“計劃會、每日站會、回顧會中只能留一個,你會留哪個”,我一定會選回顧會。計劃會和每日站會的目標是保證項目進度,而回顧會的目標是改進項目組。我們的流程特點從流程來說,回顧會非常簡單:定期地把大家聚到一起,或三言兩語地吐一番槽,或七嘴

原创 抽象

抽象這個東西,說起來很抽象,其實很簡單。 WHAT 抽象是什麼?按維基百科的說法:“在計算機科學中,抽象化(英語:Abstraction)是將數據與程序以它的語義來呈現出它的外觀,但是隱藏起它的實現細節。”這個定義也許還有些“抽象”,舉幾個

原创 細說幾種耦合

    高內聚和低耦合是很原則性、很“務虛”的概念。爲了更好的討論具體技術,我們有必要再多瞭解一些高內聚低耦合的度量標準。這一篇與《細說幾種內聚》是姊妹篇。可以對照着看。花園的景昕,公衆號:景昕的花園細說幾種內聚耦合    耦合性討論的是模

原创 細說幾種內聚

    高內聚和低耦合是很原則性、很“務虛”的概念。爲了更好的討論具體技術,我們有必要再多瞭解一些高內聚低耦合的度量標準。    這裏先說說幾種內聚。內聚    達到什麼樣的程度算高內聚?什麼樣的情況算低內聚?wiki上有一個內聚性的分類(

原创 高內聚與低耦合

高內聚與低耦合WHAT    "高內聚"與"低耦合"是軟件設計和開發中經常出現的一對概念。它們既是做好設計的途徑,也是評價設計好壞的標準。"高內聚"是說,一個業務應當儘量把它所涉及的功能和代碼放到一個模塊中;"低耦合"則是說,一個業務應當儘

原创 Feign簡介

FeignFeign     WHAT    WHY    HOW        maven依賴        自動裝配        編寫接口        調用接口        注意事項    原理WHATFeign的GitHub描述

原创 面向對象是什麼

51CTO識別有違禁詞,請移步:https://mp.weixin.qq.com/s?__biz=MzUzNzk0NjI1NQ==&mid=2247484223&idx=1&sn=b172b7793f8a382b376ba3316ff667