????????????(SRP)

???????????y?????????????仯?????????????????????????????????????????????ж???????????.??e????????????????????????Щ??????????????.

???????????(OCP)

????OO???????????????????????????????????????У???????????????????????????????????????????????GoF??23????????????????????????????Щ??????·??????Щ?о??????????????????OOD?????????????????????OOD????????????????????????????OO????裬????????????????????????????????????????裬???????ú????????OOD??????????????1??????????е???????--OCP?????????????CSDN??Health King??????????????????????OCP??????????????????OCP??e??

     ????????http://blog.csdn.net/kxy/archive/2005/06/27/405013.aspx

     ????????????????????????????????ЩOOD???Щ????????Щ????????????????????????????????????????????????Щ????????????Щ????????????????Ч???????????????????????????????

     ??ЩOOD????????????“??-?????”(Open-Closed Principle OCP)??????????????Bertrand Meyer??????????????:Software entities should be open for extension??but closed for modification???????????????????????????????????????????????????????????????????????????????????????????±?????????仰????????????????????????????????????????????

     ????OCP?????????????????????????????
     ?????????е???????????????μ????????????????????????仯?е?????????????????????????
     ???е??????飬????????????????鯔????????????仯?е??????????????????????????

     ?????????????????????????????????????????????????????????????????????????β????????????????????????????????????????????????ì???????????????????????????????????????????????????????????????????????????????

??????????????????????????????????????????????壬?????????????????????????????????????????????????????????????????????????????????????????????仯????????????????д??????仯????????????????????????

   “??-??”???????????????????????????ν??“???????????”(Principle of Encapsulation of Variation?? EVP)???????????????????????????????????????????????????????????????????????????????????????仯?????????????????????仯??????????仯????????????????????????????????仯???????????仯????????????

     [SHALL01]????????????仰??????“????????????????????????????”?????????????“????????????”??

    “????????????”??ζ??????
     ???????????????????????????棬???????????????????????檔?????????????????ζ????????е?????е? ?????????????????????????仯?????????????????????????????????????????????(??о?????????)??
     ???????????????????????????????????????????????????н????????????????ζ????????????????????????

    “????????????”???????????????????OCP???????????????????????????????????OCP????????????????п?????????????????OCP??????????????????????????????????????????????仯??????????

     ????????????????????????????????????????У???????????????????????????
     ?????????(Astraction)?????(Polymorphism)?????(Inheritance)?????(Interface)????????Щ??????????????OCP??????????????????????OCP??????÷??????ζ????????????(Reusability)????????(Maintainability)???????????к??????????????????????????????η???仯?????????????????????????????????(Astraction)?????(Polymorphism)?????(Inheritance)?????(Interface)?????????????????????У????????...