我正在寻找学习面向对象设计的好资源(书籍/网站)。我发现所有的资源都更多地教授我UML和RUP而不是面向对象设计。Head First系列书籍的反复讲解使我不想读他们的书。我正在寻找一本类似于"计算机程序的构造与解释"的面向对象设计书籍,该书能够直接教授面向对象编程。我对任何特定的面向对象语言都没有偏好。
我正在寻找学习面向对象设计的好资源(书籍/网站)。我发现所有的资源都更多地教授我UML和RUP而不是面向对象设计。Head First系列书籍的反复讲解使我不想读他们的书。我正在寻找一本类似于"计算机程序的构造与解释"的面向对象设计书籍,该书能够直接教授面向对象编程。我对任何特定的面向对象语言都没有偏好。
《面向对象的分析与设计》(Object-Oriented Analysis and Design with Applications) 是该主题的圣经,由 Grady Booch 所著。该书内容通俗易懂,但有些地方略显深奥,值得反复阅读。
此外,也可以作为《设计模式》四人组的替代品。
我可以推荐:《设计模式Smalltalk伴侣》
总的来说,学习Smalltalk将有助于您成为任何语言上更好的面向对象编程开发者。
以下是Amazon评论中的内容:
比原版GoF更易理解,2000年2月4日,Nicolas Weidmann撰写
这本书比原版(GoF)更能让你理解设计模式。我不是SmallTalk程序员,而是一名使用C++已经9年的程序员。在工作中,我必须使用GoF书籍,但从未喜欢过它。相比之下,SmallTalk伴侣易于阅读,您可以在其描述的前几行中理解模式。拿桥接模式为例,在两本书中比较它们的讨论。如果您真的喜欢GoF,那么就买它吧。但根据我的经验,相对于GoF,购买SmallTalk伴侣会是一个大错误。相信一位C++程序员:-)
我必须承认,Head First 设计模式确实是一本不错的书,但著名的设计模式:可复用面向对象软件的基础也是必读之作。
在网络上,Object Mentor 网站的什么是面向对象设计?页面也是另一个很好的资源。
引用我的另一个关于相同主题的答案:
学习如何以模式思考、进行正确的面向对象分析和设计的极佳资源是由Martin Fowler编写的《Analysis Patterns: Reusable Object Models》和由Craig Larman编写的《Applying UML and Patterns》。此外,我需要在这里提到Eric Evans编写的《Domain-Driven Design: Tackling Complexity in the Heart of Software》,这是我发现的最有价值的书籍,可以帮助你思考整个软件设计过程。