学习Python除了看有关的Python书籍之外,还有一种方法适合所有年龄层次的人,就是“边玩游戏边学Python”。
寓教于乐一直是我们追求的目标,“在游戏中学习”近年来兴起得很快,它让上课变得生动有趣。随着网络和计算机的进步,我们有了更多新鲜工具和互动方法可以应用到学习上。
学习编程也不例外。
比如“儿童编程”的概念,很多编程玩具涌现出来。对于不懂编程的家长来说,无法亲自引导和辅导孩子学习,使得让孩子学习编程一直都只是一个想法,没有付诸行动。这些玩具的出现帮了家长们的忙,让孩子们从小就能通过玩具进行编程的启蒙教育,比如一些编程机器人和APP等等。
还有一些网站,比如code org, code combat等等,通过在线游戏或者“编程一小时”等小项目,让从来没有过编程经验的人,也可以通过简单的方法了解程序设计的概念,把复杂的问题拆分成若干个小问题、步骤去完成。
Code Combat网站,完完全全是通过游戏的方式来学习编程,而且他有中文版,不需要任何编程的经验,小学生就能上手,在一个有趣的奇幻世界里和各种战斗关卡中学会各种编程的基本技巧。
这里可以学习Python,Javascript,Lua,CoffeeScript,Clojure等不同程序语言,这些语言可以运用到游戏设计,网页应用,App的开发上。
打开Code Combat网站,可以选择“教育板块”或者“开始游戏”,先进“游戏”模块看看有什么内容吧。
一幅地图出现在眼前。就好像平时玩的哪些在线游戏一样,好多关卡和任务等待玩家去完成。从最开始的“Kithgard地牢”,你会发现整个过程真的就是要去打怪,寻宝与解谜,只是搭配了Python(或其他语言)的学习内容。
虽然我们不能靠着玩过Code Combat后就能直接成为程序员,但是在整个游戏的过程中,我们还是可以学到基本语法,逻辑结构和变量设定等等内容。
进入游戏后,选择英雄和希望用到的程序语言(比如Python)。英雄选择好像魔兽争霸和LOL啊,只不过游戏的过程中我们要自己用Python写代码,控制英雄去完成任务。
还可以设置编辑器辅助写Python代码。
进入第一关,目标很简单,用Python给英雄发指令,按照方向移动。
你会发现上手非常简单,完全不需要指导,任何玩过游戏的朋友也一定都能立刻开始游戏,并从中学习到各种Python编程的语法基础。
控制英雄移动的函数已经列出来了,要做的就是在右侧选择合适的函数并输入,然后运行。
接下来的游戏章节中,会一步一步从基础语法开始,学习到相对复杂的变量,循序渐进地理解Python的编程逻辑。
每一个小关卡是精心设计的一个Python小技巧。
游戏里的命令操作、武器道具都是用Python写出指令,使用语法控制英雄去攻击NPC,在打怪、寻宝的过程中,慢慢理解每个Python语法的作用。
每个关卡都有详尽的提示,怎么输入Python语言来命令角色行动,输入错误时,会提示为什么这样的语法会出错。
经过简单几关,很快就知道了基本的程序逻辑,怎么设定相互关联的行为,怎么进行特定的行动等等。
后面越来越复杂的命令方式,可以学到Python的语法概念,也可以熟练Python输入,或者领会到怎么设计出更有效的代码。用更精简的指令完成动作,可以获得关卡的更高成就和更高的分数。这一切都和通关游戏很像。
如果看书看不下去了,不妨到游戏中玩会儿Python,也许能有不少启发。
欢迎关注我的网易号:时光知行
谢谢阅读。