如何学习计算机思维?

电脑教程011

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

计算机思维建立的基础是计算机处理的能力及其局限性,不管是由人还是机器来执行。计算机方法和模型使我们有勇气去解决问题,设计出无论哪个个人都无法独立担纲的系统。计算机思维面对着有关机器智能的不解之谜:人做什么比计算机强?计算机什么比人好?最根本的问题是:什么是可以计算机做的?今天,我们对这样的问题仍然一知半解。\r\n计算机思维是每个人的基本技能,不只属于计算机科学家。在阅读,书写和算术之外,应该把计算机科学加入每个儿童的分析能力培养。和出版社促进了3个R(阅读,书写和算术Reading, Writing &Arithmetic)的传播相类似,计算机和使用电脑促进了计算机思维的传播。\r\n计算机思维采纳计算机科学的基本理念,可运用于问题的解决,系统设计和理解人类行为。计算机思维包含了一定范围内的思维工具,反映出计算机科学领域的广泛性。\r\n在解决一个问题时,我们会问:这有多难?怎样做是最佳的方法?计算机思维站在坚实的理论地基上给予这样的问题精确的答案。问题的难度要说取决于机器的能力-用来解决问题的计算工具。要考虑机器的指令,资源的约束和运行环境。\r\n为了有效率地解决问题,我们也许要进而问道,貌似的解决方案是不是最好的呢,我们可以随机化优势吗,是否允许主动错误或者被动错误。计算机思维通过简化,嵌入,转换或者模拟,将看来困难的问题转化为可以解决的问题。\r\n计算机思维是递归思维,并行处理。它将代码译为数据,又将数据译成代码。它用维度分析的泛化进行类型检查。承认异化的优缺点。给某个人或物多个名字。它同时意识到间接寻址和程序呼叫的代价和用处。它不只用正确程度和效率来评判一个程序,还判断美感,系统设计的简洁和优雅。\r\n计算机思维利用抽象和分解来对付复杂的大型任务或者来设计复杂的大型系统。它使你远离担忧。它挑出合适的代表性的问题或者给问题的相关方面建模使问题易于处理。它使用不变量来概要地或者陈述性地描述系统行为。它确信我们无需理解系统的每个细节就可以安全地使用,修改或者影响一个大型复杂的系统。它设想多个不同的用户建立不同的模块,为了设想的未来的使用进行预加载或缓存。\r\n计算机思维都以最糟糕的情形来考虑预防,保护和复原,方法可以是冗余,容错和纠错。 它采取呼叫高压封锁,死锁或者约定界面的方法。它还学习在发生同步相遇时避免竞争的情形。\r\n计算机思维使用启发式推理找到解决之道。它在不确定的情况下进行计划,学习和安排。它是搜寻,搜寻,再搜寻,找到一长列的网页,赢得游戏的攻略或是一个反例。它是使用大量的数据来提高计算的速度。它是在时间和空间中,在处理能力和存储容量中找到平衡。\r\n来看这些生活中的事例:您女儿早上去上学,她把这一天要用的东西放到背包里;这就是预加载和缓存。当您的儿子弄丢了他的手套,你建议他到经过的地方找;这是回溯。到什么时候下您会自己买一套而不再租用滑雪用具呢?这是联机算法。在超市排哪条队伍?这是服务器系统的性能建模。为什么停电时电话还可以用?这是失败的独立性和设计的冗余。那么如何进行用来分辨计算机和人的完全自动化的图灵测试,即CAPTCHAS,人类仿真?;这是利用解决人工智能的难题来给计算机代理商做宣传的。\r\n计算机思维将植根于每个人的生活当中,那时算法,前置条件等词汇将成为每个人的词汇, 非决定论和垃圾收集不再是计算机科学家使用的含义;人们将会从上往下来画一棵树。\r\n我们目睹了计算机思维对其他学科的影响。例如,机器学习改变了统计学。统计的学习正用于考察问题的规模, 以数据的大小和角度的方式,这在几年前还是不能想像的。各种组织的统计部门都在招聘计算机科学家。计算机学校包围了现有的和新成立的统计部门。\r\n计算机科学家近来对生物学产生了兴趣,因为它们相信,生物学家将可以从计算机思维中获益。计算机科学对于生物学的贡献远不止于可以通过大量搜索序列数据来寻找图谱。希望的是利用数据结构和算法-计算机的抽象思维和方法, 通过阐述功能来表现出蛋白质的结构。计算机科学家正在改变生物学家的思维方式。 相似的,计算机游戏理论正改变着经济学家的思维方式。量子计算对物理学家也是。\r\n这样的思维不会仅是其他科学家们的技能,它将是每个人的。普适计算的今天就是计算机思维的明天。昨天普适计算还是梦想,今天它已成为了现实。计算机思维在明天也会成为现实。\r\n是什么,不是什么\r\n计算机思维是研究计算的- 什么是可以计算的,怎样进行计算。因此,计算机思维有下面的特点:\r\n是概念化,不是编程\r\n计算机科学不是计算机编程。计算机科学家式的思维不是说给计算机编程。它要求在多个抽象层面进行思考。\r\n是基本技能,不是机械技能\r\n基本的技能是每个人在现代社会都必须学会运用的。机械则意味着机械的重复。具有讽刺意味的是,要是计算机科学家真解决了人工智能的使计算机象人一样思考的大挑战,那时思维可就真要变机械了。\r\n是人的思维方式,不是计算机的\r\n计算机思维是人解决问题的方式,不是要人象计算机一样思考。计算机是愚笨无趣的,人聪明富有想像力。是人类使得计算机令人振奋。使用计算机设备,我们运用才智处理问题,那些在计算机时代之前我们不敢挑战的问题,构建具有只要想像得到的功能的系统。

我也在做这方面的尝试,计算机思维刚开始时觉得不太复杂,慢慢接触才觉得深奥无比。我认为最核心的技术应该在于:通过程序运行再次产生新的代码段即为学习,记得有人说过,人工智能很好理解,只要有足够多的IF语句就能实现,道理是跟撬地球一样如此的简单,但问题是支点在哪?这么长的杠杆在哪?人类不可能把一切可能都IF进程序代码中,只有让计算机通过学习产生新代码,以实现新的能力,才能真正实现学习。程序产生的新代码有一个至致命的问题:编译。有人提出用终止程序的方式实现再次编译,但我个人认为,通过再次定义一些特殊的关键字来处理代码可能更好。计算机思维是指人们要有操作计算机的思维来运作计算机,计算机语言没有思想。计算机语言的“思想”存在于编制程序的人的大脑之中,这就将使计算机语言的思想与方法分离了。计算机思维中需要知道现有的计算机不可能像人的大脑那样思维。

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