# 4.1 Extract common features from a set of interrelated processes or complex phenomena 从流程或者复杂现象中识别通用问题

Students at all grade levels should be able to recognize patterns. Young learners should be able to identify and describe repeated sequences in data or code through analogy to visual patterns or physical sequences of objects. As they progress, students should identify patterns as opportunities for abstraction, such as recognizing repeated patterns of code that could be more efficiently implemented as a loop. Eventually, students should extract common features from more complex phenomena or processes. For example, students should be able to identify common features in multiple segments of code and substitute a single segment that uses variables to account for the differences. In a procedure, the variables would take the form of parameters. When working with data, students should be able to identify important aspects and find patterns in related data sets such as crop output, fertilization methods, and climate conditions.

所有阶段的学生都应该能够识别模式.

  1. 低阶段的学生通过类比视觉图形中的模式或者实物的模式, 来识别和描述数据和代码中重复出现的序列
  2. 随着学生成长, 他们能够将“模式”视为抽象的机会. 比如说, 识别代码中的重复序列, 将其抽象成更加有效的“循环语句(loop)”
  3. 最终, 学生应该能够从复杂的现象或者过程中提取共性. 比如说, 学生能够识别多个代码中的共同特性, 将其抽象成“变量”来描述差异. 在程序中, 变量以参数的形式. 在处理数据时, 学生能够抓住关键因素, 并且从相关数据中找到模式. 比如说对于农业问题, 抓住农作物产量、施肥方法、气候条件等关键因素