你会推荐哪些资源来学习面向对象编程(C#)?

时间:2009-12-08 10:11:51

标签: c# oop c#-3.0 c#-4.0

正如问题所说,我希望在c#中学习OOP。我知道OOP的基础知识,例如类意味着什么,什么是对象,以及OOP的所有6-7特性。我不明白如何在实际应用中使用它?在开发(编码)过程中使用所有这些功能时,我会陷入困境。

我在VB.NET中有代码,现在用C#编写代码。我使用VS 2005,现在使用VS 2008。

请建议我学习一些非常好的资源(特别是我也可以实现它)C#中的OOP

感谢

6 个答案:

答案 0 :(得分:2)

Applying Domain-Driven Design and Patterns: With Examples in C# and .NET

  

应用领域驱动的设计和模式是第一个在.NET环境中利用模式,域驱动设计和测试驱动开发的完整实用指南。借助Martin Fowler和Eric Evans的开创性工作,Jimmy Nilsson展示了如何为任何.NET应用程序定制实际架构。您将学习如何为应用程序基础架构准备域模型;支持业务规则;提供持久性支持;计划表示层和UI测试;和面向服务或方面的设计。


(来源:amazon.com

答案 1 :(得分:2)

虽然不是本书的唯一焦点,但我发现Agile Principles, Patterns, and Practices in C#对OOD / OOP非常有用。它以可访问且易读的方式涵盖SOLID设计原则。作者(Robert C. Martin)网站Object Mentor也提供了类似的内容。

Agile Principles, Patterns, and Practices in C# cover http://www.objectmentor.com/Images/book_agileprinciplesandpractices.jpg

答案 2 :(得分:1)

在掌握了基本原理之后,也许设计模式是OO要学习的第二件事。但在每种情况下,你应该知道它们以识别它们并避免再次发明它们。

这个特别好,不管是用Java。即使现在有很多C#变种,我仍然认为知道经典很重要,这些都在本书中,是GoF-pattern book的流行翻译。

alt text http://ecx.images-amazon.com/images/I/51LSqrgoT1L._BO2,204,203,200_PIsitb-sticker-arrow-click,TopRight,35,-76_AA240_SH20_OU01_.jpg

答案 3 :(得分:1)

如果您是电子书迷,那么我肯定会从Pablo of Los Techies阅读S.O.L.I.D原则。

答案 4 :(得分:0)

就个人而言,我发现经典的Design Patterns书在面向对象设计时非常令人大开眼界。从那以后,所有其他事情如下:)

它早于C#约5年,所以你必须要考虑C ++和SmallTalk代码,但是学习OO实际上并不是关于语言,而是思维方式。

很多人发现Head First Design Patterns是一种更易消化的选择,但我自己只翻了一遍(虽然它看起来很不错)。

答案 5 :(得分:0)

您想学习OOP的核心概念还是弄脏并编写应用程序? OOP的原则在Wikipedia article上得到了很好的覆盖,并且继承,封装,多态,组合等概念将与VB.NET中的相同,因为这两种语言必须遵守CLS。

在VB.NET中命名一个你已经知道的功能,在C#中,差异将是一个或三个关键字,而不是开始/结束。