随着计算机对各个科技领域的创新、创业影响越来越大,计算机科学Computer Science已经毫无疑问成为美国各个大学最为热[]的申请专业。当然名校的计算机录取标准也水涨船高。即使是申请非计算机专业,具賂基本的计算机编程技能也成为越来越重要的一项要求。
因此,近年来越来越多的高中同学选择参加大学先修课CS(Computer Science)考试来证明自己的计算机能力。CS课程被大部分美国分大学认可。通过考试,一方面可以免掉大学的基础计算机课,另-方面可以有效的洎己的大学申请增加亮点。随着最新的课程Computer Science Principles(CSP)的开启,学生又多了一种计算机课程的选择。
传统CS简介
传统的CS考试也称为CS A,过去分为CS A和CS AB两种,现在取消了CS AB。已经有超过30年历史的*次CS考试是在1984年。考试的编程语言由早期的Pascal换成C++,后又在2004年换为现在的Java。考试大纲要求学生对Java编程语言有比较全面和深入的了解和应用基础。考试的形式由选择题和程序作答题两部分组成,各占成绩的50%。选择题大约40题,考察学生对Java语言的概念、逻辑和算法思想的理解。程序作答题需
要手写Java程序代码来解决一系列问题。
CS的要求相当于多数大学的计算机专业的基础编程课,所以通过CS考试-般都可以在大学免修相关的基础课程。与此同时,通过CS的学习和考试,可以对Java和编程计算思想达到-个比较全面的理解和训练,非常有助于学生进-步的计算机科学的学习和完成更加复杂的编程项目。
最新课程CSP计算机科学原理
CS虽然有利于训练和强化计算机编程技能,但是其专业和逻辑要求较高,对于申请非理工科的同学学习起来往往会感觉有些吃力。因此,为为进-步鼓励和推动对美国中学生的计算机教育,2016年秋美国大学委员会College Board推出一门全新的高中课程-Computer Science Principles(CSP),致力于让更多的中学生参与到计算机的学习当中。因为计算机已经成为当今任何行业都不可或缺的一项技能。2016到2017学年美国已经有超过2700个学校开设了CSP课程,2017年五月有超过45000名学生参加了*次的CSP的考试。
CSP的大纲一改传统CS专注于-种编程语言Java课程要求,设计了以7个Big Ideas为核心的教学大纲:
●Big Idea 1:Creativity创新能力
●Big Idea 2:Abstraction抽象能力
●Big Idea 3:Data and Information数据和信息
●Big Idea 4:Algorithms算法
●Big Idea 5:Programming编程
●Big Idea 6:The Internet互联网技术
●Big Idea 7:Global Impact全球化影响
从以上的7个知识重点可以很清楚的看出,CSP完全是为了满足当今信息化趋势而设计,为了让每一个学生无论是否选择计算机专业,都可以掌握各行各业都必需的计算机基本技能。
CSP课程的一一个最主要特点是,教学大纲不再要求具体的编程语言,任课老师可以根据学生的具体情况,选择一个或多个编程语言和方法,并且鼓励使用图形化语言。
AP CSP的特殊考试形式
AP CSP的考试由两部分组成。-是参加五月份的AP CSP笔考。该考试和AP CS的考试类似,由74道多项选择题组成单选或者双选,考察学生对7个Big Ideas的理解。另-部分是在4月15号到4月30号之前,在网上提交2个完整的作业项目,该作业项目可以使用任何AP CSP大纲所建议的编程语言或工具,学生需要照要求完成项目并上传电子版本到考试中心。注意由于学生可以使用的编程工具多种多样,所以项目的电子版本-般是以录像、视频、幻灯片讲解的形式提交而非是源程序和代码,以便大规模的人工阅卷评分。同时学生还要回答有关项目的一些问题。两个项目占AP CSP考试的40%,笔考选择题占60%。
区分AP CS和AP CSP
AP CSP课程推出的目的在于进一步推广计算机科学教育,更新计算机科学教育的内容体系而不是去替代传统
AP CS课程,因为二者有不同的侧重和特点。AP CS训练扎实的Java编程技能,通过考试的同学相当于完成正规大学计算机系基础编程课程,所以该课程需要学生对Java的编程概念和细节有比较全面的理解。而AP CSP则更加强调计算机科学领域知识的广度,对具体编程语言不做过深的要求,目的在于鼓励更多的学生参与计算机科学学习,因此难度相对简单适合各个专业兴趣背景不同的同学。
尽管美国大学委员会并不对两门计算机AP课的学习顺序有任何要求,但是从课程内容的要求来看,这两个AP课程是相辅相成的。目前在美国-些有能力开设两[]AP课程的学校,普遍认为AP CSP可以作为AP CS的一个的先修课程。
如何选择
对于这两门AP计算机课程的选择,主要应该考虑的是个人的专业兴趣。如果有明确的选择计算机科学或工程专业的打算,基于Java的传统AP CS对未来的申请和专业学习更有帮助,建议作为最终的目标。但是如果目前还不确定将来是否想要选择计算机专业,AP CSP将是-个很好的体验、学习计算机科学的机会,对于打算申请攻读非理工科专业的同学,AP CSP将会是招生委员会衡量申请学生科学背景的一个很好的指标。
另外一个考虑这两门]课的因素是个人的年级和编程背景。-般来说AP CSP可以考虑作为AP CS的先修课,因此对于9-10年级的同学,可以考虑优先学习AP CSP。有了AP CSP之后可以对AP CS学习打下一个坚实的基础。对于11年级的同学一般来说要根据自己的时间和申请打算确定--T]进行准备。如果个人有比较良好的计算机科学或编程基础,可以考虑直接准备AP CS或者两[]同时准备。