如何学习计算思维

电脑教程05

如何学习计算思维,第1张

计算思维是运用计算机科学的基础概念进行问题求解、系统设计、以及人类行为理解等涵盖计算机科学之广度的一系列思维活动。操作模式  计算思维建立在计算过程的能力和限制之上,由人由机器执行。计算方法和模型使我们敢于去处理那些原本无法由任何个人独自完成的问题求解和系统设计。计算思维直面机器智能的不解之谜:什么人类比计算机做得好?什么计算机比人类做得好?最基本的问题是:什么是可计算的?迄今为止我们对这些问题仍是一知半解。计算思维用途  计算思维是每个人的基本技能,不仅仅属于计算机科学家。我们应当使每个孩子在培养解析能力时不仅掌握阅读、写作和算术(Reading, wRiting, and aRithmetic——3R),还要学会计算思维。正如印刷出版促进了3R的普及,计算和计算机也以类似的正反馈促进了计算思维的传播。计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为。它包括了涵盖计算机科学之广度的一系列思维活动。当我们必须求解一个特定的问题时,首先会问:解决这个问题有多么困难?怎样才是最佳的解决方法?计算机科学根据坚实的理论基础来准确地回答这些问题。表述问题的难度就是工具的基本能力,必须考虑的因素包括机器的指令系统、资源约束和操作环境。为了有效地求解一个问题,我们可能要进一步问:一个近似解是否就够了,是否可以利用一下随机化,以及是否允许误报(false positive)和漏报(false negative)。计算思维就是通过约简、嵌入、转化和仿真等方法,把一个看来困难的问题重新阐释成一个我们知道怎样解决的问题。计算思维是一种递归思维  它是并行处理。它是把代码译成数据又把数据译成代码。它是由广义量纲分析进行的类型检查。对于别名或赋予人与物多个名字的做法,它既知道其益处又了解其害处。对于间接寻址和程序调用的方法,它既知道其威力又了解其代价。它评价一个程序时,不仅仅根据其准确性和效率,还有美学的考量,而对于系统的设计,还考虑简洁和优雅。

逻辑思维的培养对软件工程非常重要,思维快的能快速编写逻辑代码。可以从一下几个方面进行慢慢培养。

第一:明确学习目的

逻辑思维学习编程对多数IT业人员来说都是非常有用的。学编程,做一名编程人员,从个人角度讲,可以解决在软件使用中所遇到的问题,改进现有软件,可以为自己找到一份理想的工作添加重要得砝码,有利于在求职道路上谋得一个好的职位;从国家的角度,可以为中国的软件产业做出应有的贡献,一名优秀的程序员永远是被争夺的对象。学习编程还能锻炼思维,使我们的逻辑思维更加严密;能够不断享受到创新的乐趣,将一直有机会走在高科技的前沿,因为程序设计本身是一种创造性的工作。知识经济时代给我们带来了无限的机会,要想真正掌握计算机技术,并在IT行业里干出一番事业来,有所作为,具有一定的编程能力是一个基本条件和要求。

第二打好基础,学好基础知识对我们开发也很重要学编程要具备一定的基础,总结之有以下几方面:

首先是数学基础 从计算机发展和应用的历史来看计算机的数学模型和体系结构等都是有数学家提出的,最早的计算机也是为数值计算而设计的。因此,要学好计算机就要有一定的数学基础,出学者有高中水平就差不多了。

其次是逻辑思维能力的培养 学程序设计要有一定的逻辑思维能力,“逻思力”的培养要长时间的实践锻炼。要想成为一名优秀的程序员,最重要的是掌握编程思想。要做到这一点必须在反复的实践、观察、分析、比较、总结中逐渐地积累。因此在学习编程过程中,我们不必等到什么都完全明白了才去动手实践,只要明白了大概,就要敢于自己动手去体验。谁都有第一次。有些问题只有通过实践后才能明白,也只有实践才能把老师和书上的知识变成自己的,高手都是这样成材的。最后是选择一种合适的入门语言 面对各种各样的语言,应按什么样的顺序学呢?程序设计工具不外乎如下几类: 1)本地开发 应用软件开发的工具有:Visual Basic 、Delphi 、VC++ ( C++ Builder ) 等;数据库开发工具有:Visual Foxpro 、Oracle Developer 、Power Builder 等。 2)跨平台开发 开发工具如 Java 等。 3)网络开发 对客户端开发工具如:Java Script 等;对服务器开发工具如:PHP 、ASP 、JSP 、ISAPI 、NSAPI 、CGI 等。 以上不同的环境下几种开发工具中 VB 法简单并容易理解,界面设计是可设化的,易学、易用。选 VB 作为入门的方向对出学者是较为适合的。

第三:注意理解一些重要概念

一本程序设计的书看到的无非就是变量、函数、条件语句、循环语句等概念,但要真正能进行编程应用,需要深入理解这些概念,在理解的基础上应用,不要只简单地学习语法、结构,而要吃透针对这些语法、结构的应用例子,做到举一反三,触类旁通。

第四:掌握编程思想,编程思想使用较多的就是oop编程思想

学习一门语言或开发工具,语法结构、功能调用是次要的,最主要是学习它的思想。例如学习 VC 就要学习 Windows 的内在机理、什么是线程......;学习 COM 就要知道VTALBE 、类厂、接口、idl......,关键是学一种思想,有了思想,那么我们就可以触类旁通。

第六:多实践、多交流,一切思维来自项目开发的积累

