返回
南京极客营
置顶
该校与厚学网暂未合作,平台不保证课程的真实有效性,如有侵权等争议,请及时与厚学网联系处理
招生热线:400-800-2178

学校地址:南京市玄武区高楼门5号

Java编程也要从娃娃抓起

107 2018-01-17 09:53:11

学习笔记

  因为市面上没有教孩子编程的教程书,于是本文作者自己编了一本。InfoQ的用户朋友们有没有教自己孩子编程的呢?我司倒是有一个教自家跳小苹果的孩子学C语言的。

  十二年前,我的小儿子Dave出现在我的办公室,手里拿着Java教程。Dave让我教他编程,这样他就能自己写游戏了。

  那时候我已经写了几本关于Java的书,还同时教几门计算机编程课,但那都是面向成人的;Amazon上没有任何适合用来教孩子编程的书。在Google上搜索了几个小时,我能找到的一些为孩子准备的编程教程也只是浅尝辄止,或者是基础的那种类似于“聪明兔(译者注:即reader rabbit,美国幼儿教育品牌)”的书。所以我决定自己写一本书。

  那时我的大儿子Yuri在大学里主修动漫,他答应为我的书画插图。当我完成草稿的时候,没有出版商愿意出版它,原因有两个:

  少儿编程书根本没有市场。

  我希望这本书能彩印,较之于黑白印刷,这大大增加了成本。

  没什么大不了的。我在网上发布了此书的pdf版本供大家免费下载。一年后,几位好心的法长把它译成了法语,然后一些来自东欧的Java爱好者又把它译成了俄语和乌克兰语。这些版本仍然可以从网上免费下载到。

  今年早些时候,我收到了一封意外的电子邮件,来自于No Starch出版社——问我是否有兴趣写一本给孩子看的Java编程书籍?我又问了一次,“你们愿意彩印吗?”,出乎我意料的是,他们马上同意了,并且给我看了很多他们出版的教孩子编程的书籍,是其他语种的。时代变了……长话短说,我接受了。一年很快要过去了,这本书将会在2015年春季付印。

  用Java来教孩子编程好吗?

  为了回答这个问题,我们首先要定义“孩子”这个词。对于12岁以下的孩子来说,我相信Java作为门编程语言有点太复杂了。低龄一点的孩子一开始好用一些写好的程序模块来搭建可视化程序。MIT创建了Scratch,对于8岁大的孩子来说,它是一个很好的激发编程兴趣的工具。10岁的小孩就可以更进一步,通过Greenfoot开始学习真正地使用Java来编程。

  但是我认为,任何12岁以上的孩子,只要对编程有兴趣,就可以一本正经地去学习Java编程了,并且可以使用专业的工具来学。在之前为孩子写的那本书里,我使用Eclipse作为IDE,但在现在这本新书里,我选择了IntelliJ IDEA社区版,它也是免费的。

  教成人和教小孩Java的区别在于,孩子们对于编写GUI程序的反响更热烈,而Java也很擅长做这个。我说的是JavaFX;Swing框架已经过时了,想用Swing来写出点像样的程序,需要很专业的知识。

  JavaFX则提供了丰富的工具,并且非常优雅地隔离了界面和应用逻辑。JavaFX自带了“Scene Builder”,一个可视化的GUI设计工具,它可以生成用FXML描述的GUI;FXML是一种基于XML的语言,可以通过声明的方式来创建GUI。不过不用担心,孩子们不需要自己去写FXML——他们只需要把UI控件拖拽到画布(canvas)上,Scene Builder就会生成FXML。

  少儿Java教育家

  如果说12年前的孩子对编程还不是那么感兴趣的话,那么今天的很多孩子已经很喜欢编程了。时代变了,于是,世界各地都有编程爱好者在花时间和精力给孩子介绍编程。我们要向Stephan Janssen致敬,他创立了Devoxx4Kids运动,用一种创造性的方式来教孩子编程。

  这种运动早开始于比利时,但如今很多都加入了。在美国,旧金山分会的领导人是Arun Gupta,而Matt Raible运营着丹佛分会。如果有位于曼哈顿的公司愿意提供场地给孩子们搞活动的话,我已经准备好贡献我的时间,在纽约建立一个分支机构。

  我要为Stephen Chin献上掌声,他来自Oracle,他经常背着一个袋子满世界走,那个袋子里装满了可编程设备。今年早些时候,我参加了他的演讲“玛丽有个小小的lambda表达式”(译者注:英文名“Mary Had a Little Lambda”,此名字借用了的英语儿歌“Mary Had a Little Lamb”,lamb和lambda词形相近),在演讲中他通过演示复杂的游戏解释了Java。

  今年夏天,我参加了在希腊举行的JCrete“非会议”(译者注:unconference,一种颠覆传统式会议的新形式,会议内容由参与者自己制定,主张开放式讨论)。其他与会者都带着笔记本电脑来,Stephen却带来了两打硬件开发套件,他举行了一个研讨会,在会上孩子们用Java编了一个机器人,可以跳Sirtaki舞(译者注:希腊民间舞蹈)。

  我肯定世界各地还有其他的好心人在给孩子们普及Java。已经诞生20年之久的Java语言正在越变越年轻。

  本书节选


文中图片素材来源网络,如有侵权请联系删除
来源:南京极客营
热门课程 全部课程

热门动态

申请免费试听

只要一个电话

我们为您免费回电

立即申请
刷新
图形验证
关闭
>>
拖动左边滑块完成上方拼图