Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Design patterns 什么设计模式对报告由潜在不同表中的不同列分组的相同数据有用?_Design Patterns - Fatal编程技术网

Design patterns 什么设计模式对报告由潜在不同表中的不同列分组的相同数据有用?

Design patterns 什么设计模式对报告由潜在不同表中的不同列分组的相同数据有用?,design-patterns,Design Patterns,让我们想象一个场景,我们正在为一所大学编写一个报告仪表板。我们希望根据这些不同的列(其中一些可能保存在完全不同的表中)报告学生的情况(例如他们的平均GPA、平均通过课程数、平均剩余课程数等): 按所属系对学生进行分组 根据学生是国际学生还是国内学生分组 按年级(大一、大二等)对学生进行分组 按GPA(A、B、C、D、F)将学生分组 这只是一个假设的场景,只是想让你了解我在说什么 因此,每个页面都会显示一个表,其中的行是根据我所说的内容进行分组的数据,列是我前面所说的内容(平均GPA、平均通过课程

让我们想象一个场景,我们正在为一所大学编写一个报告仪表板。我们希望根据这些不同的列(其中一些可能保存在完全不同的表中)报告学生的情况(例如他们的平均GPA、平均通过课程数、平均剩余课程数等):

  • 按所属系对学生进行分组
  • 根据学生是国际学生还是国内学生分组
  • 按年级(大一、大二等)对学生进行分组
  • 按GPA(A、B、C、D、F)将学生分组
  • 这只是一个假设的场景,只是想让你了解我在说什么

    因此,每个页面都会显示一个表,其中的行是根据我所说的内容进行分组的数据,列是我前面所说的内容(平均GPA、平均通过课程数、平均剩余课程数等)

    显然,如果我们不使用设计模式,将会有很多代码重复。那么,我的问题是,什么样的设计模式适合这个问题?我认为策略模式或装饰模式可能有效,但我对设计模式相当陌生。感谢您的任何帮助(包括您选择的理由)

    注意:我们的DBMS应该是关系型的,所以我们可以连接不同的表