- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
关闭。这个问题是off-topic .它目前不接受答案。
想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。
9年前关闭。
Improve this question
这可能听起来像一个愚蠢的问题,因为如果你谷歌 "OOPS"
或 "OOPS in C#"
你会得到大量的结果。但。
我知道 OOP
的概念喜欢 abstraction
, inheritance
还有什么不是......但我想看到的是它在编程中的一些“ 实际可用示例 ”。喜欢 polymorphism
你知道一个实际的例子是 Object.GetType
等等。
有时,如果不是很多,我发现自己在做一些事情,比如在一个按钮上单击打开一个连接并做一些事情,这不是 OOP
根据我所知道的,我应该有一个特定的实体/类,它应该有一个方法来处理我在单击按钮时所做的事情,然后我应该调用该方法,而不是在单击按钮时完成所有事情。
另一个例子是,我刚刚发现自己正在加载一名员工从事的所有项目,地址为 the txtEmployeeName.Leave
。事件,然后填写项目的组合。这也不是面向 OOP 的,我应该有类(class) Employee
,以及加载该员工从事的所有项目的方法,然后我应该在 txtEmployeeName.Leave
调用该方法.
当我在某个地方(在线或其他任何地方)找到或阅读时,我会看到诸如 Vehicle
之类的内容。是一个抽象类,而 Car
是 Vehicle
,所以它继承自 Vehicle
,这是 Inheritance
.我们都明白这一点,但这不是一件实际的事情。我发现的另一个例子,如果我们有一个方法 MakeSound
,我们称它为对象 Cat
,它会Purr
,但如果我们在 Dog
上调用相同的方法,它会Bark
, 这是 Polymorphism
.
它有助于理解,但它不“实用”,或者您应该说“真实的编程示例”。 所以我需要知道的是,是否有任何好的资源(在线、书籍或其他)可以让我阅读有关 OOP 的内容,但不像我在上一段中给出的示例,而是一些“真实世界的编程示例”,实际上可以让我让我的代码更面向对象?
最佳答案
这里有一些
OOP best practice: Employee.GetCars() vs Cars.GetByEmployee()
面向对象语言(C#)中的最佳实践和正确的类设计
http://www.codeproject.com/Questions/232598/Best-practice-and-proper-class-design-in-object-or
开始 C# 面向对象编程
http://www.apress.com/9781430235309/
开发类库的设计指南
http://msdn.microsoft.com/en-us/library/ms229042.aspx
设计模式教程
http://www.dofactory.com/Patterns/Patterns.aspx/
关于c# - 学习 "PRACTICAL"OOP 的好资源?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11501657/
在我的项目中,我使用了某种由外部团队编写的 SDK 库。这些图书馆正在使用 Prism。由于某些原因,我们不得不回滚到他们的 SDK 的以前版本,现在构建失败,试图找到对 Microsoft.Prac
我是基于 MVVM 的单元测试应用程序,它使用 prism 并使用模拟来测试 View 模型。我可以通过传递区域管理器和资源管理器的模拟对象来调用我的 viewmodel 类的构造函数,但是当控制进入
我需要将名为“practice”的列插入到表“cred_insurances”中,该表是一个 FK 引用表“practices” PK “id” 最佳答案 您需要通过在 mysql 提示符下运行以下命
我创建了一个项目来练习将 Git 与 Xcode 和 GitHub 结合使用。经过大量工作,我已经在本地和远程创建了存储库。我刚刚尝试提交并收到此错误: 这是我要 promise 的: 在出现此错误之
我正在考虑使用 DTO 而不是传递我的域对象。我在这里和其他地方都读过几篇文章,我知道有几种方法可以完成这项工作。 如果我总共只有大约 10 个域类,并且考虑到我想在我的 View (WPF 前端)中
我想知道 Django Rest Framework 的最佳实践。我一直通过每个用户使用不同的序列化程序(员工、帐户所有者、其他人)和 HTTP 方法来限制更改帐户上某些属性的访问权限,但我觉得这太不
场景:应用程序具有可以启用某些优化的算法。默认情况下,有些是打开的,有些是关闭的。在 Java 中是否有一种方便的方法来实现某种全局属性系统? 要求: 必须很容易两次使用不同的设置运行程序的多个实例
我的代码如下: public static final Condition.ActionCondition ACTION_CONDITION_ACTIVATE = new Condit
我从事嵌入式工作,我有一些管理硬件的软件模块。这个模块有状态,状态转换很复杂:根据事件,模块可以从状态 A 到状态 B 或者可能到 C .但是,当它退出某个状态时,它应该对硬件执行一些操作,以使其也保
考虑 an^2 + bn + c。我知道对于大的 n,bn 和 c 变得微不足道。 我还了解到,对于较大的 n,2n^2 和 n^2 之间的差异非常微不足道 n^2 和 n*log(n) 之间的区别。
我正在设计一个数据库并且我达到了(据我所知)Third Normal Form (3NF) 我的一些同事告诉我一个 Sixth Normal Form !!我想知道如何知道数据库的规范化水平是否足够。
我有一个.net 3.5网站,该网站使用Microsoft.Practices.EnterpriseLibrary调用数千个不同的存储过程。 我们已经遇到了很多超时,并且在播放和测试表末尾的(nolo
我使用 nuget 包管理器添加了最近的企业库,但在部署时(而不是在构建时)仍然低于错误。 包管理器:Install-Package EnterpriseLibrary.Data 谁能帮我 命名空间“
我一直在阅读关于版本控制主题的所有问题,但我认为我没有找到一个看起来像我自己的场景。 场景是: 我们有一个中型/大型 Web 应用程序,它有(至少应该有)一个部署到所有客户端的核心。当我们向客户演示应
很难说出这里问的是什么。这个问题模棱两可、含糊不清、不完整、过于宽泛或言辞激烈,无法以目前的形式合理回答。如需帮助澄清此问题以便可以重新打开,visit the help center . 8年前关闭
代码 (Java) 片段 ..... ..... if ( response.check() == checkNumber ) { String message = "You ar
我刚刚开始在我的(Delphi)应用程序中使用异常记录器(EurekaLog)。现在,我的应用程序每天都会通过电子邮件向我发送大量错误消息。这是我迄今为止发现的内容 大量重复错误 来自同一台电脑的多封
我想收集有关我的代码的特定例程的指标,以了解可以最好地优化的地方。让我们举一个简单的例子,假设我有一个包含多个“学生”的“类(class)”数据库。假设当前的代码为每个学生调用数据库,而不是一次性批量
关闭。这个问题是opinion-based 。目前不接受答案。 想要改进这个问题吗?更新问题,以便 editing this post 可以用事实和引文来回答它。 . 已关闭 2 年前。 Improv
我正在尝试加快查询速度。其中很多都非常复杂,目前我主要通过创建多个查询并通过联接链接它们来实现这一点。 这是最佳实践吗?还是我应该在 SELECT 中使用 SELECT 并尝试在一个查询中实现相同的目
我是一名优秀的程序员,十分优秀!