Principles of Object-Oriented Design
来源:互联网 发布:sql工程师 编辑:程序博客网 时间:2024/05/18 22:42
Principles of Object-Oriented Design
- Principles of Object-Oriented Design
- SRP The Single Responsibility Principle
- OCP The Open-Closed Principle
- LSP The Liskov Substition Principle
- DIP The Dependency Inversion Principle
- ISP The Interface Segregation Principle
- REP The Release-Reuse Equivalency Principle
- CCP The Common Closure Principle
- CRP The Common Reuse Principle
- ADP The Acylcic Dependencies Principle
- SDP The Stable Dependencies Principle
- SAP The Stable Abstractions Principle
Principles of Object-Oriented Design
Summarized from [MARTIN] Agile Software Development Principles, Patterns, and Practices. These principles are the hard-won product of decades of experience in software engineering. They are not the product of a single mind, but they represent the integration and writings of a large number of software developers and researchers. Although they are presented here as principles of object-oriented design, they are really special cases of long-standing principles of software engineering.
SRP The Single Responsibility Principle
A class should have only one reason to change.
OCP The Open-Closed Principle
Software entities (classes, packages, methods, etc.) should be open for extension, but closed for modification.
LSP The Liskov Substition Principle
Subtypes must be substitutable for their base types.
DIP The Dependency Inversion Principle
Abstractions should not depend upon details. Details should depend upons abstractions.
ISP The Interface Segregation Principle
Clients shold not be forced to depend upon methods that they do not use. Interfaces belong to clients, not to hierarchies.
REP The Release-Reuse Equivalency Principle
The granule of reuse is the granule of release.
CCP The Common Closure Principle
The classes in a package should be closed together against the same kinds of changes. A change that affects a closed package affects all the classes in that package and no other packages.
CRP The Common Reuse Principle
The classes in a package are reused together. If you reuse one of the classes in a package, you reuse them all.
ADP The Acylcic Dependencies Principle
Allow no cycles in the dependency graph.
SDP The Stable Dependencies Principle
Depend in the direction of stability.
SAP The Stable Abstractions Principle
A package should be as abstract as it is stable.
- Principles of Object-Oriented Design
- Principles Of Object Oriented Design
- [转]Object Oriented Design Principles
- Bob Tarr: Some Object-Oriented Design Principles(1): Minimize The Accessibility of Classes and Members
- Object-Oriented Design Knowledge: Principles, Heuristics And Best Practices
- Object Oriented Design Principles 面向对象设计原则
- Fundamentals of Object-Oriented Design in UML
- Principles of Software Design
- Object-Oriented Game Design
- Object Oriented Design Tips
- Object-Oriented Game Design
- Object Oriented Design Parttern
- GRASP (object-oriented design)
- GRASP (object-oriented design)
- Object Oriented Design Pricinple
- SOLID (object-oriented design)
- 《Design Patterns: Elements of Reusable Object-Oriented Software》
- Design Patterns: Elements of Reusable Object-Oriented Software
- 使用ASP.NET实现Friendly URL的最简单方法
- 正则表达式
- php读mysql中文乱码问题解决方法
- Bob Tarr: Some Object-Oriented Design Principles(1): Minimize The Accessibility of Classes and Members
- 中国外交部和中国驻英国使、领馆联系办法
- Principles of Object-Oriented Design
- http://tb.blog.csdn.net/TrackBack.aspx?PostId=1571046
- 我的MSDN Blog正式开张,欢迎大家访问 [ http://blogs.msdn.com/yizhang/ ]
- Windows常用运行命令
- 浅谈Asp.net 多层架构中的变量引用与传递
- VC中使用ListCtrl经验总结
- 用Asp隐藏文件路径实现防盗链
- 迷茫
- Visual Studio 2005的JIT Debugger在Vista上面无法正常工作