開閉原則指的是軟件實體(模塊、類、方法等)對擴展開放,對修改關閉。若是程序要頻繁的由於外部變化而修改,這個程序的靈活性就很很差。這也符合軟件開發中向後兼容的要求。好比我開發的RPC接口暴露出去,當需求更改的時候,不能立刻就去修改接口的,你永遠也不知道你提供的接口都有誰在使用。因此這時候就須要去擴展,加一個新的接口。爲了實現好的擴展性,就須要良好的抽象能力,把能預知的需求可能頻繁變化的部分抽象出一個抽象類或接口,這樣就能夠在未來去橫向擴展,而沒必要對原來的代碼作任何改動。接口