程序设计”课程目标的认知结构解析
课程目标的三个维度 [解析“算法与程序设计”的课程目标]
![课程目标的三个维度 [解析“算法与程序设计”的课程目标]](https://img.taocdn.com/s3/m/0802cb552379168884868762caaedd3382c4b579.png)
课程目标的三个维度[解析“算法与程序设计”的课程目标]在素养教育背景下,以公布《平凡中学技术课程标准〔试验〕》〔以下简称“新课标”〕为标记,我国信息技术教育实现了由计算机教育到信息技术教育的根本性转变。
作为计算机教育主要内容达十六年之久的“程序设计”,变成了新课标中的“算法与程序设计”选修模块〔以下简称“编程模块”〕。
有关教学目标变成了课程目标,并规定为:“旨在使学生进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用;能从简洁问题启程,设计解决问题的算法,并能初步运用一种程序设计语言编制程序,实现算法解决问题”。
该目标较原程序设计的教学目标已经发生了革命性的改变。
这种历史的渊源对“算法与程序设计”模块的课程目标〔以下简称“课程目标”〕在教学实践中的承受和理解产生了紧要的负面影响。
为了解疑释惑,启发对课程目标的深化思索,促使我国信息技术教育的改革走向深化,本文认为有必要对教学实践中片面理解课程目标的问题以及由此带来的教学困惑进展全面的剖析,从不同的角度对该课程目标进展全方位的诠释。
曲解课程目标的事实及由此产生的教学困惑所谓课程目标是某一课程学习完以后,学习者在情感与看法、过程与方法、学问与技能等方面发生的改变,是造就目标在特定课程中详细化、操作化的表述。
与广阔一线老师习惯了的教学目标相比,课程目标要求全面表达素养教育的精神,从学问目标的一维表述,开展成为“学问与技能”、“过程与方法”、“情感看法与价值观”的三维呈现。
这种三维目标的大革命使得从一维目标的传统中走来的广阔老师,对新课标中编程模块课程目标的理解和把握存在诸多困难,出现了不少问题,引出了很多困惑,概括起来有以下几种状况。
1.编程实力说把编程模块理解成造就程序员的根底课,着重强调编程实力的造就。
在长达十六年的教学过程中,我国信息技术课就是程序设计,就是学习BASIC语言。
其课程目标〔教学目标〕是训练和造就学生运用计算机语言进展程序设计的实力。
课程《C++程序设计》课程标准

《C++程序设计》课程标准课程编码:课程类别:适用专业:高职高专计算机类专业授课单位:学时:90-100学时编写执笔人及编写日期:学分:编写负责人及审定日期:1 课程定位和课程设计1.1 课程性质与作用《C++程序设计》课程是计算机类专业群的一门基础课程,是从事计算机程序设计的入门课程,同时也是培养计算机程序设计基础能力与学习面向对象方法的重要课程。
本课程为实现计算机类应用型技能人才的培养奠定了坚实的基础,起到学习专业技能的引领作用。
通过本课程的学习使学生熟练掌握C++语言的基础语法结构,掌握面向对象程序设计的基本方法,理解面向对象程序设计的基本思想,培养运用程序设计解决应用问题的思维,强化训练学生编程技能,从而达到培养应用面向过程及面向对象方法进行程序设计解决应用问题的综合能力的目的。
本课程是计算机类专业学生入校后开设的第一门计算机专业基础课程,其后继课程有数据结构、Java程序设计、程序设计、Visual C++程序设计、数据库技术、操作系统、软件项目等课程。
本课程是后续课程学习的基础,没有本课程的教学,很难进行后续课程——数据结构、Visual C++程序设计等课程的学习和教学。
本课程的的教学对后续课程的学习起到了尤为重要的先导作用与奠基作用。
1.2 课程设计理念本课程始终以技术的发展、企业对能力的要求、创新能力的提高为设计的根本依据。
课程教学的核心内容是工作内容和工作过程所要求的知识、技术和能力;教学过程严格遵循工作过程,由易到难、由浅到深、由简到繁、循序渐进的进行;本课程的设计参考职业资格和能力水平考试大纲。
课程教学使学生能综合全面可持续的发展。
1.3 课程设计思路课程以计算机程序员和软件工程师的职业行动能力为核心进行课程设计。
教学内容、教学方法、教学手段以及成绩评定均以职业行为为导向,紧紧围绕职业行动能力的培养为重心进行设计。
整个教学过程采用“案例讲解-验证实训-项目实战-小组讨论”的模式,多种形式有机结合进行教学。
《C#程序设计》课程标准及教案

《C#程序设计》课程标准课程类型:理论课(含实践)适用专业:计算机类总学时:90一、课程性质1、课程的性质(注:这部分主要对课程的性质、地位、功能做定性描述)《C#程序设计》是一门理论综合性高、应用实践性强的课程,是计算机类及相关专业的重要专业基础课程。
《C#程序设计及应用》课程是面向软件技术、移动应用开发、计算机网络技术等专业的学生开设的必修专业课。
设置该课程的目的,不只是为了要求学生学习某种特定的语言,更重要的是要求学生学习和掌握面向对象的编程技术和现代软件设计的思想,为后续的系列课程学习奠定基础。
2、本课程与前后课程之间的联系、要求C#基于.NET框架下开发应用程序代表了当前的主流编程方向之一。
本课程的前导程序为《C程序设计》、《数据结构》、《数据库技术》等,其后续课程《程序设计》、《 MVC程序设计》、《软件工程》等。
二、课程目标《C#程序设计》课程定位于基础程序设计思想的学习,侧重于面向对象的程序设计的学习,学习的重点是分析问题、解决问题的方法,通过分析、分解,最终归纳整理出计算机能够实现的过程(算法)。
以此拓展学生的思维空间,训练学生的基础编程能力。
本课程着重解决三个重点问题:面向对象编程的基础及深入、可视化编程的基础及深入、数据库编程及应用三个方面。
在教学过程中注重培养提高学生的职业岗位技能和职业素质,力求达到岗位技能和职业标准。
1、专业能力(1)了解.NET平台;(2)了解C#的特点与应用环境;(3)熟悉C#的运行环境和开发环境;(4)了解结构化程序设计思想;(5)掌握C#提供的数据结构;(6)了解和掌握面向对象的概念、特点、技术;(7)了解和掌握Windows应用程序设计的结构、窗体、常用控件、事件;(8)了解和掌握数据库的实现连接、交互、管理与数据绑定技术;(9)了解和掌握中小型数据库管理信息系统(C/S架构)的实现技术;(10)了解软件工程中的需求分析、设计、编码、测试等方面的知识。
程序设计课程设计大纲

程序设计课程设计大纲一、教学目标本课程旨在通过程序设计的学习,让学生掌握编程基础知识和技能,培养学生的逻辑思维和问题解决能力。
具体目标如下:1.理解编程基本概念,包括变量、数据类型、运算符等。
2.掌握编程语言的基本语法和结构,包括条件语句、循环语句等。
3.了解常用的编程算法和数据结构。
4.能够使用编程语言编写简单的程序,解决实际问题。
5.能够阅读和理解简单的程序代码。
6.能够进行简单的程序调试和优化。
情感态度价值观目标:1.培养学生对编程的兴趣和热情,提高学生的自信心和自主学习能力。
2.培养学生解决问题的能力和团队合作精神。
3.培养学生的创新思维和计算思维能力。
二、教学内容本课程的教学内容主要包括编程基本概念、编程语言的基本语法和结构、常用的编程算法和数据结构。
具体安排如下:1.编程基本概念:介绍变量、数据类型、运算符等基本概念。
2.编程语言的基本语法和结构:介绍条件语句、循环语句等基本语法和结构。
3.常用的编程算法和数据结构:介绍排序算法、查找算法、数组、链表等常用的算法和数据结构。
三、教学方法为了激发学生的学习兴趣和主动性,本课程将采用多种教学方法,包括讲授法、讨论法、案例分析法、实验法等。
1.讲授法:通过教师的讲解和演示,向学生传授编程知识和技能。
2.讨论法:通过小组讨论和分享,培养学生的团队合作精神和解决问题的能力。
3.案例分析法:通过分析实际案例,让学生理解和应用编程知识和技能。
4.实验法:通过编写和运行程序,让学生实践和巩固编程知识和技能。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,将选择和准备以下教学资源:1.教材:选择一本适合学生水平的编程教材,作为学生学习的主要资源。
2.参考书:提供一些编程相关的参考书籍,供学生进一步学习和拓展。
3.多媒体资料:制作一些教学视频和演示文稿,以图文并茂的方式呈现教学内容。
4.实验设备:准备计算机和编程环境,供学生进行编程实验和实践。
《程序设计》课程介绍及要求

学习建议与提高途径
学习建议
建议学生注重理论与实践相结合,多进行编程实践, 加深对知识点的理解和掌握。同时,积极参加课程讨 论和小组活动,提高团队协技创新活动,拓展编 程视野,提高编程技能和创新能力。同时,积极利用 网络资源和学习平台,自主学习相关知识和技术。
了解不同计算机体系结构的特点和优 劣
软件系统
包括操作系统、编程语言、应用程序 等
编程语言概述
1 2
编程语言分类
了解机器语言、汇编语言、高级语言等
编程语言特点
了解不同编程语言的特点、适用场景和优缺点
3
编程语言发展趋势
了解当前和未来编程语言的发展趋势和新技术
程序设计思想与方法
面向过程程序设计
01
了解结构化程序设计的基本思想和方法
面向对象程序设计
02
了解面向对象程序设计的基本思想和方法,如类、对象、封装、
继承、多态等
程序设计风格
03
了解不同程序设计风格的特点和优劣,如简洁明了、易于维护
等
算法与数据结构基础
算法基本概念
了解算法的定义、特性和评价 标准
常用算法介绍
了解并熟悉排序、查找、图论 等常用算法
数据结构基本概念
了解数据结构的定义、分类和 基本操作
THANKS FOR WATCHING
感谢您的观看
课程时间
每学时通常为45分钟,具体根据学校 的课程时间安排而定。建议学生合理 安排课余时间进行预习和复习,以保 证学习效果。
02 教材与参考资料
教材简介
《程序设计基础》
本课程主要教材,系统介绍了程序设 计的基本概念、语言基础、算法与数 据结构、程序设计方法等内容,适合 初学者入门和提高。
程序设计教学大纲

程序设计教学大纲摘要:程序设计教学大纲是为了指导学生学习和掌握程序设计的基本原理和方法而制定的一份教学计划。
本文将对程序设计教学大纲进行详细的阐述,包括目标、内容、教学方法和评估等方面的内容,旨在帮助教师和学生更好地了解程序设计教学的整体框架和要求。
一、背景随着信息技术的飞速发展,计算机编程已经成为了一门重要的技能。
程序设计是计算机科学和技术教学中的核心课程,通过学习程序设计,学生能够掌握解决问题、分析需求和设计算法的能力,为将来的职业发展打下坚实的基础。
二、目标本课程的目标是培养学生的程序设计思维和实践能力,具体包括以下几点:1. 理解程序设计的基本概念和原理;2. 学会使用常见的程序设计语言和开发工具;3. 掌握问题分析和算法设计的基本方法;4. 培养良好的编程习惯和团队合作精神。
三、内容本课程的内容主要包括以下几个方面:1. 程序设计基础知识:介绍计算机编程的基本概念,包括变量、数据类型、运算符、控制结构等;2. 程序设计语言:学习一种或多种常见的程序设计语言,如Python、C++、Java等,并学会使用相应的开发工具;3. 算法设计与数据结构:讲解常见的算法和数据结构,如排序、查找、栈、队列等,以及它们的应用场景;4. 面向对象程序设计:介绍面向对象的思想和方法,并学习面向对象的程序设计语言和开发工具;5. 软件工程和项目管理:介绍软件工程的基本原理和方法,包括需求分析、系统设计、编码、测试和维护等;6. 实践项目:通过实践项目的开发,巩固所学知识,并培养解决实际问题的能力。
四、教学方法为了实现上述目标,本课程将采用多种教学方法,包括:1. 讲授:通过课堂讲解,向学生传授程序设计的基本知识和技能;2. 实践:通过编写程序和完成实践项目,让学生将所学知识应用到实际问题中,并培养解决问题的能力;3. 讨论:组织学生进行小组讨论,促进学生之间的交流和合作,共同解决问题;4. 案例分析:通过真实案例的分析,让学生了解程序设计在实际应用中的重要性和作用。
《程序设计》课程大纲

《程序设计》课程大纲一、课程概述《程序设计》是一门面向计算机及相关专业学生的基础课程,旨在培养学生的程序设计思维和基本编程能力。
通过本课程的学习,学生将掌握一种主流编程语言的语法和编程技巧,能够独立编写简单的程序解决实际问题。
二、课程目标1、知识目标了解程序设计的基本概念、方法和流程。
掌握所选编程语言的语法、数据类型、控制结构、函数等基础知识。
2、能力目标能够运用所学知识,分析问题并设计算法。
能够使用所选编程语言实现算法,编写结构清晰、逻辑正确的程序。
3、素质目标培养学生的逻辑思维能力和创新意识。
提高学生解决问题的能力和团队合作精神。
三、课程内容1、程序设计基础程序设计的概念和发展历程。
算法的概念、表示方法和设计原则。
程序的基本结构(顺序、选择、循环)。
2、编程语言基础所选编程语言(如 Python、C++等)的安装和开发环境配置。
变量、常量、数据类型(整型、浮点型、字符型、字符串等)。
运算符和表达式。
3、控制结构选择结构(ifelse、switch)。
循环结构(for、while、dowhile)。
嵌套控制结构的应用。
4、数组与字符串数组的定义、初始化和操作。
字符串的处理和操作。
5、函数函数的定义、调用和参数传递。
函数的返回值和作用域。
6、结构体与指针结构体的定义和使用。
指针的概念和操作。
7、文件操作文件的打开、关闭、读写操作。
8、面向对象程序设计(可选)类和对象的概念。
类的成员变量和成员函数。
四、教学方法1、课堂讲授讲解程序设计的基本概念、语法知识和编程技巧。
通过示例演示算法的设计和程序的实现过程。
2、实践教学安排实验课程,让学生在实践中巩固所学知识,提高编程能力。
布置课后作业,要求学生独立完成程序设计任务。
3、项目驱动教学分组完成小型项目,培养学生的团队合作和项目开发能力。
4、在线学习资源提供在线课程视频、学习资料和编程练习平台,方便学生自主学习。
五、教学资源1、教材选用经典的程序设计教材,如《C++ Primer》、《Python 从入门到实践》等。
程序设计语言课程的概念体系及教学策略探讨

程序设计语言课程的概念体系及教学策略探讨
程序设计语言课程的概念体系及教学策略探讨
程序设计语言课程是一门基础学科,其中考查学生理解编程概念、掌握程序逻辑与分析技巧,并熟练操作编程语言的能力。
要培养学生具有这样的能力,必须从两个方面构建一个完整的概念体系:学习环境与教学策略。
首先,要构建环境友好、安全协作型,充满挑战与激励的学习环境。
学生在这样的环境中,能很好地体现出自身学习能力,体会到学习的乐趣。
其次,针对学生自身水平以及教室应用情境,结合有效的学习策略,使课程具有多层次、多模式的教学性。
例如社会小组学习、继承机制、智能提示等,可以有效提高课堂效率。
此外,为了配合现实应用,需要考虑移动交互及私有云项目解决方案,让技术能够更深入各类行业。
要进一步推进程序设计语言课程教学,可以采用当前流行的语言,像JavaScript、Python等,配合不断更新的API,以及其它实现技巧,使课程更具有创新意义。
总之,构建程序设计语言课程的概念体系是实现教学目标的关键,要培养学生学习兴趣和能力,有效运用学习环境与策略,是实现这一目标的前提。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
“程序设计”课程目标的认知结构解析2006-01-02 23:33, 田俊华、李艺, 7175 字, 1/1445, 原创 | 引用本文将“算法与程序设计”模块的目标描述为:内化为一个“结构”,外显为若干“层次/亚层”;并认为,在基础教育阶段,“程序设计”课程的关键是要帮助学生建立合理的算法与程序设计的认知结构,而不在于要求学生掌握多少语法知识与编程技巧,进一步的目标在于提升学生的信息素养,为其终身发展奠定良好的基础。
最后根据这一认识对高中“程序设计”的教学提出了相应的建议。
在我国信息技术课程的发展历史中,“程序设计”一直扮演着重要的角色。
在教学实践中,关于其存在性和价值,引发过许多争论,而因其单调的逻辑形式等原因,素来被认为是难教、难学的典型代表,许多中小学信息技术课程的承担(实践)者和研究者,都曾经对它产生过困惑。
从最初以极大的热情在中小学开设BASIC语言教学,到1997年《中小学计算机课程指导纲要(修订稿)》中将“程序设计”作为“选学模块”,再到2000年《中小学信息技术课程指导纲要(试行)》中作为“基本模块”但有条件地“选取适当的教学内容”的发展历程看,大家对“程序设计”在基础教育阶段的教学既感到难以割舍,又感到无所适从。
当前,随着《普通高中技术课程标准(实验稿)》(以下简称“课标”)的颁布与实施,“算法与程序设计”作为选修模块设置于信息技术部分,“程序设计”再次成为人们关注的焦点。
与其它几个选修模块相比,考虑到大多数不同高中教师的习惯及教学设备配备等因素,“算法与程序设计”很可能成为被选频率较高的模块,因此不能低估它的可能影响与价值,对此,我们有必要从更深层面对课程目标进行思考。
本文从心理学的角度就“程序设计”的课程目标作如下探讨。
一、“程序设计”课程目标的心理学分析1、“程序设计”课程目标的简单历史回顾在我国中小学信息技术教育中,“程序设计”的教学具有较长的历史,我们认为,“程序设计”课程目标的变化大约经历了三个阶段,形成三个认识层次。
第一层次,1982年教育部决定在清华大学、北京大学等5所大学的附中试点开设BASIC语言选修课,启动了我国中小学信息技术教育(计算机教育)的历程。
这时“计算机文化观[1]”刚刚形成,并且开始对我国的信息技术教育产生影响,受技术发展的局限,这时的信息技术(计算机)课就是程序设计课,就是学习BASIC语言。
于是,大多数人又将“程序设计”教学基本等同于“程序设计能力”的教学,课程目标可以描述为:训练学生使用程序设计语言进行程序设计的能力。
这是“程序设计”课程目标的最初层次,这个课程目标的影响延续时间较长,影响较大,直至今天,实际教学中存在的不少误区还是缘发于它的作用。
随着信息技术的发展和信息技术课程开设经验的积累,人们对计算机文化观的理解渐趋成熟,与此同时,1995年,国外学者针对我国千军万马齐学“BASIC”的现象提出了忠告,人们逐渐意识到,除了赋予信息技术课程更多的教育责任以外,仅仅程序设计部分还应该蕴藏/负载更多的文化意义。
这一认识使“程序设计”课程目标发生了很大的转变,上升至第二个层次:1997年的《中小学计算机课程指导纲要(修订稿)》指出,“程序设计”课程的目的是“要通过程序设计的教学让学生更深入地理解计算机的工作原理,初步学会程序设计的一般方法,并了解用程序设计的方法解决实际问题的几个基本步骤。
”这一认识与第一层次的认识相比显然全面而深刻,但如果纵观信息技术(计算机)课的整个教学体系不难发现,当时的课程目标明显带有“计算机工具论”的倾向,“程序设计”课程目标主要是让学生了解计算机,学会使用计算机解决问题,而对其携带的信息文化价值、思想方法价值等尚未提升到相应的高度。
需要指出的是,2000年《指导纲要》中虽然写出了“信息素养培养”的字样,但未在课程指导纲要中予以真正落实,其围绕具体工具展开的模块化结构显然是工具论的简单延伸,未有实际的变革和超越。
随着基础教育课程改革的展开,人们对信息技术课程的认识不断走向深入,在2003年推出的“课标”中,程序设计部分随着整体课程目标再次得以升华,从而进入第三个层次。
“提升学生信息素养”、“关注全体学生”不仅是课程的基本理念,而且也实实在在地落实到整个课程中。
通过“程序设计”的教学,让学生掌握程序设计的基本知识与基本技能固然重要,但对程序设计方法与过程的体验,对其携带的思想方法、文化内涵的了解,以及正确态度的形成同样不可忽视。
这一层次的目标更多关注“整体的人”的发展,而不仅仅是学科知识的系统性与完整性,从提升学生信息素养的高度对“程序设计”的知识与技能、方法与过程以及态度、情感与价值观提出了要求,由此构成一个全方位的立体目标体系。
具体地,算法与程序设计模块在继承信息技术课程总目标的前提下,又具体地提出:“旨在使学生进一步体验算法思想,了解算法和程序设计在解决问题过程中的地位和作用;能从简单问题出发,设计解决问题的算法,并能初步使用一种程序设计语言编制程序实现算法解决问题。
”与以往的课程目标相比,新的课程目标着眼于人的终身学习和个性发展,目标中除规定了外显行为外,更加注重对学习者内部心理过程的描述,因此,准确把握“程序设计”课程目标需要从心理学的角度加以理解。
例如,对大部分学生来说,从“程序设计”课中能学到哪些“有用”知识?体验程序设计过程的意义何在?在商业应用软件日益丰富的今天,还有没有必要学习程序设计?短短30多个学时能学会程序设计吗?“程序设计”课的基础教育性质体现在哪里?它是如何支撑学生进一步发展的?等等。
2、“程序设计”课程目标的心理学内涵在与高中信息技术课教师的交流中我们发现,部分教师在教授“程序设计”时比较注重所谓的“编程技巧”,而对程序设计的整体结构及思想方法重视不够,而且这种认识在高中信息技术课教师中具有一定的代表性。
我们认为,在高中阶段,“程序设计”课程应该是让学生学习那些具有广泛迁移意义的知识与方法,是“为迁移而教”,其实质是塑造学生良好的认知结构。
“程序设计”课程目标就是要在学生已有的适当观念上,帮助他们建立尽可能合理的算法与程序设计的认知结构,学习用程序设计的思想方法解决问题,培养学习程序设计的兴趣爱好,为学生将来的发展提供该领域的知识与能力准备。
那么,什么样的算法与程序设计认知结构才是合理的呢?合理的算法与程序设计的认知结构应该是程序设计的一般规律及其基本思想方法在学习者认知结构中的合理映射,是利用程序设计解决问题的能力的合理映射,同时还是欣然/乐于此道的态度的合理映射(延伸/收获/体验)(疑问:认知结构主要指广义知识的内部存储形式,说它是情感、态度的映射能否说得通?),(布卢姆的认知目标分类就是知识、技能、情感)它是一个系统结构,而不是语法命令、方法技巧的简单堆砌,知识/技能/能力间的联系是非人为的和实质性的。
对于高中生来说,这一认知结构所映射的是算法与程序设计的最具普遍意义的程序设计的知识体系,是灵活运用习得的知识改造旧有观念,以及解决基本问题的能力,并形成积极主动的探究态度,在此基础上,学生可以通过继续学习逐步完善这一认知结构。
由于学生原有的知识准备、主动加工的心理倾向以及个性发展等因素的差异,其通过学习形成的认知结构各不相同,但如果建立了合理的认知结构,其差异将主要表现在量上而非质上,即个体间的整体认知结构大体相似,主要差异在于个体间认知结构的复杂程度,以及对自身期望的强弱(疑问:这一点是否和建构主义的观点相矛盾?)(讨论认知结构时,一定程度上是对状态的客观描述,而没有关注其获得过程,使用认知理论可以解决问题,当然不用去套用什么建构主义)。
我们认为,关于一般意义上的程序设计,个体间认知结构差异在外显行为上将表现为三个层次:第一层,能读懂简单的程序代码,能模仿范例对简单问题设计算法并编程实现,理解基本的程序设计思想方法,并乐意学习程序设计;第二层,能够运用程序设计的局部知识解决比较复杂的问题,能准确地理解程序设计的基本思想与方法,对程序设计有较高的兴趣,并能体会到这方面的成就感;第三层,能系统地运用程序设计的基本知识设计算法并编写程序解决问题,具有一定的技巧性、艺术性,对程序设计有某种程度的痴迷。
由于对基础教育阶段来说,达到第二或者第三层次是不够现实的,因此,我们对第一层次可以再细分为三个亚层:1、就某种程序设计语言,能初步掌握最基本的语法与命令,通过简单应用体验人-机合作中的对话感,形成对人工语言概念的初步了解,知道存在一种利用计算机解决问题的新方法;2、知道程序设计的一般步骤,对程序设计的基本思想方法有一定的理解,能通过模仿或者改造别人的程序解决简单的问题,学习比较积极主动;3、透过程序设计语言层面,能够理解程序设计实质上是人们利用人工语言与计算机进行对话而开展工作,解决问题,开始喜爱程序设计,个人意识中开始具有专业发展的趋向。
第一个亚层是“程序设计”课程的基本目标,也是绝大多数学生要达到的目标。
这一亚层对于任何一个选修了“算法与程序设计”的学生,即使其将来并不从事计算机技术开发或者应用工作,甚至是一个文科发展取向的学生,都将产生积极意义。
达到这一目标,学生虽然无法从真正意义上做到设计程序解决问题,但通过学习,他们能从语言处理层面知道计算机的基本工作原理,进而消除对信息技术的神秘感与畏惧感,并在新旧知识的相互作用中改造原有的认识结构,面对信息技术(程序、软件等)应用及其现象具有较准确的理解和足够的自信心。
例如,学生能领悟Excel中“A1+B1”与“=A1+B1”的区别在于,前者表示字符串而后者表示表达式。
第二个亚层是小部分学生可以达到的。
达到这一亚层,他们可以通过知识的迁移,在未来的学习和工作中能够用程序设计的一些知识解决具体问题,能够在初步地知其所以然的基础上小试牛刀。
例如,他们能够在Word、Excel中创建宏,能用这些软件提供的内部函数进行比较复杂的操作,能用学到的知识编写简单的JavaScript小程序创建动态网页等。
对于第三个亚层,呈现为比较复杂的认知结构。
达到这一亚层,学生能够独立地或与他人合作设计程序解决学习、生活中的一些简单问题。
具备了通过进一步发展成为程序设计专业人员的良好基础和可能性。
可以认为,这一亚层并非“共同基石”性质的大众目标,但不排除少数特长学生通过个人努力能达到这一亚层,而对课程,对教师来说,促使他们向这个目标迈进恰好是关注学生个性发展的意义所在。
从以上的分析我们可以得出如下结论:“程序设计”在高中阶段的教学,旨在帮助学生建立尽可能合理的算法与程序设计的认知结构,使其达到某一合理的层次,或者促使其由低层次目标向较高层次目标迈进,最终目的在于从程序设计领域提升学生的信息素养,为学生将来的发展奠定扎实的基础。