您能否提供以 OOP 方法实现简单控制系统的技巧?

Can you provide tips to implement a simple control system in an OOP Approach?

我正在为多台机器编写一个复杂的控制系统。我使用 C# 是为了方便,因为不需要真正的实时,只需要快速响应。

我的问题是关于物理控制系统中传感器的采样:我想根据它们的值执行操作(例如,如果温度低于 X,则执行操作 A,如果压力高于 Y,则执行操作 B ).

有简单的带值查询循环方法,还有实施时钟的选项,该时钟定期(嗯,每 0.01 秒)检查大约 50 个不同传感器的值。

有没有更好、更高效、更智能、更面向对象的方法?

谢谢!

好吧,您的问题非常广泛,IMO 不可能以您期望的方式回答它。我能给出的唯一建议是学习面向对象设计,就我而言,这恰好是一个可能永远不会结束的连续过程。

如果你愿意,我绝对可以推荐一些文献:

  1. C# 中的敏捷原则、模式和实践 - 如何以面向对象的方式设计软件? (可能正是您所需要的)
  2. 整洁代码 - 易于理解、可维护和可扩展的代码是什么样的?
  3. Clean Coder - 这侧重于开发软件时的日常问题。 (如何在开发团队中工作,如何与经理打交道等,一开始听起来很无聊,但我很惊讶,这对我帮助很大)

所有书籍均由 Robert C. Martin 所著。

了解 SOLID-Principles, why they are important and how to apply them correctly. Dive into Design Patterns of the GOF 可以解决每个开发人员迟早会遇到的常见问题。这些要点在我推荐的第一本书中都有解释。

我知道这不是您所期望的,但是鉴于您的问题太过细节和广泛,我只能提供这些。

关于投票,我唯一想到的就是实施 INotifyPropertyChanged and subscribe to the PropertyChanged-event 如果可能的话。这将是一种类似于观察者的方法。