敏捷设计
作者:互联网
在大多数软件项目中最不稳定的东西就是需求,需求处在一个持续变动的状态中。软件的设计也会因为需求的变化而腐化。常见的腐化有7种类型。为了解决这些问题,许许多多的软件开发人员和研究人员总结出了5种设计原则。这些设计原则是解决软件腐化问题的有效方式。
敏捷团队可以应用这些原则来解决软件设计腐化问题(臭味),但是这些原则也绝非在系统中到处喷洒的香水。过分遵循这些原则会导致软件设计变得不必要的复杂。只要尽可能的保持好的设计即可。
设计必须要保持干净、简单,并且由于源代码是设计最重要表示。所以就要求敏捷开发人员要每天、每小时、甚至每分钟都要保持软件尽可能的干净、简单富有表现力。
1 腐化问题
- 僵化性(Rigidity): 很难对系统进行改动,因为每个改动都会迫使系统许多其他地方做出改动。
- 脆弱性(Fragility):对系统的改动会导致系统中和改动的地方在概念上无关的许多地方出现问题。
- 牢固性(Immobility):很难解开系统的纠结,使之成为一些可在其他系统中重用的组件。
- 粘滞性(Viscosity):做正确的事情比做错误的事情要困难。
- 不必要的复杂性(Needless Complexity):设计中包含不具任何直接好处的基础结构。
- 不必要的重复(Needless Repetition):设计中包含有重复的结构,而该重复的结构本可以使用单一的抽象进行统一。
- 晦涩性(Opacity):很难阅读、理解。没有更好地表现出意图。
2 设计原则
- 单一职责原则(The Single Responsibility Principle,简称SRP)
- 开放-封闭原则(The Open-Close Principle,简称OCP)
- Liskov原则(The Liskov Substitution Principle,简称LSP)
- 依赖倒置原则(The Dependency Inversion Principle,简称DIP)
- 接口隔离原则(The Interface Segregation Principle,简称ISP)
标签:改动,腐化,原则,Principle,软件,敏捷,设计 来源: https://blog.csdn.net/weixin_37624828/article/details/110347191