# Level 3B: 11-12 年级 (16-18 岁)

# 计算机系统

Computing Systems

序号 标准和描述 相关概念 实践
3B-CS-01 Categorize the roles of operating system software.
对操作系统的功能进行分类
Examples of roles could include memory management, data storage/retrieval, processes management, and access control.
操作系统的功能包括内存管理、数据存储和检索、进程管理、访问控制.
Hardware & Software
硬件 & 软件
7.2
3B-CS-02 Illustrate ways computing systems implement logic, input, and output through hardware components.
计算机系统如何通过硬件实现逻辑判断、输入和输出
Examples of components could include logic gates and IO pins.
例子: 逻辑门、IO 引脚.
Troubleshooting
故障排除
7.2

# 网络与互联网

Networks and the Internet

序号 标准和描述 相关概念 实践
3B-NI-03 Describe the issues that impact network functionality (e.g., bandwidth, load, delay, topology).
影响网络功能的因素(例如带宽、负载、延迟、网络拓扑结构)[1]
Recommend use of free online network simulators to explore how these issues impact network functionality.
建议使用在线的免费网络模拟器, 来探索这些因素对网络功能的影响.
Network Communication & Organization
网络通信 & 网络架构
7.2
3B-NI-04 Compare ways software developers protect devices and information from unauthorized access.
比较软件开发人员保护设备和保护信息不被非法访问的方法
Examples of security concerns to consider: encryption and authentication strategies, secure coding, and safeguarding keys.
需要考虑的安全问题包括: 加密和身份验证策略、安全编码和密钥保护.
Cybersecurity
网络安全
7.2

# 数据与分析

Data and Analysis

序号 标准和描述 相关概念 实践
3B-DA-05 Use data analysis tools and techniques to identify patterns in data representing complex systems.
使用数据分析技术和工具, 来识别复杂系统中数据的模式
For example, identify trends in a dataset representing social media interactions, movie reviews, or shopping patterns.
比如, 从社交媒体互动、电影评论或者购物模式的数据中, 发现规律和趋势.
Collection Visualization & Transformation
数据收集 & 数据可视化 & 数据转化
4.1
3B-DA-06 Select data collection tools and techniques to generate data sets that support a claim or communicate information.
选择数据收集的技术和工具, 以生成支持观点或者支持信息交流的数据
Collection Visualization & Transformation
数据收集 & 数据可视化 & 数据转化
7.2
3B-DA-07 Evaluate the ability of models and simulations to test and support the refinement of hypotheses.
评估模型的能力, 来检验假设, 并对假设进行完善
Inference & Models
推理 & 模型
4.4

# 算法与编程

Algorithms and Programming

