分享

信息技术学科的核心价值观再认识

 昵称16891594 2014-04-21

     今天看了王吉庆教授的“算法思维与创新精神---信息技术教育的核心价值”一文,文章短小精悍,但其对自然科学类学科“强调培养学生如何认识世界与发现规律的演绎、逻辑思维能力和科学精神”,对人文类学科“强调追求表现个性与特点的发散思维和人文精神”做了很好的归纳,而信息技术等技术类学科强调“解决问题与完成任务的可实现、可操作的算法思维与创新精神”,强调学校课程要“培养文理交融、思维均衡发展”的提法,是对这几类学科分析后得出的观点,我十分认同。

    最近一段时间的理论学习,精读了江西师大钟志贤教授的《信息化教学模式--理论建构与实践例说》一书的理论部分,去年看的时候还有些吃力,但今年重读,已经感同身受,理论没有实践作基础,是无法实现其指导实践的价值的,而实践没有理论的指导,实践就很难有系统性和提升。对书中培养学生高阶思维的理论部分,感受深刻,正好用在了省教院名师网上授课视频讲座当中,很好的解释了信息技术学科核心价值不能仅仅停在信息素养、简单任务完成,还要在信息素养的基础上重点培养学生的高阶思维,即问题求解、决策、批判性思维、创造性思维。通过设定较复杂的劣构项目任务,给出项目的基本问题框架和案例支架,用评价引导、案例学习、小组合作等方法手段引导学生在项目活动中自主探究、合作交流,作出选择决定、解决问题、制作方案、交流展示来发展学生的高阶思维,培养算法思维。算法来源于生活,让生活更美好。

    社会在进步,技术在发展,今天的信息技术教学环境与8年前课标制定时相比,已经发生了很大的变化,8年前,很多学校才接入互联网,现在,已经有一些学校用平板进行教学。因此8年前的信息技术学科核心价值观,是否还能真实反映现在的信息技术学科教学环境和现在学生的素养?现在的学生,对教材所列出的一些技术、技能已经不需要老师教了。因此信息技术学科的核心价值观也要随着社会的发展和进步,有更高的要求和内涵,所以把培养学生的高阶思维作为本学科的核心价值,是值得肯定和尝试的,美国的《21世纪技能》一书也强调了21世纪培养学生的问题能力和创新能力。前段时间,看李冬梅老师博客上刊登的学生的总结,正是体现着王吉庆先生对信息技术学科的核心价值观吗!和育人观吗!

    在网络上看到一篇文章“算法重要的是思维,不是程序的实现”,转载如下。

   

    实现一种算法首先是一种思维的实现,而不是埋头就在那里编程去实现。做为一个优秀的PM,要善于从思维中把握算法的核心,而不是象工人一样,人家已经给你了思维,你就斧头,凿子就干开了。前几年热炒一个话题,就是如何程序编程自动化,就是因为大家觉得思维层次的算法已经搞清楚了以后,程序的实现只是一个工程量的问题,而不会存在计算机理解的二义性问题。而现在很多人似乎更乐意成为一个coder,一个算法在程序上的完美实现者,而不是一个架构师,算法思维大师,一种算法的创造者,组织者。这是一个值得深思的问题。

    算法源于生活,是解决问题的策略和步骤的提炼。如,大家坐公交车,从AB站没有直达的情况下,如何计算一个特定策略下的最优解,对于策略,你可以选择:1)总路径最短。2)总时间最短。(总路径短还不一定就是时间短,可能径直穿过闹市区,反而慢。3)给每输公交车统计舒适度,你可能想时间不在乎,我就要坐着舒服。4)你是一个游客,你想要多路过风景区。确定了哪一种策略解决问题,再你设计解决问题的步骤。如,按总路径最短,你必须计算每两点之间的距离和可达性。

    任何纷繁复杂的算法程序,总有这样的共性:输入和输出。在设计程序时,就象疱丁解牛一样,先把这两根主骨理出来。里边的算法结构,要培养良好的流程图思考习惯。所以说程序算法是千变万化的,但算法的思维是相通的。所以各种算法思想是对各种程序实现流程的一种非常高度的概括。就象之前说的公交车算法,输入是AB,策略模式。输出:策略下的最优解。如果更加专业一点,或者要跟别人交流,或者形成电子文档,建议还是按照正规点的流程图软件,visioUML都是相对不错的选择。

    思维最重要的是条理,那么体现这种条理的工具就是流程图,程序流程图是一种用规定的图形,指向线及文字说明来准确表示算法的图形,具有直观、形象的特点,能清楚地展现算法的逻辑结构.画程序框图的规则:使用标准的框图符号;框图一般按从上到下,从左到右的方向画;除判断框外,大多数程序框图的符号只有一个进入点和一个退出点,而判断框是具有超过一个退出点的唯一符号。其实大部分的算法还是通过基本的算法组合流程图是体现你算法思想的语言,把你的思维物化。要非常习惯于画流程图。程序流程图是人们对解决问题的方法、思路或算法的一种描述。流程图的优点:(a)采用简单规范的符号,画法简单;(b)结构清晰,逻辑性强;(c)便于描述,容易理解。流程图采用的符号:(1)起始框{椭圆形}2)终止框{椭圆形}3)执行框{长方形框}4)判别框{水平菱形}。除了上述这种比较通用的流程图,还有一些国际比较流行的流程图样,如:NS图和PAD图,当然采用具体什么样的流程图样没有固定的。关键是清晰表达你的思维。

    扩展开来,如果状态很糊涂,就画状态机图;如果交互的流程不清楚,就画序列图;有时候各个类关系搞不定,就画类图。如果需求时各个部门责任不明确,不知道每个部门做什么,那就画部门责任图。

    实现的,如果你打算自己发明基础算法,那需要很深的数学功底,你可以去看看基础数学。如果你只是打算编写普通的算法,首先还是要把那些基础算法都融汇贯通,这里涉及到很多的计算机基础也算是核心课程,数据结构、算法基础、编译原理、操作系统、离散数学、数据结构和算法基础,它们是一种高度思想的结晶,你可以一遍又一遍反复地看,反复去思考,去理解,去实现。这样你可以对基础算法的精髓了解得很深。

    算法能力的提高周期比较长,即使你是一个自认为比较聪明的程序员,也不要指望在很短时间内达到一个很高的水平。当然数学能力也很重要,编写算法不懂数学,到一定程度后就上不去了,这个除了自己努力还要看天赋了。但总得来说,勤能补拙是良训,一分辛劳一分才。你只要花时间在基础算法和基础数学上有所付出和努力,算法还是会得到一定能力的提高。

    提高自己对算法的思维逻辑能力,先提高自己的计算机逻辑思维能力,再考虑如何让计算机提高逻辑思维能力,最后让计算机自己提高逻辑思维能力。当然最后一种境界是大牛才有的境界,提高自己的逻辑思维能力是一个必备基础,如果自己的思维也没有条理化,那么计算机不是你的优质复制品,能够自己去学习,去优化自己的算法;提高计算机的思维能力,就是在你的算法中有强大的容错机制和反馈机制,使它象人一样能与人沟通。当然最高的境界是计算机有自主的逻辑思维能力,就是说的编程自动化,能理解人的算法的思维表达结果,然后自动转化成二进制世界里的语言形式。至于算法的实现,先抓住核心算法的实现,然后再是调用算法的程序,而不是反过来先编好测试用例和调用者算法,再去写核心算法。这是一种思维优先级的排列。

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多