当前位置:  开发笔记 > 编程语言 > 正文

用于理解C#中OO设计的A-Ha时刻

如何解决《用于理解C#中OO设计的A-Ha时刻》经验,为你挑选了3个好方法。

我已经学习了C#几年,贪婪地阅读,甚至从微软那里学习了一些C#数据访问课程.我也一直在读OOP上的书.我正在编写一个基于Web的数据库应用程序.虽然我的职位不是"程序员",但我很幸运能够将其作为一个辅助项目.我在80年代早期用Basic进行编码,甚至擅长利用pokes和peeks来操纵Apple []和TRS-80让我的朋友惊叹不已.但这是一种非常线性的编码方法.

所有这一切都说,有些事情只是没有点击我.我没有C#或OOP的那个时刻让我能够坐下来,打开VS2008并开始编码.我必须研究其他人的代码,以至于我似乎没有自己做任何事情.我气馁了.

这不像我没有能力.我很快就拿起了t-sql.有人可以告诉我他们想从数据库中获取什么信息,我可以在几分钟内编写出tsql来给他们想要的东西.SQL是我得到的东西.OOP或C#不会发生这种情况.当然,C#本质上更复杂,但在某些时候它必须点击.对?

我阅读了stackoverflow,我对你们这些人的无限智慧感到不知所措.

让它点击的是什么?

编辑补充说: 这里的很多答案都非常出色.然而,特别是一个人似乎已经上升到了顶部,这就是我标记为"答案"的那个.我也讨厌不用答案标记我的问题.



1> Mike Robinso..:

了解接口是为我做的.来自脚本背景并切换到OO,我没有看到如何创建所有这些类更有效.然后我读了Head First Design Patterns,突然间我看到了原因.这不是最详细的书,但它是解释OO编程"为什么"的一个很棒的第一步,这是我极其挣扎的事情.

希望这可以帮助.



2> mson..:

SO上的大多数海报都不是特别聪明.有几件事可能会让你认为是这种情况.首先,只有碰巧知道或认为他们知道答案的人才会愿意回应.其次,不正确/错误的问题和答案是不可见的.第三,集体知识自然比个人知识大得多.

你误认为智力的东西,是在竞技场上度过的时间.你将花费更多的时间和精力来学习更好,更有知识的人.从你的意思来说,你并没有以最佳方式接近事物.理解特定语言只提供语法和语法规则.成为优秀开发人员的关键是成为一名优秀的思想家.不要专注或挂断语言.

Craig Larman和Bruce Eckols以及Head Start书籍非常适合这种学习模式.但是,我必须警告你,阅读书籍和做练习是不够的.你必须让自己沉浸在与其他开发人员的讨论和反馈中(当然,除非你是一个非常聪明的人 - 在这种情况下,你只需要得到它......).

你已经证明了一种比智力更重要的特质.你有谦虚.如果你有谦卑和坚持,你将比SO上的绝大多数海报更有效,更有见识.

谦卑也很重要,因为它可以帮助你应对这样一个事实:无论你工作多么努力和学习多少,你都不会比Jon Skeet知道更多.



3> Mark Bracket..:

写代码.很多.糟糕的代码,良好的代码,无用的代码 - 没关系.写吧.当你厌倦了编写代码时(如果你偶尔没有厌倦它,那你就写得不够了)阅读博客,杂志和有关代码的书籍.

然后,回过头来看看你之前编写的一些代码.重构它,清理它并改变设计.添加功能,修复错误,无论什么 - 无所谓.删除现有代码,并编写更多代码.

在某些时候,你将开始在C#中思考 - 就像在SQL中一样.

请注意,这类似于通过沉浸在其中来学习外语.当然,你可以在学校学习,读书,听录音带.但是,没有比学习外语更好的方法了,而不是每天都去学习.

推荐阅读
大大炮
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有