编程很深奥?一文读懂所谓的“编程思维”
大家经常听说“学编程可以培养编程思维”,而编程思维是什么?学编程和培养编程思维有什么联络你知道吗?
一、什么是编程?
在理解编程思维之前,首先,小编要和大家说一说什么是编程。
编程就是和电脑对话,用电脑能听懂的语言,告诉它我们想让它做的事情。
image
举个栗子:
假如我们想要休息,我们会搬个凳子,放下,而后坐上去休息。
假如我们想让电脑听懂这句话,就需要这么和电脑表达:
步骤:
1、定义对象:什么是“凳子”;
2、把凳子向上移动20厘米;
3、往前移动两米;
4、把凳子向下移动20厘米。
这样,电脑就完成了我们想要它做的事情。
所以,相比于人类之间交流的随便与感性,和电脑对话时,必需具有严谨、理性的思路,每一步都要给出精确的指令,这样就能让电脑按照自己的想法行动,不会让结果跑偏。
想要让电脑听懂我们说的话,需要让自己变得理性、严谨,思维具备条理。当我们试着从电脑的角度去思考问题时,也就学习并锻炼到了我们常说的“编程思维”。
二、编程思维是什么?
很多人都听过编程思维,但对它理解的却不多,甚至会产生这种误会——编程思维就是编程算法。
其实,编程思维并不是编写程序的技巧,而是一种高效处理问题的思维方式,它是“了解问题——找出路径”的高效思维过程,由分解、模式识别、笼统、算法四个步骤组成。
image
01分解
锻炼拆解复杂问题的能力
分解,就是把一个复杂的大问题,拆解成更可执行、更好了解的小步骤。
如果,要为自己全家人做一次出游规划,“全家旅游规划”听起来非常庞大、繁琐,而懂得“分解”的话,即可以把这个大难题分解成几个容易处理的小步骤:确立目的地、安排行程、预约机票和酒店、准备行李清单。
image
所以,在学习编程的过程中,就是在不断地训练他们把复杂的问题拆解、理顺的过程。这个过程是处理问题的基础,把问题拆解清楚,才有接下来实现的可能。
02模式识别
发现并整合“重复规律”的能力
模式识别,就是识别不同问题的模式和趋势(共同点)的过程,在我们的经验库里找出相似问题的处理办法,套用处理。识别的模式越多,处理问题的速度也就越快。
例如,假如需要画100只猫,你会怎样办?是找100只猫来临摹还是找出猫的“模式”?
对猫进行模式识别,我们会发现猫有这些共同点:有眼睛、耳朵、尾巴、四条腿……
我们根据这些特点建立起猫的“模式”,按照这个模式就能批量画猫了。不用每次画一个新动物,只要要变换局部特征(例如毛发颜色、尾巴长短)就能轻松处理。
image
这样看来效率是不是瞬间飙升N倍?
在编程过程中,其实我们一直在进行着这样的训练,当发现少量可重复的步骤,就会把它们整合起来,建立模式;再遇到相似问题时就能让计算机套用此模式,快速处理。
03笼统
锻炼找出问题本质的能力
笼统,是指聚焦最重要的信息,忽视无用细节。简单来说就是找到问题的本质,过滤掉其余无关紧要的因素。
例如,面前有一套房子,我们看到的是这样的:
image
但是在建筑师眼中,这套房子可能是这样的:
image
通过笼统,建筑师过滤掉对他来说无用的因素,找到了房子最重要的信息。
笼统思维,能够让我们在大量信息中抓住关键信息,提高学习效率。
04算法
锻炼高效处理问题的能力
算法,是一步步处理问题的过程。根据前面对问题的分析与了解,设计每一步的路径方法,处理整个问题。
在具体处理问题的过程中,最关键的是逻辑思维能力和调试纠错能力。
计算机程序需要很强的逻辑性,逻辑顺畅才能顺利运行。例如,正确代码呈现出的五角星动态图这样的:
image
而只是把其中两行代码交换下顺序,结果就成了这样:
image
所以,我们需要严格遵循编程的规则,把处理问题的步骤转换成计算机能了解的语言。在这个过程中,我们的逻辑思维能力能得到很好地锻炼。
而调试纠错,就是当出现结果与预期不符时,需要找出算法之中的漏洞并处理。
小编是一个多年开发经验的程序员,懂前台、Java、Python。今年年初整理了一批WEB前台学习资料作为粉丝福利,不管你是计算机专业想往WEB前台方向发展,还是零基础想要转行学习WEB前台,这份资料都能帮助到你,在自学过程中遇见问题了也可以随时问我。这是我的WEB前台裙,296-212-562,关于Java和Python的问题也可以在里面问我。
在编程练习中,任何一行代码出问题,程序都会出错无法正常运行下去。这时,就必需要自己一步步执行步骤、梳理逻辑,找出问题并想办法处理。
苹果CEO乔布斯曾说过:“每个人都应该学习编程,由于它教会你如何思考。”编程思维在各个行业都用得到,是未来人工智能时代每个人都应具有的一种思维。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 编程很深奥?一文读懂所谓的“编程思维”