在C#中,我正在制作一个桌面应用程序,其中包含一个名为Task的类的对象列表。 每个任务都包含一些函数,这些函数将在执行任务时由任务执行。
我的问题是如何管理函数,因为有很多类型的函数,可能有一个要移动的类的函数(在这种情况下它需要向量数据)可能还有一个要等待的类(其中)如果它需要一些整数数据)。
这样做的最佳方式是什么?
我的想法是让每种类型的函数都有自己的类(等待类和移动类),所有这些类都继承自具有函数Execute()的Function类。 但即使这样也行不通,因为我需要让用户更改每个对象中的数据,因为没有相同类型的数据会变得非常困难。
这是一个关于架构的问题,因为我是编程的新手,我知道我会如何处理这个问题,并且会让我的程序无法维护,我当前设计的唯一问题正在改变函数数据的子类,例如知道要求矢量数据而不是整数数据。
仅供参考我将会有很多功能子类我只给出了两个例子,每个都有非常独特的数据。 (接受资源链接)
答案 0 :(得分:0)
从我可以从你的帖子中得到的内容,你在谈论有扩展父类的类。您将定义一个父类(或接口),它将具有您正在执行的操作的基本方法。如果选择接口,则只需创建方法存根。子类如果扩展父类可以选择覆盖该方法。如果它是实现接口的类,则将强制该类在接口中定义方法。
答案 1 :(得分:0)
从具有所有方法的基类/接口扩展,并使用属性网格用它唯一的类特定数据填充每个子类。