序号 标准和描述 相关概念 实践
3B-AP-08 Describe how artificial intelligence drives many software and physical systems.
描述人工智能如何驱动软件和硬件系统
Examples include digital ad delivery, self-driving cars, and credit card fraud detection.
例子: 数字广告投放、自动驾驶汽车、信用卡欺诈检测.
Algorithms
算法
7.2
3B-AP-09 Implement an artificial intelligence algorithm to play a game against a human opponent or solve a problem.
实现一个人工智能算法, 用来和人类进行游戏, 或者用来解决问题
Games do not have to be complex. Simple guessing games, Tic-Tac-Toe, or simple robot commands will be sufficient.
游戏不必复杂, 简单的猜谜游戏、井字棋游戏或者简单的机器人指令就可以了
Algorithms
算法
5.3
3B-AP-10 Use and adapt classic algorithms to solve computational problems.
使用和改编经典算法来解决问题
Examples could include sorting and searching.
例子: 排序和搜索算法
Algorithms
算法
4.2
3B-AP-11 Evaluate algorithms in terms of their efficiency, correctness, and clarity.
评估算法的效率、准确性和可读性
Examples could include sorting and searching.
例子: 分类和搜索算法
Algorithms
算法
4.2
3B-AP-12 Compare and contrast fundamental data structures and their uses.
比较基本数据结构及其用途
Examples could include strings, lists, arrays, stacks, and queues.
比如: 字符串、列表、数组、堆栈、队列
Variables
变量
4.2
3B-AP-13 Illustrate the flow of execution of a recursive algorithm.
解释递归算法的执行流程
Control
控制
3.2
3B-AP-14 Construct solutions to problems using student-created components, such as procedures, modules and/or objects.
学生通过创建组件来构建解决方案, 这些组件可以是程序、模块、对象等等
Object-oriented programming is optional at this level. Problems can be assigned or student-selected.
对于这个阶段的学生来说, "面向对象编程"是个可选的学习内容. 可以让老师来安排任务, 或者让学生自主选择是否学习
Modularity
模块化
5.2
3B-AP-15 Analyze a large-scale 3.2computational problem and identify generalizable patterns that can be applied to a solution.
分析复杂的大问题, 并找出解决方案的通用模式
As students encounter complex, real-world problems that span multiple disciplines or social systems, they should decompose complex problems into manageable subproblems that could potentially be solved with programs or procedures that already exist. For example, students could create an app to solve a community problem by connecting to an online database through an application programming interface (API).
当学生遇到复杂的、跨学科的现实问题或者系统性的社会问题时, 他们应该把复杂问题分解成可控的子问题, 这些子问题可能已经存在解决方案. 比如说, 学生创建应用程序时, 能够使用 API(应用程序接口) 连接到一个线上数据库来解决其中的子问题.
Modularity
模块化
4.1
3B-AP-16 Demonstrate code reuse by creating programming solutions using libraries and APIs.
通过使用"库"和 "API" 创建编程解决方案, 来展示代码的复用性
Libraries and APIs can be student-created or common graphics libraries or maps APIs, for example.
库和 API 可以是学生自创的, 也可以是共用的图形库或者地图 API.
Modularity
模块化
5.3
3B-AP-17 Plan and develop programs for broad audiences using a software life cycle process.
使用"软件生命周期流程", 为更广泛的用户规划和开发程序.
Processes could include agile, spiral, or waterfall.
流程包括敏捷式、螺旋式、瀑布式.
Program Development
编程开发
5.1
3B-AP-18 Explain security issues that might lead to compromised computer programs.
解释可能导致计算机程序容易受到攻击的安全问题
For example, common issues include lack of bounds checking, poor input validation, and circular references.
比如, 常见的安全问题, 包括缺乏边界检查、不完善的用户输入验证、循环引用.
Program Development
编程开发
7.2
3B-AP-19 Develop programs for multiple computing platforms.
为多种计算机平台开发程序.
Example platforms could include: computer desktop, web, or mobile.
比如电脑桌面端、网络端、移动设备端.
Program Development
编程开发
5.2
3B-AP-20 Use version control systems, integrated development environments (IDEs), and collaborative tools and practices (code documentation) in a group software project.
在团队开发项目中使用"版本控制系统(VCS)"、"集成开发环境(IDE)"、协作工具和协作实践(比如代码文档).
Group software projects can be assigned or student-selected.
团队开发项目可以由老师指定, 也可以由学生自主选择.
Program Development
编程开发
2.4
3B-AP-21 Develop and use a series of test cases to verify that a program performs according to its design specifications.
开发并使用一系列"测试用例"来验证程序是否按照设计规范运行.
At this level, students are expected to select their own test cases.
在这个学习阶段的学生, 应该能够选择合适的"测试用例"
Program Development
编程开发
6.1
3B-AP-22 Modify an existing program to add additional functionality and discuss intended and unintended implications (e.g., breaking other functionality).
修改已有程序, 增加额外功能, 并讨论预期的影响和意外的影响(比如, 在修改中破坏了其他功能)
For instance, changes made to a method or function signature could break invocations of that method elsewhere in a system.
比如, 更改方法或者函数的签名[2], 可能会破坏程序系统中其他地方对该方法或者函数的调用.
Program Development
编程开发
5.3
3B-AP-23 Evaluate key qualities of a program through a process such as a code review.
通过代码审查等流程来评估程序的质量
Examples of qualities could include correctness, usability, readability, efficiency, portability and scalability.
程序质量包括正确性、可用性、可读性、效率、可移植性和可扩展性.
Program Development
编程开发
6.3
3B-AP-24 Compare multiple programming languages and discuss how their features make them suitable for solving different types of problems.
对多种编程语言进行比较, 并讨论它们的特点以及它们适用于解决哪些不同类型的问题.
Examples of features include blocks versus text, indentation versus curly braces, and high-level versus low-level.
编程语言的特点包括代码块与文本的差异、缩进与大括号的差异、接近人类语言与接近机器语言的差异
Program Development
编程开发
7.2

# 计算机科技的影响

Impacts of Computing

序号 标准和描述 相关概念 实践
3B-IC-25 Evaluate computational artifacts to maximize their beneficial effects and minimize harmful effects on society.
对计算机产品进行评估, 最大限度地发挥其对社会的有益作用, 尽量减少其对社会的有害影响
Culture
文化
6.1
1.2
3B-IC-26 Evaluate the impact of equity, access, and influence on the distribution of computing resources in a global society.
评估全球不同社会中, 因为公平性和访问权的差异, 对计算机资源分配带来的影响
Culture
文化
1.2
3B-IC-27 Predict how computational innovations that have revolutionized aspects of our culture might evolve.
对给我们文化带来多方面革命性变化的计算机科技创新可能会如何演变, 进行预测.
Areas to consider might include education, healthcare, art/entertainment, and energy.
Culture
文化
7.2
3B-IC-28 Debate laws and regulations that impact the development and use of software.
讨论影响软件开发和使用的法律条例
Safety Law & Ethics
法律 & 道德
3.3
7.3

  1. "拓扑网络"是指计算机之间的物理连接方式. 试想, 将一群人组织在一起, 有扁平式的层级结构, 也有权威型层级结构. 同样的, 将一群计算机组织在一起, 也有不同的连接方式. ↩︎

  2. 函数和方法的"签名(signature)"是指对函数输入和输出的定义 ↩︎