掌握编程思想必须在编程实际工作中去实践和体会。编程起步阶段要经常自己动手设计程序,具体设计时不要拘泥于固定的思维方式,遇到问题要多想几种解决的方案。这就要多交流,各人的思维方式不同、角度各异,各有高招,通过交流可不断吸收别人的长处,丰富编程实践,帮助自己提高水平。亲自动手进行程序设计是创造性思维应用的体现,也是培养逻辑思维的好方法。

第七:养成良好的编程习惯

编程入门不难,但入门后不断学习是十分重要的,相对来说较为漫长。在此期间要注意养成一些良好的编程习惯。编程风格的好坏很大程度影响程序质量。良好的编程风格可以使

程序结构清晰合理,且使程序代码便于维护。如代码的缩进编排、变量命令规则的一致性、代码的注释等。

第八:上网学编程

在网上可以学到很多不同的编程思想、方法、经验和技巧,有大量的工具和作品及相关的辅导材料供下载

8.加强计算机理论知识的再学习

思维培养学编程是符合“理论→实践→再理论→再实践”的一个认识过程。一开始要具有一定的计算机理论基础知识,包括编程所需的数学基础知识,具备了入门的条件,就可以

开始编程的实践,从实践中可以发现问题需要加强计算机理论知识的再学习。程序人人皆可编,但当你发现编到一定程度很难再提高的时候,就要回头来学习一些计算机科学和数

学基础理论。学过之后,很多以前遇到的问题都会迎刃而解,使人有豁然开朗之感。因此在学习编程的过程中要不断地针对应用中的困惑和问题深入学习数据结构、算法、计算机

原理、编译原理、操作系统原理、软件工程等计算机科学的理论基础和数理逻辑、代数系统、图论、离散数学等数学理论基础知识。这样经过不断的学习,再努力地实践,编程水平一定会不断提高到一个新高度。

计算机科学创新性思维的培养一、计算机科学与技术对培养学生的创新性思维和动手能力的方法根据创新教育理论,创新能力包括创造性观察能力、记忆能力、想象能力、思维能力和实践能力五个方面。运用计算机科学与技术,通过创设问题环境,培养学生思维的灵活性与创造性,激发学生进行创造性学习,营造主动参与、合作探究的学习方式,从而提高学习效率,培养创新能力。1.在课堂教学中训练学生的创新性思维和动手能力爱因斯坦曾说过“:思维世界的发展,在某种意义上说就是对好奇的不断摆脱。”而好奇心是学生的天性,有好奇心才会有学习的动机,才会有发明创造。一般来说,好奇心强的学生对知识的渴望迫切,上课时注意力更集中。计算机科学与技术这门课程的无限拓展性很好地满足了学生的这种好奇心,通过问题探究、协商学习、意义建构等活动,激发起学生的学习动机,培养其学习兴趣,使教学过程转化为以学生为主体的学习过程。通过学生与学生之间的协商讨论方式,使学生主动去读书、去探索、去感悟,从而获得新知识、掌握新知识,这个过程在某个意义上说,也是一个创新的过程。2.在计算机科学与技术活动中培养和提高学生创新性思维和动手操作能力以实践和操作为特点的计算机科学与技术专业遇上了大多数是独生子女,在蜜糖中泡大的孩子。虽然他们思维活跃,容易接受新生事物,但是依赖性也十分强,遇到困难是不会考虑自己如何解决,而是习惯于在家靠父母、在学校靠教师来解决。学生的动手能力不强,直接导致了学生缺乏创新精神,无法真正地适应实践工作和适应市场与产业的发展,在计算机科学与技术的实践活动中,他们有好奇心,有求知欲望,有活动的热情,因此要培养学生对计算机科学与技术竞赛的兴趣,从要我学改为我要学,提高他们自己解决问题的意识和能力。二、培养学生的创新性思维和动手能力应遵循的原则1.主体性原则在教学过程中,必须树立“一切从学生出发”的思想。教师要根据情况多给学生提供一些实践、动手的机会,培养学生积极主动参与实践的兴趣与能力,使学生理论联系实际,学以致用,提高学生的创新性思维与动手能力。2.创新性原则教师必须采用与计算机科学与技术相适应的教学方法,从而提高学生的创新性思维能力,不能只是“耳提面命”式的灌输知识,而是要引导学生的发散性思维,鼓励学生质疑现状,挑战现状,培养学生的归纳、演绎能力。教师还需要优化课程结构,增加选修课的比重,以弥补各种必修课给学生的知识结构造成的禁锢,这样有利于学生开展自主学习,发展兴趣爱好。对于计算机科学与技术专业的学生而言,要利用其专业特有的优势,提倡其进行跨校、跨院、跨学科地选修课程,因为计算机科学与技术专业涉及的学科范围非常广,多元化的知识补充有利于更好地完善专业知识的学习。3.实践性原则要求教师必须理论联系实际,深入学生中获取第一手资料,从而归纳总结出符合学生的经验方法。众所周知,计算机科学与技术专业区别于其他的专业学科的最重要的特点就是其本身是一门实践性很强的应用性学科,注重学生对计算机的熟练操作和应用,因此,教师在进行课程设计和课程教授时,应更加重视培养学生的动手能力,可以有针对性的根据阶段课程的学习,开展一些相关的竞赛活动,以激励形式激发学生的学习热情,引导学生自觉重视操作技术的培养,特别是带领学生参加一些科研课题的开发。