跳妹儿学编程之ScratchJr(一):高级软件工程师告诉你什么是儿童编程,小孩要不要学儿童编程?
目录
Table of Contents
目录
一、前言
二、什么是儿童编程
三、儿童编程优点
1、培养程序员的思维方式
2、培抽象分析与解决问题的能力
3、培养、提高其创新力
4、培养英语与数学能力
5、培养其成为一个程序
四、儿童编程的缺点
五、我家小可爱需要学儿童编程么
六、学习儿童编程一定要参加比赛么
一、前言
本人理工男一枚,资深软件研发工程师,8年大型软件与系统开发设计经验。先后在国内知名电信软件公司和国内知名互联网公司工作。期间从事过Android(安卓,手机App)开发、电信Boss系统开发、和大型互联网高并发系统开发,精通各类软件系统的开发与设计,对软件设计与编程思想有深刻的理解与认识。
由于家有跳妹儿一枚,在儿童编程与人工智能日益火爆的今天也开始关注儿童编程。通过一段时间的各类分析和深入学习实战,我发现其实并不是所有孩子都需要学习儿童编程。为什么呢?接下来我和大家一起来深入探讨下这个话题。
二、什么是儿童编程
首先到底什么是儿童编程?提到编程大家脑海中是不是都会想到996、秃头、一堆看不懂但觉得很高大上的英文代码(如下图)。当然如果是我们程序员平时所编写的代码当然是和下图一样的一堆堆代码,甚至比下面的代码复杂的多(我做过最大的一个系统有100W+的代码)。看到这里大家是不是已经有放弃的想法了,心里想咱家那么可爱的小可爱怎么看得懂如此复杂的东西,怎么禁得起如此折腾,况且还要秃头算了算了(哈哈哈哈哈)。其实大家不必有如此忧虑,儿童编程和我们程序员日常接触使用的程序还是有很大区别的。
儿童编程是通过积木拖拽的方式来完成程序设计。专业一点的说法叫做图形化编程语言。如下就是用儿童编程平台Scratch完成的一段程序。这对程序没有什么概念的家长朋友们来说,看到如下代码应该还是会觉得有些复杂,但是这相比我们程序员日常接触的程序代码确实简单了很多。小朋友只需要通过拖拽的方式来连接指定的模块就能够完成相应的程序功能,而不需要记住程序中各种复杂的语句。
所以总的来说:儿童编程就是一个简化版的图形编程语言,也可以叫做积木编程。每个命令和语言都被做成了一个个的小积木。
总体来说儿童编程具有如下特点:
- 图形化设计,能够快速入手
- 积木式指令(命令),让编程更加简单,方便记忆
- 其指令比常规的程序要少很多
- 能够完成的功能相对简单,但有趣(一般都是拿来做游戏)
三、儿童编程优点
那么咱家小可爱为什么要学儿童编程呢?是不是咱今后不打算从事软件或者互联网行业就不需要学习儿童编程呢?
其实大家有一个误区,儿童编程的目的并不是一定要让咱们小可爱学会编程,走上程序员秃头的道路。作为一个程序员,我觉得小可爱学儿童编程主要有如下好处(目的):
1、培养程序员的思维方式
如果你周围有程序员朋友你会发现他们大多处理问题都逻辑清晰,思维敏捷、考虑问题都很全面(至少我认为我是这样的人,哈哈哈,是不是脸皮有点厚)。因为我们程序员在考虑问题的时候都会有惯性的if else思维(if else是程序中用的最多的代码指令,即如果怎样就怎么,如果不怎样再怎样)。所以我们处理与解决问题往往都是一步一步(一层一层)的考虑,且会考虑得很全面(会考虑很多可能性),即if逻辑;同时我们会考虑最坏的可能性(结果),即else逻辑。同时会对所有的可能性预先想出解决与应对方法(程序员在编写程序时都会先考虑设计清楚整个功能(系统)的逻辑流程,想清楚有哪些场景,每种场景如何处理,最后才开始写代码实现)。
当你遇到每个问题都用这种思维去解决的时候,你就会发现很多问题很容就搞定了。因为在这个过程中不论遇到什么状况,你都会迎刃而解,而不会措手不及。
2、培抽象分析与解决问题的能力
在编程的过程中,我们会遇到很多的问题,这些问题都需要小可爱们一步一步的去解决,然后才能够编写出想要的效果。小可爱们在解决这些问题的过程中,慢慢就会养成抽象分析问题的能力,从而提升其解决问题的能力。同时能够深刻的认识到只有辛勤的付出才会有收获的喜悦。
3、培养、提高其创新力
程序本身只是一个工具,具体能够做出什么东西则需要小可爱们自己去想象与创造。比如你可以做个机器人,做个对战游戏,做个智能客服等,这个过程就是创新能力的培养。
4、培养英语与数学能力
稍微数学程序设计的都知道,程序设计用到的都是英文的,同时很多书籍很文献其实都是英文的,所以做编程对其英语能力的提升也有一定的帮助。对于儿童编程来说,著名的Scratch平台就是国外的,其平台在国外。其社区是对全球开放,所以如果大家后期想要很世界各地的小朋友分享交流英语肯定是必不可少的。在对小可爱英语提升的同时,说不定还能够提升其对英语的兴趣。
对于数学,就不用多说了。很多朋友都应该知道程序和数学是息息相关的。我们很多的程序逻辑,算法实现都是基于数据算法实现的。比如大家听得最多的人工智能,机器学习,这些都需要有强大的数学基础。所以学习编程也就能够提升小朋友的数学能力,以及对数学的兴趣。
5、培养其成为一个程序
这应该只是少数人的想法吧。毕竟很多家长并不希望自己的小可爱早早秃头吧。哈哈哈哈。
四、儿童编程的缺点
要说缺点,我认为可能就是会秃头。哈哈哈,开个玩笑。我觉得缺点可能更多的是需要花很多的时间和经历。特别是对父母来说也是一个挑战,因为小可爱们学习任何东西父母们都需要陪同的,这样才能够达到更好的效果(这是我家的教学理念)。至于英语、语数外什么的,大家好歹都还有点基础,还可以在小可爱们面前卖弄卖弄。但是程序设计这个玩意,对大部分人来说都是陌生的,所以父母想要有基本的入门相对困难一点(PS:大家不用担心,后续我会陆续推出儿童编程相关教程,让我们一起和小可爱们学编程吧。)。
五、我家小可爱需要学儿童编程么
我觉得这个问题没有唯一的答案。上面我已经分析过了学习儿童编程的好处,我想很多家长朋友应该已经有让自己的小可爱去学习儿童编程的冲动了。但是并不是所有小朋友都适合学习儿童编程。就像我有个程序员朋友,他就觉得他自己不适合做程序员,想干两年就另谋出路了。所以我的建议是:先和小可爱们一起尝试下,时间会证明一切的。如果小可爱们确实不感兴趣,我们也没有必要强求。就像咱为小可爱们选择的那么多课外辅导培训一样,难道都是为了让其走上那条道路么?当然不是,我们都是为了找到小爱们的兴趣,然后重点培养。这个就叫做“普遍撒网,重点培养”。
六、学习儿童编程一定要参加比赛么
大家如果搜索各类儿童编程培训机构都会发现,他们会大肆宣传其所培训的某某小可爱参加了什么什么比赛,拿到了什么大奖,以此来吸引大家。其实个人觉得,大家让小可爱们学习儿童编程,不要太在意这些。我们让他们学习儿童编程,仅仅是为了培养其综合能力。没有必要“打打杀杀”的。让小可爱们轻松的学习成长不是很好么。如果在这个过程中,我们发现小可爱们有这方面的天赋或者兴趣,我们做家长的再全力支持即可。
❤如果你喜欢本文或者有更好的育儿经验,欢迎添加公众号“麻麻日志”一起分享、交流,在养育孩子的路上我们一起成长,共同进步!
跳妹儿学编程之ScratchJr(一):高级软件工程师告诉你什么是儿童编程,小孩要不要学儿童编程?相关推荐
- 跳妹儿学编程之ScratchJr(二):主流编程语言的区别,小孩如何选择(Scratch/Java/Python/C/C++)
目录 一.前言 二.主流编程语言区分 1.概括 2.Scratch 3.C 4.C++ 5.Java 6.Python 7.对比 a.彼此关系 b.编写难度(入手难度) c.执行效率(执行速度) 三. ...
- 跳妹儿学编程之ScratchJr(四):ScratchJr入门主操作界面与绘画区域详解
目录 一.前言 二.什么是ScratchJr 三.ScratchJr的安装 1.iPad上安装 2.安卓Pad上安装 3.查看官方例子 四.ScratchJr的主操作界面介绍 五.ScratchJr的 ...
- 跳妹儿学编程之ScratchJr(六):第一个ScratchJr程序HelloWorld以及ScratchJr程序如何执行
一.前言 前面我们已经介绍过了ScratchJr的主界面.绘图界面以及所有的程序积木块的功能和基本应用.本章我们将带大家一起来完成我们的第一个ScratchJr程序HelloWorld,并以此给大家介 ...
- 跳妹儿读绘本:我家孩子爱不释手的经典绘本之套装书
上篇分享了我给跳妹儿买书的经验,这里我就来说说这些跳妹儿非常喜欢并点读率高的绘本. 今天分享的主要是套装书,套装书的优点我在之前的文章中有提到过,而且迄今为止我买回来的套装书,每一套我家跳妹儿都非常喜 ...
- 学习python下载哪个版本_听学编程之Python 一、Python版本和安装
本文应听友要求,根据喜马拉雅上的音频节目『听学编程之Python』整理所得. python是好是坏,我就不多啰嗦了,既然你收听了这个教程,那就说明你要学这个语言了.基本不会亏的.这个语言很有用,完全可 ...
- 听学编程之python_听学编程之Python 三、宝玉在红楼梦里说了什么
应听友要求,根据喜马拉雅上的音频节目『听学编程之Python』整理所得. 除了数值外,Python处理字符串特别方便,甚至在编程界,也算是最方便的类型.要掌握哪些入门知识呢?字符串 unicode 列 ...
- 小汤学编程之JavaEE学习day07——版本控制工具:SVN、GIT
一.SVN 1.SVN介绍 2.SVN安装 3.SVN操作 二.GIT 1.GIT介绍 2.集中式和分布式 3.GIT的基本使用 4.GIT时光机 5. ...
- 小汤学编程之JavaEE学习day06——LayUI
一.LayUI简介 1.下载 2.入门案例 二.栅格布局 三.图标 四.按钮 1.按钮类型 2.主题 3.尺寸 4.圆角 5.按钮组 五.后台布局 六.表格数据 ...
- 小汤学编程之JavaEE学习day05——会话管理、文件上传与下载、Ajax
一.会话管理 1.HTTP协议 2.会话的概念 3.会话跟踪技术 4.会话跟踪技术分类(四种) 二.文件上传与下载 1.上传 2.下载 3.上传和下载合并优化成 ...
最新文章
- 计算机汉字救亡运动简史丨视频
- [RHEL] RHEL7.0 下 Postfix + Dovecot 实现邮件发送
- C++ Map用法详解
- savexml php,PHP DOMDocument saveXML()用法及代码示例
- 计算机应用网站设计,《计算机应用基础》课程网站的设计与实现
- Spring Boot 核心注解与配置文件
- mysql的本地id可以随便设置马_MySQL中的账号与权限管理
- html header文件格式类
- (JAVA)红黑树之自然顺序排序和自定义排序方式
- linix防火墙设置之顺序设置问题 -- 解决防火墙规则顺序和插入规则到指定序号的问题...
- 获取Favicon.ico网站图标接口api源码
- opencv 霍夫直线检测
- mybatis的动态sql及模糊查询
- dell R710 更换raid卡后,raid卡信息没有了,处理方案
- [转]SQL Server 2005报表服务入门(一)
- Axure使用图标字体
- 【PR】PR剪辑视频编辑软件视频去字幕
- 6. 项目管理之进度管理
- [小记] 微信小程序 - 人脸识别前端(一)初体验
- 【iOS】越狱入门梳理
热门文章
- 【转载】一些著名学习方法
- 我把 Python 协程的本质扒得干干净净!
- HackMyvm(五)Warrior持续更新
- Dreamweaver8加载站点缓存时卡死,解决办法:
- html倒计时还有多少天,2022考研倒计时还有多少天
- linux 跳板机脚本,shell 搭建简易跳板机
- 信道化接收机matlab,基于FPGA的数字信道化接收机研究与实现
- php for continue,PHP跳出循环之“continue”实例详解
- MRP是MRPII的核心,也是系统实施的难点及系统成效的关键
- Hrm-人力资源系统开发笔记02