对象健身操详解-Tech For Fun
面向对象九诫是一套由Jeff Bay提出的编程原则,这些原则旨在帮助程序员写出结构清晰、易于维护和扩展的代码。ThoughtWorks文集和Tech For Fun等平台收录了这些原则,称为“对象健身操”。其核心在于通过限制特定的编码实践来引导开发者思考如何更好地进行面向对象的设计。接下来,我们将详细探讨这些原则。 1. 内聚性:代码内聚性指的是一段代码的功能紧密相关,共同实现一个单一的任务或职责。高内聚意味着一个模块或类的每个部分都应该协同工作来完成一个明确的目标。 2. 松耦合:松耦合的代码指的是各个模块或类之间的相互依赖性较低。这种设计使得代码在修改和扩展时更为灵活,减少了因修改某部分代码而引起其他部分出错的风险。 3. 零重复:这一原则强调避免在代码中出现重复的逻辑或数据结构,因为重复通常会导致代码难以维护,并增加出错的机会。 4. 封装:封装是面向对象编程中的一个基本概念,它要求将数据(属性)和操作数据的方法捆绑在一起,并对外隐藏内部实现细节。 5. 可测试性:编写易于测试的代码意味着你能够为代码编写自动化测试用例,从而在开发过程中快速验证代码的正确性。 6. 可读性:可读性强的代码易于理解,有利于团队协作和代码的长期维护。 7. 单一职责:一个类或方法应当只有一个改变的理由,即它们只负责一项职责。这个原则可以帮助我们避免创建过于复杂的类和方法。 对象健身操中的“九诫”则提供了更具操作性的指导方针,用以实现上述原则: 1. 方法只使用一级缩进:这意味着减少方法内部的嵌套,保持方法的简洁和专注单一功能。 2. 拒绝使用else关键字:通过使用卫语句(提前返回)或三元运算符来简化代码,使逻辑更直接。 3. 封装所有的原生类型和字符串:通过创建包装类来提高类型使用上的可读性和安全性。 4. 一行代码只有一个“.”运算符:这有助于减少过度的链式调用,保持方法调用的清晰度。 5. 不使用缩写:避免使用缩写以增加代码的可读性。 6. 维持实体对象简单清晰:保持对象的简单性有助于降低理解对象行为的复杂度。 7. 任何类中的实例变量都不要超过两个:限制实例变量的数量有助于避免类过度膨胀,保持类的职责单一。 8. 使用一流集合:选择合适的数据结构对于确保代码的清晰度和效率至关重要。 9. 不使用任何Getter/Setter/Property:鼓励使用不可变对象或封装属性来提升数据的封装性和安全性。 通过遵循这些原则和练习,开发者能够提升他们的编程技巧,写出更加优雅和健壮的代码。这些原则并不强制要求在所有情况下都严格遵守,而是作为一种参考,帮助开发者在遇到设计难题时有更好的思考方向。在实践中,开发者需要结合具体情况进行灵活应用,并持续地反思和改进代码质量。
下载地址
用户评论