正如问题所说,我希望在c#中学习OOP。我知道OOP的基础知识,例如类意味着什么,什么是对象,以及OOP的所有6-7特性。我不明白如何在实际应用中使用它?在开发(编码)过程中使用所有这些功能时,我会陷入困境。
我在VB.NET中有代码,现在用C#编写代码。我使用VS 2005,现在使用VS 2008。
请建议我学习一些非常好的资源(特别是我也可以实现它)C#中的OOP
感谢
答案 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也提供了类似的内容。
答案 2 :(得分:1)
在掌握了基本原理之后,也许设计模式是OO要学习的第二件事。但在每种情况下,你应该知道它们以识别它们并避免再次发明它们。
这个特别好,不管是用Java。即使现在有很多C#变种,我仍然认为知道经典很重要,这些都在本书中,是GoF-pattern book的流行翻译。
答案 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#中,差异将是一个或三个关键字,而不是开始/结束。