我是一名主要从事嵌入式设备(用C和汇编编程)的开发人员.我的C#和OOP知识非常有限(尽管我可以在必要时伪造它).我有五个设备通过USB与PC连接.PC进行一些计算并将结果发送到设备.对每个设备执行相同的计算,但计算方式不同.对于每个设备,我都有一个C#Windows窗体应用程序,可以完成一些工作并将数据来回发送到设备.目前,我正在尝试将五个不同的应用程序合并为一个,这样我们就可以轻松地进行更改,轻松添加新设备,并拥有标准用户界面.我的问题是我不知道最好的方法,因为我不知道哪个设备将在运行时使用.我试图避免一堆if语句,我希望能够将每个设备放在一个单独的文件中.这是我正在谈论的一些psudo代码.
class Device //This is what EVERY device can do
{
...
DoWork1();
DoWork2();
DoWork3();
...
}
class Device1
{
...
DoWork1(); //This is how the work is done for this device
DoWork2();
DoWork3();
...
}
class Device2
{
...
DoWork1(); //This is how the work is done for this device (not the same way as Device1)
DoWork2();
DoWork3();
}
public partial class frmMain : Form
{
private (some kind of object or something) CurrentDevice;
public frmMain()
{
...
//Determine …Run Code Online (Sandbox Code Playgroud)