什么是最好的面向对象设计实践?

时间:2011-04-28 06:16:14

标签: oop modeling

我没有发现任何一般性的问题。

请发布您认为对于面向对象设计有用的规则。

7 个答案:

答案 0 :(得分:39)

有很多很多OOD做法(Google吧!)如果你不得不挑选其他人,我会用SOLID作为首字母缩略词;

  1. Single Responsibility Principal
  2. Open/closed principle
  3. Liskov substitution principle
  4. Interface segregation principle
  5. Dependency inversion principle

答案 1 :(得分:14)

我多次推荐Head First Design Patterns本书。

它为您提供了GoF Design Patterns(一本您应该阅读的更高级的书)的简介,同时也是声音OOP设计原则的一个很好的介绍。

enter image description here

答案 2 :(得分:8)

其他原则很少

  1. “好莱坞原则”表示 下层不应该依赖 更高层。
  2. “赞成合成 过继承“ - 组成 允许更改/添加行为 运行时更易于维护
  3. “编程到界面,而不是 实施“ - 始终使用 抽象作为一种参考方式 而不是直接耦合到 具体课程
  4. 我建议你先看看“头先 - OOAD”。

答案 3 :(得分:1)

可以在此处找到OOD原则的完整摘要: http://butunclebob.com/ArticleS.UncleBob.PrinciplesOfOod

作者是Robert C. Martin(也称为Uncle Bob),编程专家,拥有超过40年的编程经验。

文章摘自他的“清洁代码”一书,其中恕我直言是OOP设计原则的一个非常好的材料。

答案 4 :(得分:1)

阅读其他人的代码并尝试设计类图 它将让您了解其他人如何通过解决问题进行思考 这对我很有帮助。特别是框架。

答案 5 :(得分:0)

最好的OOP,任何适合您项目的方法都是最好的。但是在为项目选择任何/多个OOP之前,重要的是OOP实践。

1:APIE:抽象,多态,继承,封装。

2:SOLID Principle.

3:OO analysis and design.

4:Design patterns.

5:Code refactoring.

6:Effective Java.

答案 6 :(得分:-1)

在我看来,我认为如果你想学习面向对象的设计,你应该尝试使用Smalltalk语言,因为它是开始面向对象编程的语言。

我们现在有另一个名为Squeak的替代方案,它是开源的.SOLID作为提到的伙伴也给你一个关于OOPS的好主意。

在您的OOPS旅程中一切顺利。

您可以在Squeak on Web.

上查看吱吱声