【问题标题】:Object-oriented programming in VB.NET and C#VB.NET 和 C# 中的面向对象编程
【发布时间】:2011-04-16 07:26:59
【问题描述】:

任何人都可以推荐一些好的教程,我可以在其中阅读我们在实时场景中使用的实际面向对象概念。不是“类是容器。水果是父类,苹果是子类”之类的东西。

最近我在 vb.net 中开发了一个多线程 GUI 应用程序,并发现了许多障碍,例如在另一个表单中使用一个表单的元素、在其他类中更改表单属性、何时创建对象来访问元素以及许多其他事情让我很困惑。

有人能推荐一些链接吗?

【问题讨论】:

    标签: c# .net vb.net oop


    【解决方案1】:

    您所描述的不是 OO 概念,它们是并发概念。你可以在这里了解一些:http://en.wikipedia.org/wiki/Concurrency_pattern。您可以在此处阅读与并发编程相关的一些特定设计模式:http://en.wikipedia.org/wiki/Concurrency_pattern

    This looks like a good read 用于 C# 特定的东西。

    【讨论】:

    • @jax 也许你应该重新阅读他的问题和我的回答。我的回复有一个特定于 C# 的链接。他遇到的问题(如果您花时间阅读整个问题)以多线程为中心。我认为您可能会因为投反对票以及在回答之前阅读/思考问题而快速触发。
    【解决方案2】:

    引用一个:

    不是“类是容器。fruit 是父类,apple 是子类”之类的东西。

    引用 b:

    障碍,例如在另一个表单中使用一个表单的元素,在其他类中更改表单属性

    您应该真正研究 Apple/Fruit 的东西,这样您的设计就不会要求表单访问其他元素。

    【讨论】:

    • 我已经阅读并理解了这些概念。但是在开发实时东西时,我需要调用表单元素并从另一个类中修改它们。
    • @swordf:也许描述一些具体的问题?现在我无法判断它们是组织问题还是线程问题。
    • @swordfish - 自从我使用 C# 以来已经有好几年了,但不是直接访问表单元素,难道你不能在某个地方有一个所有表单都需要显示/编辑的中心类吗数据有参考吗?
    • 我的应用程序有点棘手。例如,它有一个线程需要将元素添加到列表视图,并且基于列表视图第三列中添加的元素,该行的颜色必须更改。现在这整个线程是另一个类。对表单元素的跨线程调用必须通过委托和通过类的实例进行跨类调用。这只是我遇到的众多障碍之一,我绝对很难过。
    • @swordfish:不幸的是,我觉得架构需要重构。查看我在帖子中提供的链接,以便更清楚地了解多线程。
    【解决方案3】:
    【解决方案4】:

    我会给你推荐 Grady Booch 的 Object-Oriented Analysis and Design with Applications 的经典教程,这本书真的很棒

    【讨论】:

      猜你喜欢
      • 2011-04-16
      • 2015-02-12
      • 1970-01-01
      • 2012-02-24
      • 1970-01-01
      • 2020-05-18
      • 1970-01-01
      • 2014-06-03
      • 2010-09-18
      相关资源
      最近更新 更多