从搜索引擎到智能手机、从社交网络到电子商务、从电影大片到航天飞行,到处都有计算,到处都离不开计算机。人人要用计算机,人人需学计算机。计算科学不但改变了我们的生活,也正在改变着我们的思维,丰富着我们认识世界和改造世界的方法和手段。
你一定问过自己这样的问题:计算机是怎么工作的?计算机是如何解决问题的?计算机为什么能应用于各行各业?本课程正是围绕这些问题,以通俗易懂的语言、精心制作的视频、生动有趣的案例,试图讲清计算机系统的构成以及各部分协同工作的原理,讲清现实世界问题映射到计算机世界求解的过程和主要方法、技术,为学习者揭开计算世界的神秘面纱,使其能体验计算之美,理解并初步掌握计算思维方法。
一、课程考核方式:
本课程适合对计算机有兴趣的学习者,如已对计算机有初步了解更好,没有也没关系。
《计算机导论-以计算思维为导向》教学大纲
课程名称:计算机导论
英文名称:Introduction to Computer
课程编号:11A001
学时数及学分:学时32 学分2
教材名称及作者、出版社、出版时间:
《计算机导论》(第三版),袁方等编著,清华大学出版社,2014
《动手玩转Scratch2.0编程—STEAM创新教育指南》,[美] Majed Marji(马吉德.马吉)著;于欣龙,李泽 译,电子工业出版社,2015
本大纲主笔人:韩鸿宇
《计算机学科导论》是计算机专业的基础课程,也是一个入门课程。该课程由理论学习和上机实验两部分组成。第一部分主要介绍计算机的产生、发展、特点、计算机硬件、软件、计算机体系结构、程序设计以及应用等领域的基本知识。第二部分通过可视化编程的学习,用通俗易懂、趣味案例、深入浅出的方式,介绍计算学科所蕴含的经典的计算思维。
通过该课程的学习,使学生对计算机各领域有初步的认识和了解,培养学生的计算思维能力,提高学生的计算与信息素养,为学生今后设计、构造和应用各种计算系统求解问题奠定思维基础,帮助学生了解社会/自然问题利用计算手段进行求解的基本思维模式,具有利用典型计算思维进行计算系统构造的初步能力;了解由问题到算法再到程序的问题求解思维模式,了解问题、算法与计算资源之间的关系;了解难解性问题求解的基本思路,具有构造算法并模拟算法执行的初步能力。为今后计算机专业的后续课程和专业课程学习打下一定的基础。此外,该课程的学习对于非计算机专业的学生也十分必要,通过课程学习,能培养学生的计算机素养,使学生能了解计算机的基本应用以及IT给社会和生活所带来的影响。
说明:通过本章的学习,要求理解计算机的基本概念、分类和主要特点。了解计算机的发展简史、应用领域和发展趋势。了解著名的计算机科学家、计算机公司、计算机学术组织和计算机奖项,从而激发学生的学习兴趣,为日后从事计算机相关的学术研究、技术开发或商业运营打下基础。
说明:通过本章的学习,应掌握数据在计算机内部的表示形式、存储方式及数制间的转换方法,理解命题逻辑、逻辑代数、计算机的结构,为进一步学习后续课程打好基础。
说明:通过本章的学习,应理解计算机的体系结构,以及中央处理器、存储器和输入输出设备等基本部件的概念,了解主板和总线的基本概念和组成。
说明:通过本章的学习,应该了解计算机程序设计语言和算法的设计与分析方法,以及一般高级程序设计语言被翻译成可以执行的机器指令的大致过程,了解操作系统在计算机系统中所起的作用以及常用工具软件的使用。
说明:通过本章的学习,了解计算机在制造业、商业、银行与证券业、交通运输业、办公自动化与电子政务、教育、医学、科学研究艺术、娱乐和信息家电中的应用以及其所用的主要技术,拓宽视野,提高将计算机应用于实际的能力。
说明:通过本章的学习,了解Scratch的编程环境和不同积木块的基本功能,了解Scratch的算术操作符和数学函数。通过制作一个小案例,加深对Scratch各类积木块功能的理解,体会Scratch 的编程风格,为进一步深入学习Scratch奠定基础。
说明:本章通过学习Scratch支持的数据类型、数据类型之间的转换以及如何创建并使用变量保存数据,使学生理解使用变量进行编程的基本思想。通过将程序的整体功能划分为多个部分,使用过程实现每个部分功能,使学生理解“分而治之”的结构化程序设计的基本思想。
说明:本章通过学习Scratch的比较操作符和分支结构,使学生理解计算机编程中的比较运算、布尔运算和条件转移的基本思想。通过学习Scratch中的重复结构、停止积木,以及用户输入验证等,使学生理解计算机编程中的嵌套循环、递归的基本思想。
说明:字符串处理是一项非常重要的编程技能。本章通过学习字符串数据类型,编写操作字符串的过程,使学生理解计算机编程中的字符串的连接、比较、字符的移除以及字符的排序等基本思想。链表可以统一操作多个变量,在编程中极其常用。通过学习用Scratch创建链表,操作链表的相关积木,制作运用链表的程序,使学生理解链表的创建与使用,链表的初始化与变量的访问,基本的排序和搜索算法等编程思想。