教女朋友学编程的一次经历

女朋友的单位需要统计几个文件中的数据,Excel的公式搞不定了,需要我出马来写点儿代码。

一次两次还行,次数多了以后,程序员的优秀品质——懒惰——必须得发挥出来了。

既然她的需求都很简单,我为啥不教她学一点儿编程呢,这样一劳永逸地解决所有问题,我还能过一次“好为人师”的瘾。

根据她的需求,我想了想,给她定制一个编程语言的最小集合就行,学习路径是这样的:

用Hello world感受一下编程语言

引入变量

引入数组(必备)

学会for循环和if分支

学会使用函数

掌握类的基本概念,甚至多态都不用引入,因为把Excel读入内存,就是几个类而已

学会读写文件

于是我就按照这个计划来教,刚开始还行,但是进入到for循环和函数的时候,问题就出现了:

首先是语法容易理解,但是缺乏面向计算机的思维方式。

例如一个for循环,从1加到100,变量i从1不断累加,这个概念就不太好理解。

其次,今天写完,第二天就完全忘记了。

我想了想自己学编程的时候,其实也遇到了类似的情况,不同之处是,那时候有作业,做了大量的练习,把这些东西都内化了。

如果我去给她设计大量的练习题,那实在是太累人了,还不如我直接去写帮她写程序,另外,在写程序做练习题的时候,也非常枯燥,一会儿就想放弃了。

我想到了让她直接去看书,如《Head Frist Java》、《Java核心技术》,但是看书相对是枯燥的,并且不敲代码做练习,也是不行的。

有没有一种办法,可以循序渐进地学习,并且有大量编程练习辅助,还有很强的趣味性呢?

我上网搜了一下,还真的有一个这样的网站:CodeGym

https://codegym.cc/zh/

11b8e3792360b473ccd5a942613abeee.png

这个网站是通过一个虚构的、有趣的故事来学习编程的:

3018 年,那时人类与机器人在地球上和谐相处,太空旅行已成为家常便饭。

一艘宇宙飞船坠毁在一个未知的星球上,机器人阿米戈必须要学会Java才可以帮助大家脱离困境......

13d4437050d516b774c3b74c3e52421a.png

在玩这个编程游戏的过程中,需要完成很多任务:

86c2282e0ef25c72b3a3857df8e59942.png

更重要的是,必须写代码,必须通过系统的自动验证才能进入下一关

不得不说,这个任务验证是我见过的做得最好的,首先是很快、很直观,其次是非常智能

很多类似的系统只是看最终的输出结果,这个任务验证却能深入到代码细节,例如检查你是否声明了某个变量,是否有特定的条件分支,能精确地告诉你哪个地方不满足要求。

我有一次,想欺骗它一下,直接输出结果,发现根本通不过。感觉就像后面有个经验丰富的老师在认真检查一样。

c06f9fdfa2e165ebd432b2628a84b455.png

如果你开通了高级版(现在正5折优惠),将会解锁1200多个这样的任务,让人不知不觉之间,由易到难,由浅入深,掌握Java的知识。

如果这么一直“玩”下去,把任务做完的话,可不仅仅是操作文件这么简单,垃圾回收、版本管理、设计模式、基本的Web应用、REST服务都能掌握

7b0ed92d9beee2dc7a3f6d577ba1449c.png

高级版还有这些非常有用的功能:

例如:代码的规范检查,它不仅会检查正确性,还会检查规范性,CodeGym 提供了“代码规范分析器”,它可以检查你的代码是否符合标准。

对于那些喜欢在IDE中编程的同学,还有IDEA的插件

69d7f65623eeefeef20bd1b1ae8e57cb.png

CodeGym的设计者肯定是深谙人的心理,在你做任务,写代码比较累的时候,会及时地给你来点儿激励,“打点鸡血”:

69da8b90e8c2589d43d824b0d0d4a637.png

如果你学了很多,达到了20级,将会解锁“小项目”,CodeGym很贴心地提供了很多游戏和具体的编写步骤,只要按照指导,一步步来就实现经典的贪吃蛇、俄罗斯方块、太空射击等游戏,实现自己的游戏,这就太有趣了。

ce5476c1b070daf505e41f87916469de.png

可以说,CodeGym完全满足了我的要求:

1.循序渐进地学习Java

2.有大量任务和练习,帮助初学者牢固掌握知识点

3.用游戏的方式,充满了趣味性。

在这里郑重地推荐给大家,去看一看,玩一玩这个从零开始学习Java的在线网站,感受下CodeGym带来的乐趣:

https://codegym.cc/zh/

现在CodeGym高级版正在5折优惠!5月14号截止,需要的话得抓紧了!

最后,也欢迎大家关注CodeGym的公众号,获取最新的信息!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值