目前,很多GJ都在大力推行编程教育,培养人才,储备竞争力。
当我们学编程时,我们该学什么?学知识吗?为了将来做程序员吗?
其实,学会编程思维才是人生赢家的入场券。
学编程的目的
近年来,学校老师都很热衷于一个理念,那就是每个学生都应该学一点计算机科学。“想想我们身处的这个世界,“纽约市长 Bill de Blasio 曾不无感慨地说,“成千上万的好工作都在等着那些有着编程和其他必要技能的人。”
它认为:每个人都该学一点编程这种说法,但是我并不赞成市长先生的动机。你不应该只是冲着一份好工作去学编程,学着用计算思维去思考会为你提供一种崭新的方式去理解并描述我们的世界,而编程会让你更好地表达自我!
用计算思维表达自我
我们有很多方式表达自我,每种方式都有一些核心元素:
音乐家用音调、旋律、音色;
画家和设计师用色彩、形状、线条;
演员和舞者用动作、手势、时机;
计算思维是另一种表达方式,它有以下几种核心元素:
输入和输出将你的电脑和整个世界连接;
变量紧紧跟踪重要数据,比如气温、账户余额、按键频次;
条件语句(Conditional Statements)用来规定当一个变量变化到某种程度时该做出什么反应,比如“当我的账户余额低于10美元时,发一封邮件给我”;
循环语句(Loops)用来反复检查系统中的输入,并更新它的输出;
函数(Functions)把多个语句整合在一起成为可复制的运算;
这些概念构成了我们所看到的每一个程序。
△ Leo Villareal 在 “The Bay Lights” 项目中使用代码做成的旧金山海湾大桥美轮美奂的灯光效果。
编程的重点
如果你喜欢做东西,你很有可能会在电脑里把它设计出来,或是把电脑“塞”进去。你可能会觉得自己是个小白,但是既然你使用了这些工具,你就是在编程。如果你认为编程关键在于数学,那你就错了,编程的重点在于准确描述情况,并对于情况变化做出好的指示。
试想以下这些事:
当气温低于 18℃,打开暖气
当鼓手独奏开始,削弱吉他音轨,然后把聚光灯打在鼓手身上
先向左跳一步,再向右跨一步,然后把手放在臀部,再把腿绷直
这些陈述都包含了计算思维——他们都可以被写成程序。
人人都需要计算思维
并不是只有程序员才有计算思维。他们也可以是画出可爱又迷人的图案设计师,或者在创造有意思小发明的游戏玩家,或是可以让 MIDI合成器演奏疯狂微分音爵士乐的人。他们不仅懂得该怎么让计算机去表达,还知道要让计算机去表达什么。人们经常问我,应该学习哪种编程语言,这其实是个伪问题,因为如果你一旦开始编程,就可能会学习好几种语言。挑一个能用计算机做的并且让你兴奋不已的事,然后查一下做这件事要用哪个编程语言来完成。每个新的应用都可能意味着你要学一种新的语言,随着你学得更多,你会慢慢变成一个更好的程序员,一个更好的计算思维思考者。
说和写并不只是语言学家们才能做的事,同样的,编程也不应该只是计算机科学家才能做。所以,去学编程吧,但在此之前,学一点计算思维,就像任何其他技能,你在掌握它的同时,它也将拓宽你的视野,打开你的世界。
编程思维如何培养
编程,当然可以学习、实践、培养“编程思维”,而且,在编程的过程中,哪怕最有经验的程序员也会出无数小错误,需要不断弥补纠正。我们可以在这个过程中充分体验到:努力比聪明重要、问题可以逐步解决、遇到挫折很正常、从失败中可以学到很多、别人成功了我也能受到启发……等等,培养出耐心和信心。
对于热爱编程的小伙伴来说,路再难走也要坚持走下去!如果你感兴趣或者有需求的话,笔者这里推荐我专栏的编程入门学习交流聚集地→C语言/C++进阶之路 - 专题 - !还有完整的学习路线图和学习文件视频,小白和大神们正在等着你一起探讨编程,极佳的学习氛围一起来学习吧!