[临时] CSTA K-12计算机科学标准
2016年修订
CSTA标准任务
计算机科学教师协会(CSTA)
计算机协会(ACM)
2 Penn Plaza,Suite 701
纽约,NY 10121
本文版权©2016归计算机科学教师协会(CSTA)和计算机协会(ACM)所有。允许个人或学校免费获取本文部分的的数码拷贝或硬拷贝文本,前提是副本不应用于盈利或商业利益,并且副本在第一页上标注本通知和完整引用。必须尊重除ACM以外的其他人拥有的此项工作的组件的版权。摘要需标记出处。
除了复制外,若想将本作品重新发布在服务器或列表上,需要事先得到具体的许可和/或支付费用。 通过向customerservice@csteachers.org提交书面请求,获得计算机科学教师协会(CSTA)重新发布的许可。
对于其他复制第一页或最后一页底部代码的文章,只要代码中指明的每份副本费用通过版权计算中心支付,222 Rosemood Drive,Danvers,MA 01923
CSTA / ACM ISBN:#978-1-4503-4762-4
CSTA / ACM订货号:#999160
成本:$ 7.00 US / $ 8.00国际
其他副本可以从以下地址预订:
CSTA订单部门:
收件人:CSTA Standards
PO Box 767,Springfield,OR 97477
电子邮件:customerservice@csta-hq.org
电话:+ 1-800-342-6626 | 传真:+ 1-541-944-1318
2015-2016 CSTA标准修订任务
领导
Deborah Seehorn CSTA董事会联合主席北卡罗莱纳州公共教育部退休的前任主席
Tammy Pirmann联合主席,CSTA董事会学区代表,斯普林菲尔德镇,宾夕法尼亚州
K-5团队
托德·拉什(Todd Lash)
K-5等级主管,
计算机科学和计算思维
的教学教练和教学专家
Kenwood小学
Leticia Batista
幼儿园教师
苹果杰出教育家
加州奥克斯纳德McKinna小学
Dylan Ryder
中级分部教育技术员
哥伦比亚大学
Vicky Sedgwick
K-8技术教师和技术培训师
加州圣马丁主教学校
6-8团队
Irene Lee
6-8等级主管
研究科学家
麻省理工学院Scheller教师教育项目/教育商场MA(文学硕士)
Dianne O'Grady-Cunniff
计算机科学与技术教育专家
Charles County公立学校博士
Bryan Twarek
计算机科学协调员
旧金山联合学区
9-12团队
Daniel·Moix
9-12等级主管,
阿肯色K-12计算机科学教育专家
阿肯色数学,科学和艺术学校
朱莉娅·贝尔Julia Bell
计算机科学副教授
田纳西州Walters州立社区学院
Lori Pollock
特拉华大学计算机与信息科学教授
Laura Blankenship
计算机科学主席和学术事务临时院长
鲍德温学校,宾夕法尼亚州
Chinma Uche
计算机科学与数学教师,
哈特福德大学数学与科学学院以及CREC航空航天工程学院
致谢
2015-2016 CSTA K-12 CS标准审查工作组联合主席非常感谢K-12计算机科学教育的先驱者,为CSTA K-12 CS标准的修订作出了贡献。 下面列出的团体与工作组成员亲切地分享了他们的时间和专长,从而在修改过程中提供了灵感和指导。 我们向您致敬,致力于K-12计算机科学教育,感谢您的合作精神。
- 2015-2016 CSTA K-12 CS标准修订工作组成员
- CSTA成员社区
- Achieve
- Code.org
- K-12 CS框架
- 佛罗里达州教育局
- 马里兰州CS事宜指导委员会
- 华盛顿教育与华盛顿大学 CS教职人员
- 阿肯色州教育厅Anthony Owen
- 马萨诸塞州Jim Stanton
- 志愿者审稿人,包括:
▪Chris Stephenson
▪Deepa Muralidhar
▪Sheena Vaidyanathan
▪Debbie Carter
我们也衷心感谢CSTA最支持的合作伙伴之一Google。 感谢您为我们提供这个重要项目的能力。 我们感谢您的贡献和支持。
贡献
2015-2016 CSTA标准修订工作组对CSTA K-12计算机科学标准进行了修订,并将此修订本献给我们的朋友和同事Karen Marie Putman。 Karen(凯伦)是CSTA和CSTA K-12 CS标准的热心支持者。 她是芝加哥大学实验学校的计算机科学老师,在那里她教了45年。 她是最早的K-8计算机科学教育工作者之一,从德语教学转向教学标志编程。
凯伦在2015年9月初积极加入2015-2016 CSTA标准修订工作小组,她在小组工作中担任K-5等级主管职务时突然不幸去世时。 这使我们失去了一个在K-8 CS教育领域有着资历和学时且收我们重视的CS教育者。 特别工作组成员希望献出这些标准来纪念凯伦,相信她会喜欢看到标准的实现。
目录
目录
执行摘要
尽管最近几年来关于计算机科学(CS)的教育活动和曝光率日益增加,但公众,政府和大多数立法者并没有受到良好的CS教育,计算机科学的信息严重缺乏的情况存在于各个层面,并可能持续到可预见的未来。 [暂行] CSTA K-12计算机科学标准旨在帮助解决这些问题。 它们提出了一个指导建议,即国家教育部门和学区可以修改课程,以此来更好地解决青年人在这个重要学科领域的教育需求。
这些临时标准为计算机科学提供了三个等级指南。 前两个级别分别针对K-5和6-8级。 预计第一级(K-5)的学习成果将在跨课程,即在其他学科的背景下进行讨论。 第二级(6-8)的学习成果可以通过跨课程或离散的计算机科学课程来解决。 第三级分为两个单独的等级。 3A级(9-10)代表所有学生在高中毕业时应该知道并能够做的事情。 3B级(11-12)代表对进一步学习计算机科学感兴趣的学生的学习进度。
我们相信,计算思维是一种解决问题的方法论,将计算机科学的领域扩展到所有学科,提供了一种可以通过计算来解决问题分析和开发解决方案的独特方法。 计算思维是专注于抽象的,自动化的和分析型的思维,是计算机科学更广泛学科的核心元素,因此这些计算机科学标准交织在K-12学习的所有年级中。
这些建议并非是凭空想象。 我们理解学区正在运作的环境受到严重制约,以及计算机科学在其他优先考虑因素和时间及预算的限制下也将直面一场硬战。 无论如何,仍需要许多后续努力来维持我们希望这些标准产生的势头。 教师专业发展,课程改革,课堂测试,教科书和网站开发以及传播只是其中的一小部分挑战。
我们希望这些标准能成为促进广泛讨论的催化剂,并启动许多可以把K-12计算机科学发展到更高水平的项目。 我们邀请您阅读整个文件,然后参与讨论,让您和K-12教育界共同受益。 有关正在进行的支持K-12计算机科学教育活动的更多信息,请访问http://www.csteachers.org
介绍
目的和宗旨
本文件的目的是在学习的各个阶段阐述学生必须具备的知识和技能,使他们能够在这个新的全球信息经济中茁壮成长。 它为K-12计算机科学定义了一套国家标准,并提出了实现其广泛实施所需的步骤。 它旨在向所有学生介绍计算机科学的原理和方法,不管他们高中毕业后选择继续学业还是直接就业。 本文档中列出的临时标准涉及整个K-12系列。 它们补充了现有的K-12计算机科学和信息技术课程,尤其是美国大学预修课程中的计算机科学课程(AP,2010)。(注:美国大学预修课程(Advanced placement)是由美国大学理事会提供的高中授课的大学课程,可使高中学生提前接触大学课程,起到减免大学学分的作用。) 此外,这些标准补充了其他学科的现有课程。
暂行的K-12 CS标准旨在:
- 从小学开始,向所有学生介绍计算机科学的基本概念;
- 在中学提供计算机科学证书,或者为3B级课程提供数学或科学的毕业证书的方式来呈现计算机科学; 是既合宜又有价值的
- 提供额外的中学计算机科学标准,使有兴趣的学生深入学习计算机科学的各个方面,为进入职场或大学做好准备;
- 增加所有学生的计算机科学知识,尤其是那些代表性不足的群体成员。
修订过程
本报告的所有草案得到了来自多方面的反馈。我们希望这个临时草案能得到广泛的传播,并继续受到在K-12计算机科学教育方面有兴趣或有经验的人的仔细审查。为此,我们将这些标准将在网上公布,并积极寻求来自各个专业组织,课程专家和社区成员的反馈意见。欲了解更多有关这一进程的信息,请访问CSTA网站Home Page | Computer Science Teachers Association。
尽管我们知道本报告中的许多建议的实现是非常艰巨的,但这对于确保学生获得必要的知识水平,技能和经验至关重要。 我们把这项工作作为一套全面和一致的标准来提供,作为一种理想,来随着时间的推移而在各个地区进行发展。因此这份报告为长期过程提供了一种催化剂,它定义了在未来几年可以遵循“什么”以及“如何”遵循。
执行中的挑战
有效地教授的科目取决于学生是否有健全的学习标准,教师是否有明确的教师资格认证标准,适当的教师专业发展计划,以及有效的课程资料。在这个背景下,K-12计算机科学教育面临着独特的挑战。
为了学校广泛实施这些标准,需要在三个重要领域开展工作:教师准备,国家级内容标准和课程材料开发。 另外,国家和地方的领导岗位人选必须承认计算机科学教育对于我们社会的未来的重要性。国家和认证机构应该把这作为学校整体认证的一个因素。 一些国家已经开始制定计算机科学内容标准,确定教师资格认证模式,提供计算机科学的在职专业发展,以及开发新的课程资料。无论怎样,这需要更广泛和持续的努力和承诺。
改善计算机科学教育是一个重大挑战,需要多个机构的关注和参与。计算机专业组织可以对此做出重要贡献,例如,CSTA是一个支持和促进计算机科学和其他计算学科教学的专业组织。CSTA提供了大量的计划,包括开发和传播学习资源,提供专业发展,倡导州和联邦一级的政策,以改善计算机科学教育。其他组织,如ACM,IEEE计算机学会,高等教育机构,国家和地方的教师组织也可以在K-12计算机科学教育中解决这些问题。
工业也深受流水线问题的影响,也需要生产具有支持和构建未来技术工具所需技能的工人。因此,为了提高K-12计算机科学课程的准入和质量,这对他们来说是最有利的。
结论
计算机科学教育是一个动态的学科。本文件是临时草案文件,代表了以前的标准变化,以应对计算机科学教育领域最近的变化。K-12 CS框架的推出,Maker movement(制造者运动/创客运动?)以及国家对网络安全的关注仅仅是本文档发布过程中存在的一些变化。
由于我们领域的快速发展和变化,计算机科学标准不可能是静态的。这些标准必须定期审查和更新,而不是被认为是完整的和最终确定的。CSTA致力于一个包容性的迭代过程,允许对CSTA K-12 CS标准进行多个草案和修订。 CSTA是K-12 CS框架项目的支持者之一。标准影响框架,框架亦对标准有所影响。有关更多信息,请访问www.csteachers.org/2016standards上的CSTA标准常见问题解答。
可以毫不夸张地说,我们的生活依赖于计算机系统和维护他们的人,来保证我们在路上和空中的安全,或帮助医生诊断和治疗健康问题,并在新药治疗的设计中发挥重要作用。对计算机科学的基本理解使得学生既能成为受过教育的技术用户,又能够成为设计计算系统的创新者,从而提高每个人的生活质量。
我们明白,所有学生的K-12计算机科学教育的理想之路存在很多障碍。在这个挤满了的课程中,会有怎样的空间? 如何招募和培训合格的教师,使之获得资格? 在以学校为中心的评估标准的世界中,计算机科学应该支持现有的标准,还是应该为计算机科学设计新的标准? 这些以及其他的问题和挑战是重要的,但是对于学生和社会来说,计算机科学的好处是把它作为所有学生高质量教育的一个组成部分。
2016年CSTA K-12 CS暂行标准
1级(K-5年级)
2011年的CSTA K-12 CS标准分为五个概念链(计算思维,协作,计算机实践与规划,计算机与通信设备,以及社会,全球与伦理影响)。 2016年的CSTA K-12 CS暂行标准分为K-12 CS框架的五个概念,目前正在开发中(计算机系统,网络和互联网,算法和编程,数据和分析以及计算机的影响)。 二者之间有一些重叠,但并不完全相同。
年级 | 识别码 | CSTA K-12 CS暂行标准 | 框架概念 | 框架实践 |
K–2 | 1A-A-7-1 | 在使用由他人创建的,例如代码,音乐或图片时请支付费用。 | 算法和程序 | 通讯计算 |
K–2 | 1A-A-5-2 | 使用基于块(block-based)的可视化编程语言,独立地和协作地构建程序,来完成任务或作为创造性表达的手段,其包括排序,事件和简单循环。(例如,结对编程) | 算法和程序 | 创建计算工件(Creating Computational Artifacts) |
K–2 | 1A-A-5-3 | 计划并创建一个设计文档,以连续(逐步)的方式来说明想法,理念和故事。(例如,故事地图,故事板,顺序图形组织者) | 算法和程序 | 创建计算工件 |
K–2 | 1A-A-4-4 | 使用数字或其他符号来表示数据(例如,赞成/不赞成,数字颜色,方向箭头,使用数字或象形图编码/解码单词)。 | 算法和程序 | 开发和使用抽象 |
K–2 | 1A-A-3-5 | 在教师指导下或者独立地将一个大问题分解成较小的子问题。 | 算法和程序 | 识别和定义计算问题 |
K–2 | 1A-A-3-6 | 根据每个项目的属性或动作对一组项目进行分类。无论是否有计算设备。 | 算法和程序 | 识别和定义计算问题 |
K–2 | 1A-A-3-7 | 构建并执行算法(逐步指令集),包括排序和简单循环,以独立或协作完成任务,无论是否使用计算设备。 | 算法和程序 | 识别和定义计算问题 |
K–2 | 1A-A-6-8 | 分析和调试(修复)包含排序和简单循环的算法,无论是否有计算设备。 | 算法和程序 | 测试和优化 |
K–2 | 1A-A-7-9 | 识别并使用控制计算设备的软件(例如,使用应用程序在屏幕上绘图,使用软件编写故事或控制机器人)。 | 计算系统 | 通讯计算 |
K–2 | 1A-A-7-10 | 使用适当的术语来命名和描述常用计算设备和组件的功能。(例如台式计算机,笔记本电脑,平板设备,显示器,键盘,鼠标,打印机) | 计算系统 | 通讯计算 |
K–2 | 1A-C-6-11 | 使用准确的术语,确定使用过程中可能出现的简单硬件和软件问题(例如,应用程序或程序无法按预期工作,没有声音,设备无法启动)。 | 计算系统 | 测试和优化 |
K–2 | 1A-D-7-12 | 随时收集数据并将其组织在图表或图表中以进行预测。 | 数据和分析 | 通讯计算 |
K–2 | 1A-D-4-13 | 使用计算设备来存储,搜索,检索,修改和删除信息,并定义存储为数据的信息。 | 数据和分析 | 开发和使用抽象 |
K–2 | 1A-D-4-14 | 创建一个对象或过程的模型,以确定模式和基本要素(例如,水循环,蝴蝶生命周期,季节性天气模式)。 | 数据和分析 | 开发和使用抽象 |
K–2 | 1A-I-7-15 | 比较和对照计算技术如何改变和改善人们生活,工作和交互方式的例子。 | 计算的影响 | 通讯计算 |
K–2 | 1A-N-2-16 | 使用计算机或其他计算设备与使用网络(例如互联网)的人员进行通信,访问和共享作为一个班级的信息。 | 网络和互联网 | 合作 |
K–2 | 1A-N-7-17 | 使用密码保护私人信息,并讨论密码滥用的影响。 | 网络和互联网 | 通讯计算 |
年级 | 识别码 | CSTA K-12 CS暂行标准 | 框架概念 | 框架实践 |
3–5 | 1B-A-2-1 | 应用协作策略来支持程序设计周期内的问题解决。 | 算法和程序 | 合作 |
3–5 | 1B-A-7-2 | 当想法被借用和改变以供自己使用时(例如,使用别人创建的图片,使用别人创建的音乐,混合编程项目),使用适当的引用和文档。 | 算法和程序 | 通讯计算 |
3–5 | 1B-A-5-3 | 创建一个计划作为迭代设计过程的一部分,既独立又有不同的合作团队(例如,故事板,流程图,伪代码,故事地图)。 | 算法和程序 | 创建计算工件 |
3–5 | 1B-A-5-4 | 使用基于块的可视编程语言或基于文本的语言,独立地和协作地构建程序,以解决问题或创造性表达,包括排序,事件,循环,条件,并行和变量(例如, 结对编程)。 | 算法和程序 | 创建计算工件 |
3–5 | 1B-A-5-5 | 使用数学运算来更改存储在变量中的值。 | 算法和程序 | 创建计算工件 |
3–5 | 1B-A-3-6 | 将一个较大的问题分解(分类)成较小的子问题,独立成组或若干个成组。 | 算法和程序 | 识别和定义计算问题 |
3–5 | 1B-A-3-7 | 构建并执行一个包含排序,循环和条件的算法(一组分步指令),以独立或协作地完成任务,无论是否使用计算设备。 | 算法和程序 | 识别和定义计算问题 |
3–5 | 1B-A-6-8 | 分析和调试(修复)包含排序,事件,循环,条件,并行和变量的算法。 | 算法和程序 | 测试和优化 |
3–5 | 1B-C-7-9 | 模拟计算机系统的工作原理。 [说明:只包括计算机系统的基本元素,如输入,输出,处理器,传感器和存储。] | 计算系统 | 通讯计算 |
3–5 | 1B-C-7-10 | 使用适当的术语来命名计算设备内部和外部组件,并描述它们之间的关系,功能和限制。 | 计算系统 | 通讯计算 |
3–5 | 1B-C-6-11 | 使用准确的术语来确定使用过程中可能出现的简单硬件和软件问题,并应用策略来解决问题(例如,重启设备,检查电源,检查网络可用性,关闭并重新打开应用程序)。 | 计算系统 | 测试和优化 |
3–5 | 1B-D-5-12 | 创建一个计算工件来模拟与一个概念相关的属性和行为(例如,太阳系,植物的生命周期)。 | 数据和分析 | 识别和定义计算问题 |
3–5 | 1B-D-5-13 | 通过使用计算机来操作(例如,排序,总计和/或平均,图表,图表)并分析由班级或学生收集的数据来回答问题。 | 数据和分析 | 识别和定义计算问题 |
3–5 | 1B-D-4-14 | 使用数值表示计算机中的非数字概念(二进制,ASCII,像素属性,如RGB)。 | 数据和分析 | 开发和使用抽象 |
3–5 | 1B-I-7-15 | 评估和描述日常生活中计算机和计算的普及带来的正面和负面影响。(例如,下载视频和音频文件,电子电器,无线上网,移动计算设备,GPS系统,可穿戴式计算机) | 计算的影响 | 通讯计算 |
3–5 | 1B-I-7-16 | 计算如何影响社会,以及社会价值如何影响计算选择的例子。 | 计算的影响 | 通讯计算 |
3–5 | 1B-I-1-17 | 同步或异步的找出并比较不同的观点以改善项目。 | 计算的影响 | 促进一个兼容的计算机文化 |
3–5 | 1B-I-1-18 | 集思广益的方式可以让所有用户更容易访问计算设备。 | 计算的影响 | 促进一个兼容的计算机文化 |
3–5 | 1B-I-1-19 | 解释与使用计算设备和网络有关的问题(例如,注销以阻止他人使用您的帐户,网络欺凌,个人信息隐私和所有权)。 | 计算的影响 | 促进一个兼容的计算机文化 |
3–5 | 1B-N-7-20 | 创建强密码的例子,解释为什么强密码应该被使用,并证明正确使用和保护个人密码。 | 网络和互联网 | 通讯计算 |
3–5 | 1B-N-4-21 | 模拟网络上的设备如何在遵循特定规则的情况下从一个设备(发送方)向另一个设备(接收方)发送消息。 | 网络和互联网 | 开发和使用抽象 |
2016年CSTA K-12 CS暂行标准
2级(6-8年级)
2011年的CSTA K-12 CS标准分为五个概念链(计算思维,协作,计算机实践与规划,计算机与通信设备,以及社会,全球与伦理影响)。 2016年的CSTA K-12 CS暂行标准分为K-12 CS框架的五个概念,目前正在开发中(计算机系统,网络和互联网,算法和编程,数据和分析以及计算机的影响)。 二者之间有一些重叠,但并不完全相同。
年级 | 识别码 | CSTA K-12 CS暂行标准 | 框架概念 | 框架实践 |
6–8 | 2-A-2-1 | 征求和整合同行的反馈意见,以制定或完善计划。 | 算法和编程 | 合作 |
6–8 | 2-A-7-2 | 从其速度,清晰度和大小来比较可用于解决相同问题的不同算法(例如,不同的算法能解决相同的问题,但其中一个可能比另一个更快)。 [澄清:学生不能量化这些差异。] | 算法和编程 | 通讯计算 |
6–8 | 2-A-7-3 | 代码引用或建立时提供适当的归属。 | 算法和编程 | 通讯计算 |
6–8 | 2-A-7-4 | 解释算法的执行流程并预测其结果。 [澄清:算法可以用自然语言,流程和控制图,代码中的注释和伪代码来表示。] | 算法和编程 | 通讯计算 |
6–8 | 2-A-5-5 | 设计,开发和展示能够独立且合作的计算工件(例如移动应用程序)来处理社会问题。 | 算法和编程 | 创建计算工件 |
6–8 | 2-A-5-6 | 独立和合作的开发程序,包括嵌套循环和多个分支的序列。 [澄清:在这个级别,学生可以使用基于块和基于文本的编程语言。] | 算法和编程 | 创建计算工件 |
6–8 | 2-A-5-7 | 创建表示不同类型数据的变量并操作它们的值。 | 算法和编程 | 创建计算工件 |
6–8 | 2-A-4-8 | 定义和使用隐藏复杂性的任务程序,并可以重复使用来解决类似的任务。 [澄清:学生使用和修改这些程序,但不一定要创建具有参数的程序。] | 算法和编程 | 开发和使用抽象 |
6–8 | 2-A-3-9 | 将问题分解成部分并为每个部分创建解决方案。 | 算法和编程 | 识别和定义计算问题 |
6–8 | 2-A-6-10 | 使用迭代设计过程(例如,定义问题,生成想法,构建,测试和改进解决方案)以独立和协作地解决问题。 | 算法和编程 | 测试和优化 |
6–8 | 2-C-7-11 | 证明所选择的硬件和软件可以完成任务(例如,比较平板电脑和桌面电脑的功能,选择使用哪些传感器和平台来构建机器人或开发移动应用程序)。 | 计算系统 | 通讯计算 |
6–8 | 2-C-4-12 | 分析设备的计算组件与其功能之间的关系。 [澄清:计算系统不仅包括计算机,还包括汽车,微波炉,智能手机,交通信号灯和闪存驱动器。] | 计算系统 | 开发和使用抽象 |
6–8 | 2-C-6-13 | 使用系统的过程来确定单个设备和连接设备内的问题源(例如,遵循故障排除流程图,更改软件以查看硬件是否工作,重新启动设备,检查连接,交换工作组件)。 | 计算系统 | 测试和优化 |
6–8 | 2-D-7-14 | 描述不同格式的存储数据如何在质量和大小之间取得平衡。 [澄清:比较音乐,文字和/或图像格式的例子。] | 数据和分析 | 通讯计算 |
6–8 | 2-D-7-15 | 解释使用计算工具收集,转换和分析数据以解决问题的过程(例如,使用应用程序或电子表格形式收集数据,决定使用或忽略哪些数据,并选择可视化方法)。 | 数据和分析 | 通讯计算 |
6–8 | 2-D-5-16 | 修改计算模型,以更准确地反映现实世界的系统(如生态系统,流行病,思想传播)。 | 数据和分析 | 创建计算工件 |
6–8 | 2-D-4-17 | 使用不同的编码方案表示数据。(例如,二进制,Unicode,莫尔斯码,简写,学生创建的代码)。 | 数据和分析 | 开发和使用抽象 |
6–8 | 2-I-7-18 | 对使用数据和信息的人们进行分类,预测行为并基于这些预测提出建议,总结其正面和负面的影响(例如,根据以前的浏览记录自定义搜索结果或有针对性的广告,可以同时节省搜索时间和限制选项)。 | 计算的影响 | 通讯计算 |
6–8 | 2-I-7-19 | 解释计算机科学如何促进创新,且对绝大多数的(几乎所有的)职业和学科有所提高。 | 计算的影响 | 通讯计算 |
6–8 | 2-I-1-20 | 提供计算工件和设备如何影响健康和福祉的例子,无论是积极的还是消极的。 | 计算的影响 | 培育融合的计算文化 |
6–8 | 2-I-1-21 | 描述互联网如何影响全球沟通和协作。 | 计算的影响 | 培育融合的计算文化 |
6–8 | 2-I-1-22 | 描述与计算设备和网络相关的伦理问题(例如访问权限,安全性,黑客攻击,知识产权,版权,知识共享许可和抄袭)。 | 计算的影响 | 培育融合的计算文化 |
6–8 | 2-I-6-23 | 重新设计计算工件以消除通用访问的障碍(例如,使用图像上的标题,高对比度颜色和/或更大的字体大小)。 | 计算的影响 | 测试和优化 |
6–8 | 2-N-7-24 | 总结与弱密码,缺乏加密,不安全的事务以及数据的持久性相关的安全风险。 | 网络和互联网 | 通讯计算 |
6–8 | 2-N-4-25 | 模拟信息在互联网和网络下如何通过多个设备作为数据包传输。 | 网络和互联网 | 开发和使用抽象 |
2016年CSTA K-12 CS暂行标准
3A级(9-10年级)
2011年的CSTA K-12 CS标准分为五个概念链(计算思维,协作,计算机实践与规划,计算机与通信设备,以及社会,全球与伦理影响)。 2016年的CSTA K-12 CS暂行标准分为K-12 CS框架的五个概念,目前正在开发中(计算机系统,网络和互联网,算法和编程,数据和分析以及计算机的影响)。 二者之间有一些重叠,但并不完全相同。
年级 | 识别码 | CSTA K-12 CS暂行标准 | 框架概念 | 框架实践 |
9-10 | 3A-A-2-1 | 设计和开发在团队中工作的软件工件。 | 算法和编程 | 合作 |
9-10 | 3A-A-2-2 | 展示软件产品设计和开发的多样化协作如何影响软件产品的设计和开发(例如讨论通过拥有多元化设计团队或反思自己团队开发经验而得到改进的产品的实际例子)。 | 算法和编程 | 合作 |
9-10 | 3A-A-7-3 | 比较和对比各种软件许可方案(例如,开源,免费软件,商业)。 | 算法和编程 | 通讯计算 |
9-10 | 3A-A-5-4 | 设计,开发和实现响应事件的计算工件(例如响应传感器的机器人,响应文本消息的移动应用程序,响应广播的子画面)。 | 算法和编程 | 创建计算工件 |
9-10 | 3A-A-5-5 | 使用以用户为中心的研究和设计技术(例如调查,访谈)来创建软件解决方案。 | 算法和编程 | 创建计算工件 |
9-10 | 3A-A-5-6 | 在计算工件的创建过程中整合分级适当的数学技术,概念和流程。 | 算法和编程 | 创建计算工件 |
9-10 | 3A-A-4-7 | 理解高级语言,翻译,指令集和逻辑电路中层次和抽象的概念。 | 算法和编程 | 开发和使用抽象 |
9-10 | 3A-A-4-8 | 使用预定义的构造将复杂问题解构为更简单的部分。(例如,函数和参数和/或类) | 算法和编程 | 开发和使用抽象 |
9-10 | 3A-A-4-9 | 演示用于管理问题复杂性的抽象的价值(例如,使用列表而不是离散变量)。 | 算法和编程 | 开发和使用抽象 |
9-10 | 3A-A-3-10 | 使用序列,选择和迭代设计算法。 | 算法和编程 | 识别和定义计算问题 |
9-10 | 3A-A-3-11 | 解释和演示如何使用建模和模拟来探索自然现象(例如集群行为,排队,生命周期)。 | 算法和编程 | 识别和定义计算问题 |
9-10 | 3A-A-6-12 | 使用系统的方法和调试工具来独立调试程序(例如设置断点,用调试器检查变量)。 | 算法和编程 | 测试和优化 |
9-10 | 3A-C-7-13 | 开发和应用的标准(如功耗,处理速度,存储空间,电池寿命,成本,操作系统),用于评估计算机系统给定的目的(例如,运行游戏,网页浏览,图形设计或视频编辑所需的系统规范) | 计算系统 | 通讯计算 |
9-10 | 3A-C-5-14 | 创建,扩展或修改现有程序,以使用不同形式的输入和输出来添加新功能和行为(例如,输入如传感器,鼠标点击,数据集; 输出如文本,图形,声音)。 | 计算系统 | 创建计算工件 |
9-10 | 3A-C-4-15 | 通过创建图表,模型,模拟或原型来演示嵌入物理系统(如消费电子,生物系统或车辆)中的计算机的角色和交互。 | 计算系统 | 开发和使用抽象 |
9-10 | 3A-C-4-16 | 描述计算机执行高级源代码所需的步骤(例如编译为机器语言,解释,读取-解码-执行周期)。[https://www.cise.ufl.edu/~mssz/CompOrg/CDAintro.html] | 计算系统 | 开发和使用抽象 |
9-10 | 3A-D-5-17 | 创建模拟真实世界系统的计算模型。(例如生态系统,流行病,思想传播) | 数据和分析 | 创建计算工件 |
9-10 | 3A-D-4-18 | 在数据的二进制,十进制和十六进制表示之间进行转换(例如,将十六进制颜色代码转换为十进制百分比,ASCII / Unicode表示)。 | 数据和分析 | 开发和使用抽象 |
9-10 | 3A-D-4-19 | 分析各种形式的数字信息之间具有代表性的平衡(例如,有损与无损压缩,加密与未加密,各种图像表示)。 | 数据和分析 | 开发和使用抽象 |
9-10 | 3A-D-3-20 | 讨论用于存储,处理和检索不同数量信息的技术(例如,文件,数据库,数据仓库)。 | 数据和分析 | 识别和定义计算问题 |
9-10 | 3A-D-3-21 | 应用基本技术来定位和收集小规模和大规模的数据集(例如,创建和分发用户调查,访问真实的数据集)。 | 数据和分析 | 识别和定义计算问题 |
9-10 | 3A-I-2-22 | 讨论与道德和不道德计算实践相关的社会和经济影响(例如,知识产权,黑客行为,软件盗版,柴油排放测试丑闻,装有恶意软件的新电脑)。 | 计算的影响 | 合作 |
9-10 | 3A-I-7-23 | 比较和对比信息访问和分配权。 | 计算的影响 | 通讯计算 |
9-10 | 3A-I-7-24 | 讨论收集和大规模分析个人信息的影响(例如,企业,社交媒体和政府如何收集和使用个人数据)。 | 计算的影响 | 通讯计算 |
9-10 | 3A-I-7-25 | 在将人的意图转化为人造物的情况下,描述计算如何与艺术和音乐共享特征。 | 计算的影响 | 通讯计算 |
9-10 | 3A-I-1-26 | 比较和讨论计算对行为和文化的积极和消极影响(例如,从搭便车到搭车应用程序的演变,在线住宿租赁服务)。 | 计算的影响 | 培育融合的计算文化 |
9-10 | 3A-I-1-27 | 演示计算如何实现新形式的体验,表达,交流和协作。 | 计算的影响 | 培育融合的计算文化 |
9-10 | 3A-I-1-28 | 解释数字鸿沟对关键信息访问的影响。(即对计算,计算教育和界面的不均衡访问) | 计算的影响 | 培育融合的计算文化 |
9-10 | 3A-I-6-29 | 重新设计用户界面(例如,网页,移动应用程序,动画),使其更具包容性,可访问性,并最大限度地减少设计者固有偏见的影响。 | 计算的影响 | 测试和优化 |
9-10 | 3A-N-7-30 | 描述基于Internet服务的关键协议和基础过程(例如,http / https和SMTP / IMAP,路由协议)。 | 网络和互联网 | 通讯计算 |
9-10 | 3A-N-4-31 | 说明计算机网络的基本组件(例如,绘制网络的逻辑和拓扑图,包括路由器,交换机,服务器和最终用户设备;使用字符串和纸张创建模型)。 | 网络和互联网 | 开发和使用抽象 |
9-10 | 3A-N-1-32 | 比较和对比网络安全的多个观点(例如,从安全专家,隐私权倡导者,政府的角度)。 | 网络和互联网 | 培育融合的计算文化 |
9-10 | 3A-N-3-33 | 解释信息安全(机密性,完整性,可用性)和身份验证技术的原理。 | 网络和互联网 | 识别和定义计算问题 |
9-10 | 3A-N-3-34 | 使用简单的加密和解密算法来传输/接收加密的消息。 | 网络和互联网 | 识别和定义计算问题 |
9-10 | 3A-N-6-35 | 确定保护网络的数字和物理策略,并讨论易于访问和安全需求之间的权衡。 | 网络和互联网 | 测试和优化 |
2016年CSTA K-12 CS暂行标准
3B级(11-12年级)
2011年的CSTA K-12 CS标准分为五个概念链(计算思维,协作,计算机实践与规划,计算机与通信设备,以及社会,全球与伦理影响)。 2016年的CSTA K-12 CS暂行标准分为K-12 CS框架的五个概念,目前正在开发中(计算机系统,网络和互联网,算法和编程,数据和分析以及计算机的影响)。 二者之间有一些重叠,但并不完全相同。
年级 | 识别码 | CSTA K-12 CS暂行标准 | 框架概念 | 框架实践 |
11–12 | 3B-A-2-1 | 在组软件项目中使用版本控制系统,集成开发环境(IDE)以及协作工具和实践(代码文档)。 | 算法和编程 | 合作 |
11–12 | 3B-A-2-2 | 通过参与软件项目团队(例如,与真实世界客户的社区服务项目)来演示软件生命周期过程(例如,螺旋式,瀑布式)。 | 算法和编程 | 合作 |
11–12 | 3B-A-7-3 | 修改现有程序以添加其他功能并讨论预期和意外的影响(例如,破坏其他功能)。 | 算法和编程 | 通讯计算 |
11–12 | 3B-A-7-4 | 通讯计算解释可能导致计算机程序受损的安全问题(例如,循环引用,模糊程序调用,缺少错误检查和字段大小检查)。 | 算法和编程 | 通讯计算 |
11–12 | 3B-A-7-5 | 比较各种编程语言并识别使它们有用于解决不同类型的问题和开发不同类型的系统(例如,声明,逻辑,并行,功能,编译,解释,实时)的功能。 | 算法和编程 | 通讯计算 |
11–12 | 3B-A-7-6 | 描述人工智能如何驱动许多软件和物理系统(例如,自主机器人,计算机视觉,模式识别,文本分析)。 | 算法和编程 | 通讯计算 |
11–12 | 3B-A-5-7 | 通过创建新数据类型,函数或类来分解问题。 | 算法和编程 | 创建计算工件 |
11–12 | 3B-A-5-8 | 通过使用库和API(例如,图形库,地图API)创建编程解决方案来演示代码重用。 | 算法和编程 | 创建计算工件 |
11–12 | 3B-A-5-9 | 实施AI算法来对抗人类的对手或解决问题。 | 算法和编程 | 创建计算工件 |
11–12 | 3B-A-5-10 | 为多个计算平台(例如,计算机桌面,网络,移动)开发程序。 | 算法和编程 | 创建计算工件 |
11–12 | 3B-A-4-11 | 批判性地分析经典算法(例如,排序,搜索)并在不同的上下文中使用,适当地进行调整。 | 算法和编程 | 开发和使用抽象 |
11–12 | 3B-A-4-12 | 根据效率,正确性和清晰度评估算法(例如,排序,搜索)。 | 算法和编程 | 开发和使用抽象 |
11–12 | 3B-A-4-13 | 比较和对比基本数据结构及其用途(例如,列表,映射,数组,堆栈,队列,树,图)。 | 算法和编程 | 开发和使用抽象 |
11–12 | 3B-A-4-14 | 讨论将大规模问题分解为必须在不同系统上同时处理的部分(例如,云计算,并行化,并发)时出现的问题。 | 算法和编程 | 开发和使用抽象 |
11–12 | 3B-A-3-15 | 提供计算上可解决的问题和难以解决的问题的示例。 | 算法和编程 | 识别和定义计算问题 |
11–12 | 3B-A-3-16 | 解释启发式算法(发现方法)的价值,以近似解决难以解决的计算问题。 | 算法和编程 | 识别和定义计算问题 |
11–12 | 3B-A-3-17 | 通过识别可推广模式并将其应用于解决方案来分解大规模计算问题。 | 算法和编程 | 识别和定义计算问题 |
11–12 | 3B-A-3-18 | 说明递归算法的执行流程。 | 算法和编程 | 识别和定义计算问题 |
11–12 | 3B-A-3-19 | 描述如何使用并行处理来解决大问题(例如,Seti@Home,FoldIt)。 | 算法和编程 | 识别和定义计算问题 |
11–12 | 3B-A-3-20 | 开发并使用一系列测试用例来验证程序是否按照其设计规范执行。 | 算法和编程 | 识别和定义计算问题 |
11–12 | 3B-A-6-21 | 通过诸如代码审查之类的过程评估程序的关键质量(例如,正确性,可用性,可读性,效率,可移植性,可伸缩性)。 | 算法和编程 | 测试和迭代求精 |
11–12 | 3B-C-7-22 | 解释操作系统的作用(例如,程序如何存储在内存中,如何组织/检索数据,如何管理进程和多任务)。 | 计算系统 | 通讯计算 |
11–12 | 3B-C-7-23 | 识别各种类别的硬件组件的功能以及它们之间的通信(例如,物理层,逻辑门,芯片,输入和输出设备)。 | 计算系统 | 通讯计算 |
11–12 | 3B-D-4-24 | 使用数据分析来识别复杂系统中的重要模式(例如,获取现有数据集并理解它们)。 | 数据和分析 | 开发和使用抽象 |
11–12 | 3B-D-4-25 | 讨论如何以各种形式(例如,指令,数字,文本,声音,图像)解释数据序列(例如,二进制,十六进制,八进制)。 | 数据和分析 | 开发和使用抽象 |
11–12 | 3B-D-4-26 | 评估模型和模拟的能力,以制定、完善和测试假设。 | 数据和分析 | 开发和使用抽象 |
11–12 | 3B-D-4-27 | 通过建模和模拟识别数学和计算模式(例如,回归,Runge-Kutta,排队论,离散事件模拟)。 | 数据和分析 | 开发和使用抽象 |
11–12 | 3B-D-1-28 | 针对不同类型的问题使用各种数据收集技术(例如,移动设备GPS,用户调查,嵌入式系统传感器,开放数据集,社交媒体数据集)。 | 数据和分析 | 培育融合的计算文化 |
11–12 | 3B-D-3-29 | 通过实施和比较加密和身份验证策略(例如,安全编码,保护密钥)来探索安全策略。 | 数据和分析 | 识别和定义计算问题 |
11–12 | 3B-I-7-30 | 制定评估计算创新对人类和社会的有益和有害影响的标准。 | 计算的影响 | 通讯计算 |
11–12 | 3B-I-5-31 | 在开发计算工件时选择,观察并促进全球协作(例如,在GitHub上托管的开源项目中提供解决漏洞的方案)。 | 计算的影响 | 创建计算工件 |
11–12 | 3B-I-1-32 | 设计并实施一项研究,评估或预测计算如何彻底改变我们文化的一个方面以及它如何演变(例如,教育,医疗,艺术/娱乐,能源)。 | 计算的影响 | 培育融合的计算文化 |
11–12 | 3B-I-1-33 | 讨论影响软件开发和使用的法律和法规。 | 计算的影响 | 培育融合的计算文化 |
11–12 | 3B-I-1-34 | 评估全球社会中公平,接入和计算资源分配的影响。 | 计算的影响 | 培育融合的计算文化 |
11–12 | 3B-N-4-35 | 模拟和讨论影响网络功能的问题(例如,带宽,负载,延迟,拓扑)(例如,使用免费的网络模拟器)。 | 网络和互联网 | 开发和使用抽象 |
附录A:专业术语表
K-12 CS框架草案(6/7/2016)术语表
以下词汇表包括K-12 CS框架(https://k12cs.org/)中所用术语的定义。 这些术语是为框架的读者而定义的,但并非硬性要求对学生可见。 CSTA衷心感谢K-12 CS框架,让我们把这个术语表作为我们补充材料的一部分。
术语条目 | 术语定义 |
抽象化 (Abstraction) | (过程):通过专注于主旨思想来降低复杂性的过程。 通过隐藏与当前问题无关的细节,并汇集相关的和有用的细节,抽象化降低了复杂性,并使其专注于问题本身。 在小学课堂上,抽象化可以帮助隐藏不必要的细节,以便更容易思考问题。 (产品):通过隐藏与当前问题无关的细节来帮助重构问题的事物,系统或问题的新表示。[MA-DLCS] |
算法 (algorithm) | 通过一步一步的过程来完成一项任务。 |
应用 (app) | 一种应用软件,设计用于在移动设备上运行,如智能手机或平板电脑(也称为移动应用程序)。[Techopedia] |
应用程序编程接口(API) (application programming interface (API)) | 一个软件程序,便于与其他软件程序交互。 它允许程序员使用一系列可调用函数与应用程序进行交互,并编写在底层系统升级时不会停止运行的程序。[Techopedia] |
人工品 (artifact) | 任何人创造的东西。 有关计算机科学定义,请参阅“计算工件”。 |
受众 (audience) | 计算工件或系统的预期最终用户。 |
自动 (automate) 自动化 (automation) | 自动:将不同的系统和软件连接起来,使之变成自动行为或自我调节。 自动化:自动的过程。 |
备份 (backup) | 在原始数据或数据文件丢失或被破坏的情况下使用数据或数据文件的副本的过程。[Techopedia] |
二进制 (binary) | 一种使用两个符号(通常是1和0)编码数据的方法。 为了说明二进制编码,我们可以使用任何两个符号。[MA-DLCS] |
蓝牙 (Bluetooth) | 无线技术,支持蓝牙兼容设备之间的通信。 例如,它用于台式机和笔记本电脑,数码相机,扫描仪,手机和打印机之间的短距离连接 |
漏洞 (bug) | 软件程序中的错误。 它可能会导致程序意外退出或以无意识的方式运行。 [TechTerms]删除错误(漏洞)的过程称为调试。 |
公民美德 (civic virtues) | 通过参与政治和公民社会,使公民能够为共同利益做出贡献的原则和特征。 参考:C3社会研究框架。 |
云 (cloud) | 存储数据并从网络访问的远程服务器。[Techopedia] |
码 (code) | 用编程语言表达的任何一组指令。[MA-DLCS] |
命令 (command) | 分配给程序执行特定任务的特定操作。[Techopedia] |
兼容性 (compatibility) 兼容 (compatible) | 两个系统不必改动就能一起工作的能力。 兼容性可以指任何两种产品之间的互操作性:硬件和/或软件,相同或不同类型的产品,或同一产品的不同版本。[TechTarget] |
复杂性 (complexity) | 解决问题或执行算法所需的资源的内在最小量,例如内存,时间,消息等。[NIST/ DADS] |
组件 (component) | 一个更大的组的元素。 通常,组件提供特定功能或相关功能组。 [TechTerms,TechTarget] |
计算 (computational) | 有关计算机或计算方法。 |
计算工件 (computational artifact) | 由计算行为或过程创造的发明,创造,最终产品或开发的副产品。 通常这个术语是指一个程序。 [罗德岛大学MA-DLCS,CSP] |
计算思维 (computational thinking) | 涉及问题的思维过程及其解决方案,使解决方案以一种可以由信息处理代理(如计算机)有效执行的形式表示[Cuny,Snyder,&Wing,2010] |
计算机 (computer) | 基于软件或硬件程序提供的指令执行进程,计算和操作的机器或设备。[Techopedia] |
计算机科学 (computer science) | 计算机和算法流程的研究,包括其原理,设计,实施和对社会的影响。 [MA-DLCS,CSTA] |
计算 (computing) | 计算是面向目标的活动,是任何需要,受益于,或者创建算法流程的活动。[MADLCS] |
计算设备 (computing device) | 一台物理设备,虽然不一定是传统计算机的形式,但它执行计算机的功能。 像计算机一样,计算设备使用硬件和软件来接收,处理和输出信息。 计算机,手机和电器内部的计算机芯片都是计算设备的例子。 |
计算系统 (computing system) | 计算系统由一台或多台计算机或计算设备及其硬件和软件组成。 尽管计算系统可以限于单个计算机或计算设备,但更通常指的是多个连接的计算机,计算设备和硬件的集合。 |
条件 (conditional) 条件陈述 (conditional statement) | 一种编程语言的特性,根据程序员指定的布尔条件(Boolean condition)评估为真还是假来执行不同的计算或操作。[MA-DLCS] |
组态/配置 (Configuration) | (进程):定义安装或修改硬件和软件时提供的选项,或者创建配置(产品)的过程。 [Tech Target](产品):详细说明系统组成的特定硬件和软件细节,特别是在连接设备,容量或功能方面。[Tech Target] |
连接 (connection) | 多个计算系统,计算机或计算设备之间的物理或无线连接。 |
连通性(connectivity) | (某种)程序或设备与其他程序和设备链接的能力。[Webopedia] |
控制 (control) 控制结构 (control structure) | 控制:(一般情况下)指导行动过程的权力。 (在编程中)指导哪些动作发生的方式,以及它们发生的顺序,通过编程代码的元素来实现。 控制结构:实现控制的编程结构。 |
文化习俗 (cultural practices) | 文化或亚文化的表现,特别是关于特定民族或其他文化群体的传统和习俗的表现。 |
数据 (data) | 收集并用于参考或分析的信息。 数据可以是数字的或非数字的,可以有多种形式,包括数字,文本,举手表决,图像,声音或视频。 [CAS-Prim,TechTerms] |
数据结构 (data structure) | 在计算机程序中存储和组织数据的一种特殊方式。[MA-DLCS] |
数据传输 (data transmission) | 通过通信介质向一个或多个计算,网络,通信或电子设备发送数字或模拟数据的过程。[Techopedia] |
数据类型 (data type) | 一个属性,用于指示值或变量可以具有哪种类型的数据,以及可以对其执行哪些类型的操作。 [Techopedia,维基百科] |
数据库 (database) | 一个安排有序的数据集合,一个电子系统,可以轻松访问,操纵和更新数据。[Techopedia] |
调试 (debugging) | 查找和纠正程序错误(漏洞)的过程。[MA-DLCS] |
分解(decomposition) 分解 (decomposed) | 分解(名词):将问题或系统分解为其组件(的过程)。 [MA-DLCS] 分解(动词):分解成组件。 |
设备 (device) | 在计算机系统内提供一种或多种计算功能的物理硬件或设备单位。 它可以为计算机提供输入,接受输出或两者兼备。[Techopedia] |
数字/数码 (digital) | 是电子技术的特点,使用离散值(通常为0和1)来生成,存储和处理数据。[Techopedia] |
数字公民 (digital citizenship) | 关于技术使用的适当,负责任的行为规范准则。[MADLCS] |
数字鸿沟 (digital divide) | 指获得数字技术的人与那些受社会,文化和经济因素影响而未曾拥有者之间的差距。[MA-DLCS] |
效率 (efficiency) | 衡量算法用于查找答案的资源量。(A measure of the amount of resources an algorithm uses to find an answer.) 它通常以理论计算的形式表示,如比较或数据迁移,内存使用率,传递的消息数量,磁盘访问次数等。[NIST / DADS] |
加密 (encryption) | 将电子数据转换为另一种形式,称为密码文本,除了授权方之外,任何人都不能轻易理解。[Tech Target] |
终端用户(或用户) end user (or user) | 为其设计硬件或软件产品的人员(与产品的开发人员,安装人员和服务人员不同)。[Tech Target] |
事件 (event) | 任何对系统硬件或软件都有显著性的可识别事件。用户生成的事件包括击键和鼠标点击; 系统生成的事件包括程序加载和错误。[Tech Target] |
执行 (execute) 执行 (execution) 可执行 (executable) | 执行(动词):执行(或“运行”)指令或指令集(程序,应用程序等) 执行(名词):执行指令或指令集的过程。 可执行文件:包含准备执行的机器语言程序的二进制文件。[FOLDOC] |
防火墙 (firewall) | 网络安全系统,具有控制传入和传出流量的规则。[MA-DLCS] |
方法(function) | 一种程序或例程。 一些编程语言区分了返回值的功能和执行一些操作但不返回值的程序。 [MA-DLCS]注意:该定义与数学中使用的定义不同。(ps. Function在数学中为函数) |
函数式编程 (functional programming) | 一种编程范式 - 构建计算机程序结构和元素的一种方式 - 将计算看作是对数学函数的评估,并避免改变状态和可变数据。 [Wikipedia]函数式编程语言在很大程度上依赖于递归,在程序语言使用循环的地方使用。[FOLDOC] |
全球定位系统 GPS | “全球定位系统”的缩写。 GPS是用于确定物体地面位置的卫星导航系统。[Tech Terms] |
黑客 (hacking) | 黑客就是适当的运用巧思(来自“Hack的含义”),巧妙地解决编程问题(新黑客词典),并使用计算机获取未经授权的访问系统内的数据。 [MA-DLCS] |
硬件 (Hardware) | 构成计算系统,计算机或计算设备的物理组件。[MA-DLCS] |
等级 (Hierarchy) | 项目根据重要程度排序的组织结构。[TechTarget的] |
人机交互(HCI)(Human-computer interaction (HCI)) | 研究人们如何与计算机进行交互,以及计算系统在何种程度上是为了与人类的成功交互而开发的。[Tech Target] |
识别码(Identifier) | 代码中用户定义的唯一程序元素名称(如变量或过程)。 识别码名称应该指明被引用元素的含义和用法。[Techopedia] |
输入 (input) | 发送给计算机的信号或指令。[Techopedia] |
互联网 (Internet) | 计算机网络及其连接的全球集合,全部使用共享协议进行通信[CAS-Prim] |
迭代 (iterative) | 涉及重复一个过程以达到预期的目标,目标或结果。[MA-DLCS] |
逻辑(布尔) logic (Boolean) | 布尔逻辑处理真值的基本操作:AND,OR,NOT及其组合。[FOLDOC] |
循环 (loop) 循环 (looping) | 循环:一种编程结构,只要特定条件成立,就可以重复一系列指令。 [TechTerms] 循环:重复使用循环。 |
存储 (memory) | 计算设备使用的临时存储。[MA-DLCS] |
模型 (model) | (某部分)问题或系统的表示。 (建模(v):创建模型的行为)[MA-DLCS]注意:此定义与用于科学的定义不同。 |
模块化 (modularity) | 已分解成较小模块的软件/ Web应用程序的特性。 一个应用程序可能有几个从主程序中调用的程序。 现有的程序可以通过在新应用程序中重新组合来重用。 |
网络 (network) | 一组通过电缆或无线媒体连接的计算设备(个人计算机,电话,服务器,交换机,路由器等),用于交换信息和资源。 |
操作系统 (operating system) | 可以与硬件通信并允许其他程序运行的软件。 操作系统(或“OS”)由系统软件或计算机启动和运行所需的基本文件组成。 每台台式电脑,平板电脑和智能手机都包含一个操作系统,为设备提供基本功能。[TechTerms] |
操作 (operation) | 由单一指令产生的动作,改变数据的状态。[Dictionary.com] |
结对编程 (pair programming) | 两个开发人员(或学生)团队一同在一台计算机上工作的技术。 [Tech Target] 通常术语“驱动程序”和“导航器”用于这两个角色。 在课堂环境中,教师通常会指定学生经常(或在特定时间段内)转换角色。 |
范式(编程) paradigm (programming) | 关于应该如何完成,制定或考虑的理论或一组想法。 任何形式的哲学或理论框架。 [Merriam-Webster] 常见的编程范例是面向对象,功能性,命令性,声明性,程序性,逻辑性和象征性的。 [DC,维基百科] |
参数 (parameter) | 在程序中使用的一种特殊类型的变量,用于指代作为程序输入提供的数据之一。 这些数据被称为参数。 参数的有序列表通常包含在子程序的定义中,因此每次调用子程序时,其调用的参数都可以分配给相应的参数。[MADLCS] |
盗版 (piracy) | 非法复制,分发或使用软件。[Tech Target] |
过程 (procedure) | 作为一个独立的代码模块,完成一些具体的任务,并在更大的源代码中引用。 这种代码项也可以被称为函数或子程序。 程序的基本作用是为开发人员或程序员通过调用过程本身触发的某个小目标或任务提供单一参考点。 程序也可以被称为函数,子程序,例程,方法或次程序。[Techopedia] |
处理器 (processor) | 执行程序的计算机或设备中的硬件。 CPU(中央处理单元)通常被称为计算机的大脑。 |
程序 (program) 程序设计 (programming) | 程序(n):计算机为实现特定目标而执行的一组指令。[MA-DLCS] 程序(v):通过编程生成程序。 编程:分析问题和设计,编写,测试和维护程序以解决问题的技能。[MA-DLCS] |
协议 (protocol) | 通信连接终点使用的一系列特殊规则。 协议指定说明通信实体之间的相互作用。[Tech Target] |
原型 (prototype) 原型设计 (prototyping) | 原型:最初产品或信息系统的早期粗略估算,通常是为演示目的而构建的。 [Tech Target,Techopedia] 原型设计:创建原型的过程。 |
伪代码 (pseudocode) | 关于计算机程序或算法必须做什么的详细且可读的描述,以正式样式的自然语言而不是以编程语言表达。[Tech Target] |
递归 (recursion) 递归函数 (recursive function) | 递归:一种算法技术,这个函数为了完成一项任务,可以调用自身成为任务的一部分。 [NIST / DADS] 递归函数:一种用编程语言实现的函数,可以调用(调用)自身。 [MA-DLCS,Techopedia] |
冗余(redundancy) | 一种系统设计,其中一个组件被复制,所以如果它失败了,将会有一个备份。[Tech Target] |
可靠性(reliability) | 任一系统的属性,始终产生相同的结果,以至于更好的达到甚至超越它的规格。 |
路由; 路由器(routing; router) | 路由:建立数据包从源到目的地的路径。 路由器(router):确定数据包路由的设备或软件。[Tech Target] |
安全性(Security) | 通过使用技术,流程和培训来防止访问或更改计算资源。[Tech Target] |
模拟; 模拟 simulate; simulation | 模拟:去模仿现实世界过程或系统随时间的运作。 模拟:仿真现实世界过程或系统随时间的运作。[MA-DLCS] |
软件software | 在计算机系统,计算机或其他计算设备上运行的程序。 |
存储器 storage | (1)一个地方(通常是一个设备),数据可以输入到这个地方,可以保存它,以后可以从中取回数据。 (2)数字数据通过计算技术保存在数据存储设备中的过程。 存储是一种使计算机暂时或永久保留数据的机制。[Techopedia] |
字符串string | 一系列字母,数字和/或其他符号。 字符串可能代表名称,地址或歌曲标题。 通常与字符串相关的一些函数是长度,串联和子串。[Tech Target] |
结构体structure | 在框架中用于讨论封装概念时没有指定特定范例的一般术语。 |
子程序subroutine | 可调用的代码单元,一种程序类型。 |
切换;交换机 switching; switch | 切换:将信号或数据元素指向特定硬件目的地的做法。 [Techopedia] 交换机:一种接收传入数据包并将其重定向到局域网(LAN)上的目的地的高速设备。[Techopedia] |
同步syncing | 合并来自多个计算系统,计算机或计算设备的数据。 |
语法syntax | 编程语言语句中元素的语法,结构或顺序。[TechTarget的] |
系统system; 系统思考systems thinking | 系统:为共同目的而一起工作的元素或组件的集合。 [TechTarget] (计算)系统:为实现共享任务而集成的一组计算硬件和软件。 系统思考:一种全面的分析方法,侧重于系统的组成部分相互关联的方式,以及系统如何随着时间的推移并在大型系统的情况下工作。[Tech Target] |
网络的物理和逻辑配置; 网络的安排,包括节点和连接链路。 逻辑拓扑是设备如何连接到用户。 物理拓扑结构就是它们实际上与电线和电缆相互连接的方式。 [个人电脑杂志] | |
拓扑topology | 网络的物理和逻辑配置; 网络的安排,包括节点和连接链路。 逻辑拓扑是设备如何连接到用户。 物理拓扑结构就是它们实际上与电线和电缆相互连接的方式。 [个人电脑杂志] |
故障排除troubleshooting | 解决问题的系统方法,通常用于查找和解决软件或计算机系统中的问题,错误或故障。 [Techopedia,Tech Target] |
USB | “通用串行总线”的缩写。 USB是当今计算机中最常用的计算机端口类型。 它可用于连接键盘,鼠标,游戏控制器,打印机,扫描仪,数码相机和可移动媒体驱动器,仅举几例。[Tech Talk] |
用户 user | 请参考“终端用户”条目 |
Variable 变量 | 一个符号名称,用于跟踪程序运行时可能更改的值。 变量不仅仅用于数字。 它们还可以保存文本,包括整个句子(“字符串”),或逻辑值“true”或“false”。变量具有数据类型并与数据存储位置相关联; 它的值通常在程序执行过程中发生变化。 [CAS-Prim,Techopedia]注意:此定义与数学中使用的定义不同。 |
草案版本 2016/ 06/ 07
本词汇表中多个定义来源的关键:
CAS-Prim | 在学校计算。计算国家课程:小学教师指南 (http://www.computingatschool.org.uk/data/uploads/CASPrimaryComputing.pdf) |
CSTA | CSTA K-12计算机科学标准(2011年) https://csta.acm.org/Curriculum/sub/K12Standards.html |
FOLDOC | 免费在线计算词典。(http://foldoc.org/) |
MA-DLCS | 马萨诸塞州数字扫盲与计算机科学(DLCS)标准,术语表(草案,2015年12月) |
NIST/DADS | 国家科学技术研究院算法与数据结构词典。 (https://xlinux.nist.gov/dads//) |
Techopedia | (IT Dictionary for Computer Terms and Tech Definitions on Techopedia) (译者注:最全面的计算机术语词典) |
Tech Target | Tech Target网络。(TechTarget - Global Network of Information Technology Websites and Contributors) (译者注:一家IT专业媒体公司) |
Tech Terms | 计算机技术术语词典 (http://www.techterms.com) |
一些定义直接来自这些来源,而其他定义则摘录或改编为包含与此框架相关的内容。
关于本词汇表的一些注意事项:
- 第一个来源是马萨诸塞州的数字素养和计算机科学标准草案。
- 我们没有定义普通英语中定义相同的任何单词。
- 我们只定义框架中使用的术语(语句本身,子概念标题,核心概念标题,核心实践标题,描述性材料/阐述)。 在框架的每个草案之后,我们检查确保词汇表中没有提供的术语不应用于框架中。
- 您会注意到许多定义包含源。 所有来源都在文档的底部描述。 大多数定义都是从源代码中重新定义的,但有些定义几乎是逐字逐句的。 其他是来自多个来源的定义的组合。 其中一些定义仅仅来自作者的头脑。
附录B:识别码的说明
2016 CSTA K-12 CS标准的唯一编号系统
为了帮助组织和跟踪每个标准,我们为每个标准开发了一个唯一的识别码。 以下面为例:
年级 | 识别码 | CSTA K-12 CS暂行标准 | 框架概念 | 框架实践 |
9-10 | 3A-A-2-1 | 设计和开发在团队中工作的软件工件。 | 算法和编程 | 合作 |
使用以下图例来解释每个[Interim] K-12 CS标准的唯一识别码:
识别码代码对应于: 年级 - 概念 - 实践 - 识别码 | ||
识别码 | 关键 | |
等级 | 1A | K-2年级 |
1B | 3-5年级 | |
2 | 6-8年级 | |
3A | 9-12年级 | |
3B | 11-12年级 | |
概念 | I | 计算的影响 |
A | 算法和程序 | |
D | 数据和分析 | |
N | 网络和互联网 | |
C | 计算系统 | |
实践 | 1 | 培育融合的计算文化 |
2 | 合作 | |
3 | 识别和定义计算问题 | |
4 | 开发和使用抽象 | |
5 | 创建计算工件 | |
6 | 测试和优化 | |
7 | 通讯计算 |