1.單一職責原則:每個類,每個方法具備的單一的功能,例如xxxController類暴露restful接口,對參數進行轉換,而後調用service層方法,xxxService類,xxxDao,util工具類,如日期格式轉換類,正則表達式匹配類,字符串工具類等等。
2.開閉原則:對擴展開發,對修改關閉。一個系統在設計的時候,原有的功能不能隨便修改,但能夠擴展,經過繼承原有的類,重寫方法達到擴展原來的功能。
3.里氏替換:可以使用基類的地方,基類的子類也可以使用,在使用時候最好經過基類對象進行引用,方便擴展。
4.接口隔離原則:接口之間功能不重複,互相隔離。
5.依賴倒轉原則:依賴抽象,而不是依賴具體的實現。
6.合成複用原則:就是在一個新的對象裏面使用一些已有的對象,使之成爲新對象的一部分;新對象經過向這些對象的委派達到複用已有功能的目的。簡而言之,要儘可能使用合成/聚合,儘可能不要使用繼承。
7.迪米特法則:最少知識原則,交朋友經過朋友來了解,而不是直接去了解。正則表達式